UNPKG

793 kBTypeScriptView Raw
1// Project: https://github.com/microsoftgraph/msgraph-typescript-typings
2// Definitions by: Microsoft Graph Team <https://github.com/microsoftgraph>
3// Michael Mainer <https://github.com/MIchaelMainer>
4// Peter Ombwa <https://github.com/peombwa>
5// Mustafa Zengin <https://github.com/zengin>
6// DeVere Dyett <https://github.com/ddyett>
7// Nikitha Udaykumar Chettiar <https://github.com/nikithauc>
8// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
9// TypeScript Version: 2.1
10
11export as namespace microsoftgraph;
12
13export type NullableOption<T> = T | null;
14
15export type AppliedConditionalAccessPolicyResult =
16 | "success"
17 | "failure"
18 | "notApplied"
19 | "notEnabled"
20 | "unknown"
21 | "unknownFutureValue";
22export type ConditionalAccessStatus = "success" | "failure" | "notApplied" | "unknownFutureValue";
23export type GroupType = "unifiedGroups" | "azureAD" | "unknownFutureValue";
24export type OperationResult = "success" | "failure" | "timeout" | "unknownFutureValue";
25export type RiskDetail =
26 | "none"
27 | "adminGeneratedTemporaryPassword"
28 | "userPerformedSecuredPasswordChange"
29 | "userPerformedSecuredPasswordReset"
30 | "adminConfirmedSigninSafe"
31 | "aiConfirmedSigninSafe"
32 | "userPassedMFADrivenByRiskBasedPolicy"
33 | "adminDismissedAllRiskForUser"
34 | "adminConfirmedSigninCompromised"
35 | "hidden"
36 | "adminConfirmedUserCompromised"
37 | "unknownFutureValue";
38export type RiskEventType =
39 | "unlikelyTravel"
40 | "anonymizedIPAddress"
41 | "maliciousIPAddress"
42 | "unfamiliarFeatures"
43 | "malwareInfectedIPAddress"
44 | "suspiciousIPAddress"
45 | "leakedCredentials"
46 | "investigationsThreatIntelligence"
47 | "generic"
48 | "adminConfirmedUserCompromised"
49 | "mcasImpossibleTravel"
50 | "mcasSuspiciousInboxManipulationRules"
51 | "investigationsThreatIntelligenceSigninLinked"
52 | "maliciousIPAddressValidCredentialsBlockedIP"
53 | "unknownFutureValue";
54export type RiskLevel = "low" | "medium" | "high" | "hidden" | "none" | "unknownFutureValue";
55export type RiskState =
56 | "none"
57 | "confirmedSafe"
58 | "remediated"
59 | "dismissed"
60 | "atRisk"
61 | "confirmedCompromised"
62 | "unknownFutureValue";
63export type AuthenticationMethodState = "enabled" | "disabled";
64export type AuthenticationMethodTargetType = "user" | "group" | "unknownFutureValue";
65export type AuthenticatorAppFeatureSettings = "requireNumberMatching";
66export type ExternalEmailOtpState = "default" | "enabled" | "disabled" | "unknownFutureValue";
67export type Fido2RestrictionEnforcementType = "allow" | "block" | "unknownFutureValue";
68export type MicrosoftAuthenticatorAuthenticationMode = "deviceBasedPush" | "push" | "any";
69export type AllowInvitesFrom =
70 | "none"
71 | "adminsAndGuestInviters"
72 | "adminsGuestInvitersAndAllMembers"
73 | "everyone"
74 | "unknownFutureValue";
75export type PermissionClassificationType = "low" | "medium" | "high" | "unknownFutureValue";
76export type PermissionType = "application" | "delegated" | "delegatedUserConsentable";
77export type PhoneType =
78 | "home"
79 | "business"
80 | "mobile"
81 | "other"
82 | "assistant"
83 | "homeFax"
84 | "businessFax"
85 | "otherFax"
86 | "pager"
87 | "radio";
88export type EducationExternalSource = "sis" | "manual" | "unknownFutureValue";
89export type EducationGender = "female" | "male" | "other" | "unknownFutureValue";
90export type EducationUserRole = "student" | "teacher" | "none" | "unknownFutureValue";
91export type WorkbookOperationStatus = "notStarted" | "running" | "succeeded" | "failed";
92export type ActivityDomain = "unknown" | "work" | "personal" | "unrestricted";
93export type AttendeeType = "required" | "optional" | "resource";
94export type FreeBusyStatus = "unknown" | "free" | "tentative" | "busy" | "oof" | "workingElsewhere";
95export type LocationType =
96 | "default"
97 | "conferenceRoom"
98 | "homeAddress"
99 | "businessAddress"
100 | "geoCoordinates"
101 | "streetAddress"
102 | "hotel"
103 | "restaurant"
104 | "localBusiness"
105 | "postalAddress";
106export type LocationUniqueIdType = "unknown" | "locationStore" | "directory" | "private" | "bing";
107export type PhysicalAddressType = "unknown" | "home" | "business" | "other";
108export type BookingType = "unknown" | "standard" | "reserved";
109export type AttachmentType = "file" | "item" | "reference";
110export type AutomaticRepliesStatus = "disabled" | "alwaysEnabled" | "scheduled";
111export type BodyType = "text" | "html";
112export type CalendarColor =
113 | "auto"
114 | "lightBlue"
115 | "lightGreen"
116 | "lightOrange"
117 | "lightGray"
118 | "lightYellow"
119 | "lightTeal"
120 | "lightPink"
121 | "lightBrown"
122 | "lightRed"
123 | "maxColor";
124export type CalendarRoleType =
125 | "none"
126 | "freeBusyRead"
127 | "limitedRead"
128 | "read"
129 | "write"
130 | "delegateWithoutPrivateEventAccess"
131 | "delegateWithPrivateEventAccess"
132 | "custom";
133export type CalendarSharingAction = "accept" | "acceptAndViewCalendar" | "viewCalendar" | "addThisCalendar";
134export type CalendarSharingActionImportance = "primary" | "secondary";
135export type CalendarSharingActionType = "accept";
136export type CategoryColor =
137 | "none"
138 | "preset0"
139 | "preset1"
140 | "preset2"
141 | "preset3"
142 | "preset4"
143 | "preset5"
144 | "preset6"
145 | "preset7"
146 | "preset8"
147 | "preset9"
148 | "preset10"
149 | "preset11"
150 | "preset12"
151 | "preset13"
152 | "preset14"
153 | "preset15"
154 | "preset16"
155 | "preset17"
156 | "preset18"
157 | "preset19"
158 | "preset20"
159 | "preset21"
160 | "preset22"
161 | "preset23"
162 | "preset24";
163export type DayOfWeek = "sunday" | "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday";
164export type DelegateMeetingMessageDeliveryOptions =
165 | "sendToDelegateAndInformationToPrincipal"
166 | "sendToDelegateAndPrincipal"
167 | "sendToDelegateOnly";
168export type EventType = "singleInstance" | "occurrence" | "exception" | "seriesMaster";
169export type ExchangeIdFormat = "entryId" | "ewsId" | "immutableEntryId" | "restId" | "restImmutableEntryId";
170export type ExternalAudienceScope = "none" | "contactsOnly" | "all";
171export type FollowupFlagStatus = "notFlagged" | "complete" | "flagged";
172export type Importance = "low" | "normal" | "high";
173export type InferenceClassificationType = "focused" | "other";
174export type MailTipsType =
175 | "automaticReplies"
176 | "mailboxFullStatus"
177 | "customMailTip"
178 | "externalMemberCount"
179 | "totalMemberCount"
180 | "maxMessageSize"
181 | "deliveryRestriction"
182 | "moderationStatus"
183 | "recipientScope"
184 | "recipientSuggestions";
185export type MeetingMessageType =
186 | "none"
187 | "meetingRequest"
188 | "meetingCancelled"
189 | "meetingAccepted"
190 | "meetingTenativelyAccepted"
191 | "meetingDeclined";
192export type MeetingRequestType =
193 | "none"
194 | "newMeetingRequest"
195 | "fullUpdate"
196 | "informationalUpdate"
197 | "silentUpdate"
198 | "outdated"
199 | "principalWantsCopy";
200export type MessageActionFlag =
201 | "any"
202 | "call"
203 | "doNotForward"
204 | "followUp"
205 | "fyi"
206 | "forward"
207 | "noResponseNecessary"
208 | "read"
209 | "reply"
210 | "replyToAll"
211 | "review";
212export type OnlineMeetingProviderType = "unknown" | "skypeForBusiness" | "skypeForConsumer" | "teamsForBusiness";
213export type RecipientScopeType = "none" | "internal" | "external" | "externalPartner" | "externalNonPartner";
214export type RecurrencePatternType =
215 | "daily"
216 | "weekly"
217 | "absoluteMonthly"
218 | "relativeMonthly"
219 | "absoluteYearly"
220 | "relativeYearly";
221export type RecurrenceRangeType = "endDate" | "noEnd" | "numbered";
222export type ResponseType = "none" | "organizer" | "tentativelyAccepted" | "accepted" | "declined" | "notResponded";
223export type SelectionLikelihoodInfo = "notSpecified" | "high";
224export type Sensitivity = "normal" | "personal" | "private" | "confidential";
225export type TimeZoneStandard = "windows" | "iana";
226export type WebsiteType = "other" | "home" | "work" | "blog" | "profile";
227export type WeekIndex = "first" | "second" | "third" | "fourth" | "last";
228export type CloudAppSecuritySessionControlType =
229 | "mcasConfigured"
230 | "monitorOnly"
231 | "blockDownloads"
232 | "unknownFutureValue";
233export type ConditionalAccessClientApp =
234 | "all"
235 | "browser"
236 | "mobileAppsAndDesktopClients"
237 | "exchangeActiveSync"
238 | "easSupported"
239 | "other"
240 | "unknownFutureValue";
241export type ConditionalAccessDevicePlatform =
242 | "android"
243 | "iOS"
244 | "windows"
245 | "windowsPhone"
246 | "macOS"
247 | "all"
248 | "unknownFutureValue";
249export type ConditionalAccessGrantControl =
250 | "block"
251 | "mfa"
252 | "compliantDevice"
253 | "domainJoinedDevice"
254 | "approvedApplication"
255 | "compliantApplication"
256 | "passwordChange"
257 | "unknownFutureValue";
258export type ConditionalAccessPolicyState = "enabled" | "disabled" | "enabledForReportingButNotEnforced";
259export type PersistentBrowserSessionMode = "always" | "never";
260export type SigninFrequencyType = "days" | "hours";
261export type ComplianceStatus =
262 | "unknown"
263 | "notApplicable"
264 | "compliant"
265 | "remediated"
266 | "nonCompliant"
267 | "error"
268 | "conflict"
269 | "notAssigned";
270export type InstallIntent = "available" | "required" | "uninstall" | "availableWithoutEnrollment";
271export type ManagedAppAvailability = "global" | "lineOfBusiness";
272export type MdmAppConfigKeyType = "stringType" | "integerType" | "realType" | "booleanType" | "tokenType";
273export type MicrosoftStoreForBusinessLicenseType = "offline" | "online";
274export type MobileAppContentFileUploadState =
275 | "success"
276 | "transientError"
277 | "error"
278 | "unknown"
279 | "azureStorageUriRequestSuccess"
280 | "azureStorageUriRequestPending"
281 | "azureStorageUriRequestFailed"
282 | "azureStorageUriRequestTimedOut"
283 | "azureStorageUriRenewalSuccess"
284 | "azureStorageUriRenewalPending"
285 | "azureStorageUriRenewalFailed"
286 | "azureStorageUriRenewalTimedOut"
287 | "commitFileSuccess"
288 | "commitFilePending"
289 | "commitFileFailed"
290 | "commitFileTimedOut";
291export type MobileAppPublishingState = "notPublished" | "processing" | "published";
292export type RunAsAccountType = "system" | "user";
293export type VppTokenAccountType = "business" | "education";
294export type Win32LobAppFileSystemOperationType =
295 | "notConfigured"
296 | "exists"
297 | "modifiedDate"
298 | "createdDate"
299 | "version"
300 | "sizeInMB";
301export type Win32LobAppMsiPackageType = "perMachine" | "perUser" | "dualPurpose";
302export type Win32LobAppNotification = "showAll" | "showReboot" | "hideAll";
303export type Win32LobAppPowerShellScriptRuleOperationType =
304 | "notConfigured"
305 | "string"
306 | "dateTime"
307 | "integer"
308 | "float"
309 | "version"
310 | "boolean";
311export type Win32LobAppRegistryRuleOperationType =
312 | "notConfigured"
313 | "exists"
314 | "doesNotExist"
315 | "string"
316 | "integer"
317 | "version";
318export type Win32LobAppRestartBehavior = "basedOnReturnCode" | "allow" | "suppress" | "force";
319export type Win32LobAppReturnCodeType = "failed" | "success" | "softReboot" | "hardReboot" | "retry";
320export type Win32LobAppRuleOperator =
321 | "notConfigured"
322 | "equal"
323 | "notEqual"
324 | "greaterThan"
325 | "greaterThanOrEqual"
326 | "lessThan"
327 | "lessThanOrEqual";
328export type Win32LobAppRuleType = "detection" | "requirement";
329export type WindowsArchitecture = "none" | "x86" | "x64" | "arm" | "neutral";
330export type WindowsDeviceType = "none" | "desktop" | "mobile" | "holographic" | "team";
331export type InstallState = "notApplicable" | "installed" | "failed" | "notInstalled" | "uninstallFailed" | "unknown";
332export type AndroidRequiredPasswordType =
333 | "deviceDefault"
334 | "alphabetic"
335 | "alphanumeric"
336 | "alphanumericWithSymbols"
337 | "lowSecurityBiometric"
338 | "numeric"
339 | "numericComplex"
340 | "any";
341export type AndroidWorkProfileCrossProfileDataSharingType =
342 | "deviceDefault"
343 | "preventAny"
344 | "allowPersonalToWork"
345 | "noRestrictions";
346export type AndroidWorkProfileDefaultAppPermissionPolicyType = "deviceDefault" | "prompt" | "autoGrant" | "autoDeny";
347export type AndroidWorkProfileRequiredPasswordType =
348 | "deviceDefault"
349 | "lowSecurityBiometric"
350 | "required"
351 | "atLeastNumeric"
352 | "numericComplex"
353 | "atLeastAlphabetic"
354 | "atLeastAlphanumeric"
355 | "alphanumericWithSymbols";
356export type ApplicationGuardBlockClipboardSharingType =
357 | "notConfigured"
358 | "blockBoth"
359 | "blockHostToContainer"
360 | "blockContainerToHost"
361 | "blockNone";
362export type ApplicationGuardBlockFileTransferType =
363 | "notConfigured"
364 | "blockImageAndTextFile"
365 | "blockImageFile"
366 | "blockNone"
367 | "blockTextFile";
368export type AppListType = "none" | "appsInListCompliant" | "appsNotInListCompliant";
369export type AppLockerApplicationControlType =
370 | "notConfigured"
371 | "enforceComponentsAndStoreApps"
372 | "auditComponentsAndStoreApps"
373 | "enforceComponentsStoreAppsAndSmartlocker"
374 | "auditComponentsStoreAppsAndSmartlocker";
375export type AutomaticUpdateMode =
376 | "userDefined"
377 | "notifyDownload"
378 | "autoInstallAtMaintenanceTime"
379 | "autoInstallAndRebootAtMaintenanceTime"
380 | "autoInstallAndRebootAtScheduledTime"
381 | "autoInstallAndRebootWithoutEndUserControl";
382export type BitLockerEncryptionMethod = "aesCbc128" | "aesCbc256" | "xtsAes128" | "xtsAes256";
383export type DefenderCloudBlockLevelType = "notConfigured" | "high" | "highPlus" | "zeroTolerance";
384export type DefenderMonitorFileActivity =
385 | "userDefined"
386 | "disable"
387 | "monitorAllFiles"
388 | "monitorIncomingFilesOnly"
389 | "monitorOutgoingFilesOnly";
390export type DefenderPromptForSampleSubmission =
391 | "userDefined"
392 | "alwaysPrompt"
393 | "promptBeforeSendingPersonalData"
394 | "neverSendData"
395 | "sendAllDataWithoutPrompting";
396export type DefenderScanType = "userDefined" | "disabled" | "quick" | "full";
397export type DefenderThreatAction =
398 | "deviceDefault"
399 | "clean"
400 | "quarantine"
401 | "remove"
402 | "allow"
403 | "userDefined"
404 | "block";
405export type DeviceComplianceActionType =
406 | "noAction"
407 | "notification"
408 | "block"
409 | "retire"
410 | "wipe"
411 | "removeResourceAccessProfiles"
412 | "pushNotification";
413export type DeviceThreatProtectionLevel = "unavailable" | "secured" | "low" | "medium" | "high" | "notSet";
414export type DiagnosticDataSubmissionMode = "userDefined" | "none" | "basic" | "enhanced" | "full";
415export type EdgeCookiePolicy = "userDefined" | "allow" | "blockThirdParty" | "blockAll";
416export type EdgeSearchEngineType = "default" | "bing";
417export type EditionUpgradeLicenseType = "productKey" | "licenseFile";
418export type FirewallCertificateRevocationListCheckMethodType = "deviceDefault" | "none" | "attempt" | "require";
419export type FirewallPacketQueueingMethodType =
420 | "deviceDefault"
421 | "disabled"
422 | "queueInbound"
423 | "queueOutbound"
424 | "queueBoth";
425export type FirewallPreSharedKeyEncodingMethodType = "deviceDefault" | "none" | "utF8";
426export type InternetSiteSecurityLevel = "userDefined" | "medium" | "mediumHigh" | "high";
427export type IosNotificationAlertType = "deviceDefault" | "banner" | "modal" | "none";
428export type IosUpdatesInstallStatus =
429 | "deviceOsHigherThanDesiredOsVersion"
430 | "sharedDeviceUserLoggedInError"
431 | "notSupportedOperation"
432 | "installFailed"
433 | "installPhoneCallInProgress"
434 | "installInsufficientPower"
435 | "installInsufficientSpace"
436 | "installing"
437 | "downloadInsufficientNetwork"
438 | "downloadInsufficientPower"
439 | "downloadInsufficientSpace"
440 | "downloadRequiresComputer"
441 | "downloadFailed"
442 | "downloading"
443 | "success"
444 | "available"
445 | "idle"
446 | "unknown";
447export type MiracastChannel =
448 | "userDefined"
449 | "one"
450 | "two"
451 | "three"
452 | "four"
453 | "five"
454 | "six"
455 | "seven"
456 | "eight"
457 | "nine"
458 | "ten"
459 | "eleven"
460 | "thirtySix"
461 | "forty"
462 | "fortyFour"
463 | "fortyEight"
464 | "oneHundredFortyNine"
465 | "oneHundredFiftyThree"
466 | "oneHundredFiftySeven"
467 | "oneHundredSixtyOne"
468 | "oneHundredSixtyFive";
469export type PolicyPlatformType =
470 | "android"
471 | "iOS"
472 | "macOS"
473 | "windowsPhone81"
474 | "windows81AndLater"
475 | "windows10AndLater"
476 | "androidWorkProfile"
477 | "all";
478export type PrereleaseFeatures = "userDefined" | "settingsOnly" | "settingsAndExperimentations" | "notAllowed";
479export type RatingAppsType = "allAllowed" | "allBlocked" | "agesAbove4" | "agesAbove9" | "agesAbove12" | "agesAbove17";
480export type RatingAustraliaMoviesType =
481 | "allAllowed"
482 | "allBlocked"
483 | "general"
484 | "parentalGuidance"
485 | "mature"
486 | "agesAbove15"
487 | "agesAbove18";
488export type RatingAustraliaTelevisionType =
489 | "allAllowed"
490 | "allBlocked"
491 | "preschoolers"
492 | "children"
493 | "general"
494 | "parentalGuidance"
495 | "mature"
496 | "agesAbove15"
497 | "agesAbove15AdultViolence";
498export type RatingCanadaMoviesType =
499 | "allAllowed"
500 | "allBlocked"
501 | "general"
502 | "parentalGuidance"
503 | "agesAbove14"
504 | "agesAbove18"
505 | "restricted";
506export type RatingCanadaTelevisionType =
507 | "allAllowed"
508 | "allBlocked"
509 | "children"
510 | "childrenAbove8"
511 | "general"
512 | "parentalGuidance"
513 | "agesAbove14"
514 | "agesAbove18";
515export type RatingFranceMoviesType =
516 | "allAllowed"
517 | "allBlocked"
518 | "agesAbove10"
519 | "agesAbove12"
520 | "agesAbove16"
521 | "agesAbove18";
522export type RatingFranceTelevisionType =
523 | "allAllowed"
524 | "allBlocked"
525 | "agesAbove10"
526 | "agesAbove12"
527 | "agesAbove16"
528 | "agesAbove18";
529export type RatingGermanyMoviesType =
530 | "allAllowed"
531 | "allBlocked"
532 | "general"
533 | "agesAbove6"
534 | "agesAbove12"
535 | "agesAbove16"
536 | "adults";
537export type RatingGermanyTelevisionType =
538 | "allAllowed"
539 | "allBlocked"
540 | "general"
541 | "agesAbove6"
542 | "agesAbove12"
543 | "agesAbove16"
544 | "adults";
545export type RatingIrelandMoviesType =
546 | "allAllowed"
547 | "allBlocked"
548 | "general"
549 | "parentalGuidance"
550 | "agesAbove12"
551 | "agesAbove15"
552 | "agesAbove16"
553 | "adults";
554export type RatingIrelandTelevisionType =
555 | "allAllowed"
556 | "allBlocked"
557 | "general"
558 | "children"
559 | "youngAdults"
560 | "parentalSupervision"
561 | "mature";
562export type RatingJapanMoviesType =
563 | "allAllowed"
564 | "allBlocked"
565 | "general"
566 | "parentalGuidance"
567 | "agesAbove15"
568 | "agesAbove18";
569export type RatingJapanTelevisionType = "allAllowed" | "allBlocked" | "explicitAllowed";
570export type RatingNewZealandMoviesType =
571 | "allAllowed"
572 | "allBlocked"
573 | "general"
574 | "parentalGuidance"
575 | "mature"
576 | "agesAbove13"
577 | "agesAbove15"
578 | "agesAbove16"
579 | "agesAbove18"
580 | "restricted"
581 | "agesAbove16Restricted";
582export type RatingNewZealandTelevisionType = "allAllowed" | "allBlocked" | "general" | "parentalGuidance" | "adults";
583export type RatingUnitedKingdomMoviesType =
584 | "allAllowed"
585 | "allBlocked"
586 | "general"
587 | "universalChildren"
588 | "parentalGuidance"
589 | "agesAbove12Video"
590 | "agesAbove12Cinema"
591 | "agesAbove15"
592 | "adults";
593export type RatingUnitedKingdomTelevisionType = "allAllowed" | "allBlocked" | "caution";
594export type RatingUnitedStatesMoviesType =
595 | "allAllowed"
596 | "allBlocked"
597 | "general"
598 | "parentalGuidance"
599 | "parentalGuidance13"
600 | "restricted"
601 | "adults";
602export type RatingUnitedStatesTelevisionType =
603 | "allAllowed"
604 | "allBlocked"
605 | "childrenAll"
606 | "childrenAbove7"
607 | "general"
608 | "parentalGuidance"
609 | "childrenAbove14"
610 | "adults";
611export type RequiredPasswordType = "deviceDefault" | "alphanumeric" | "numeric";
612export type SafeSearchFilterType = "userDefined" | "strict" | "moderate";
613export type SharedPCAccountDeletionPolicyType =
614 | "immediate"
615 | "diskSpaceThreshold"
616 | "diskSpaceThresholdOrInactiveThreshold";
617export type SharedPCAllowedAccountType = "guest" | "domain";
618export type SiteSecurityLevel = "userDefined" | "low" | "mediumLow" | "medium" | "mediumHigh" | "high";
619export type StateManagementSetting = "notConfigured" | "blocked" | "allowed";
620export type VisibilitySetting = "notConfigured" | "hide" | "show";
621export type WebBrowserCookieSettings =
622 | "browserDefault"
623 | "blockAlways"
624 | "allowCurrentWebSite"
625 | "allowFromWebsitesVisited"
626 | "allowAlways";
627export type WeeklySchedule =
628 | "userDefined"
629 | "everyday"
630 | "sunday"
631 | "monday"
632 | "tuesday"
633 | "wednesday"
634 | "thursday"
635 | "friday"
636 | "saturday";
637export type WelcomeScreenMeetingInformation =
638 | "userDefined"
639 | "showOrganizerAndTimeOnly"
640 | "showOrganizerAndTimeAndSubject";
641export type Windows10EditionType =
642 | "windows10Enterprise"
643 | "windows10EnterpriseN"
644 | "windows10Education"
645 | "windows10EducationN"
646 | "windows10MobileEnterprise"
647 | "windows10HolographicEnterprise"
648 | "windows10Professional"
649 | "windows10ProfessionalN"
650 | "windows10ProfessionalEducation"
651 | "windows10ProfessionalEducationN"
652 | "windows10ProfessionalWorkstation"
653 | "windows10ProfessionalWorkstationN";
654export type WindowsDeliveryOptimizationMode =
655 | "userDefined"
656 | "httpOnly"
657 | "httpWithPeeringNat"
658 | "httpWithPeeringPrivateGroup"
659 | "httpWithInternetPeering"
660 | "simpleDownload"
661 | "bypassMode";
662export type WindowsSpotlightEnablementSettings = "notConfigured" | "disabled" | "enabled";
663export type WindowsStartMenuAppListVisibilityType = "userDefined" | "collapse" | "remove" | "disableSettingsApp";
664export type WindowsStartMenuModeType = "userDefined" | "fullScreen" | "nonFullScreen";
665export type WindowsUpdateType =
666 | "userDefined"
667 | "all"
668 | "businessReadyOnly"
669 | "windowsInsiderBuildFast"
670 | "windowsInsiderBuildSlow"
671 | "windowsInsiderBuildRelease";
672export type WindowsUserAccountControlSettings =
673 | "userDefined"
674 | "alwaysNotify"
675 | "notifyOnAppChanges"
676 | "notifyOnAppChangesWithoutDimming"
677 | "neverNotify";
678export type DeviceManagementExchangeConnectorStatus = "none" | "connectionPending" | "connected" | "disconnected";
679export type DeviceManagementExchangeConnectorSyncType = "fullSync" | "deltaSync";
680export type DeviceManagementExchangeConnectorType = "onPremises" | "hosted" | "serviceToService" | "dedicated";
681export type DeviceManagementPartnerAppType = "unknown" | "singleTenantApp" | "multiTenantApp";
682export type DeviceManagementPartnerTenantState =
683 | "unknown"
684 | "unavailable"
685 | "enabled"
686 | "terminated"
687 | "rejected"
688 | "unresponsive";
689export type Enablement = "notConfigured" | "enabled" | "disabled";
690export type MdmAuthority = "unknown" | "intune" | "sccm" | "office365";
691export type MobileThreatPartnerTenantState = "unavailable" | "available" | "enabled" | "unresponsive";
692export type VppTokenState = "unknown" | "valid" | "expired" | "invalid" | "assignedToExternalMDM";
693export type VppTokenSyncStatus = "none" | "inProgress" | "completed" | "failed";
694export type WindowsHelloForBusinessPinUsage = "allowed" | "required" | "disallowed";
695export type ActionState = "none" | "pending" | "canceled" | "active" | "done" | "failed" | "notSupported";
696export type ComplianceState =
697 | "unknown"
698 | "compliant"
699 | "noncompliant"
700 | "conflict"
701 | "error"
702 | "inGracePeriod"
703 | "configManager";
704export type DeviceEnrollmentType =
705 | "unknown"
706 | "userEnrollment"
707 | "deviceEnrollmentManager"
708 | "appleBulkWithUser"
709 | "appleBulkWithoutUser"
710 | "windowsAzureADJoin"
711 | "windowsBulkUserless"
712 | "windowsAutoEnrollment"
713 | "windowsBulkAzureDomainJoin"
714 | "windowsCoManagement";
715export type DeviceManagementExchangeAccessState = "none" | "unknown" | "allowed" | "blocked" | "quarantined";
716export type DeviceManagementExchangeAccessStateReason =
717 | "none"
718 | "unknown"
719 | "exchangeGlobalRule"
720 | "exchangeIndividualRule"
721 | "exchangeDeviceRule"
722 | "exchangeUpgrade"
723 | "exchangeMailboxPolicy"
724 | "other"
725 | "compliant"
726 | "notCompliant"
727 | "notEnrolled"
728 | "unknownLocation"
729 | "mfaRequired"
730 | "azureADBlockDueToAccessPolicy"
731 | "compromisedPassword"
732 | "deviceNotKnownWithManagedApp";
733export type DeviceManagementSubscriptionState =
734 | "pending"
735 | "active"
736 | "warning"
737 | "disabled"
738 | "deleted"
739 | "blocked"
740 | "lockedOut";
741export type DeviceRegistrationState =
742 | "notRegistered"
743 | "registered"
744 | "revoked"
745 | "keyConflict"
746 | "approvalPending"
747 | "certificateReset"
748 | "notRegisteredPendingEnrollment"
749 | "unknown";
750export type ManagedDeviceOwnerType = "unknown" | "company" | "personal";
751export type ManagedDevicePartnerReportedHealthState =
752 | "unknown"
753 | "activated"
754 | "deactivated"
755 | "secured"
756 | "lowSeverity"
757 | "mediumSeverity"
758 | "highSeverity"
759 | "unresponsive"
760 | "compromised"
761 | "misconfigured";
762export type ManagementAgentType =
763 | "eas"
764 | "mdm"
765 | "easMdm"
766 | "intuneClient"
767 | "easIntuneClient"
768 | "configurationManagerClient"
769 | "configurationManagerClientMdm"
770 | "configurationManagerClientMdmEas"
771 | "unknown"
772 | "jamf"
773 | "googleCloudDevicePolicyController";
774export type ManagedAppClipboardSharingLevel = "allApps" | "managedAppsWithPasteIn" | "managedApps" | "blocked";
775export type ManagedAppDataEncryptionType =
776 | "useDeviceSettings"
777 | "afterDeviceRestart"
778 | "whenDeviceLockedExceptOpenFiles"
779 | "whenDeviceLocked";
780export type ManagedAppDataStorageLocation = "oneDriveForBusiness" | "sharePoint" | "localStorage";
781export type ManagedAppDataTransferLevel = "allApps" | "managedApps" | "none";
782export type ManagedAppFlaggedReason = "none" | "rootedDevice";
783export type ManagedAppPinCharacterSet = "numeric" | "alphanumericAndSymbol";
784export type ManagedBrowserType = "notConfigured" | "microsoftEdge";
785export type WindowsInformationProtectionEnforcementLevel =
786 | "noProtection"
787 | "encryptAndAuditOnly"
788 | "encryptAuditAndPrompt"
789 | "encryptAuditAndBlock";
790export type WindowsInformationProtectionPinCharacterRequirements = "notAllow" | "requireAtLeastOne" | "allow";
791export type NotificationTemplateBrandingOptions =
792 | "none"
793 | "includeCompanyLogo"
794 | "includeCompanyName"
795 | "includeContactInformation";
796export type RemoteAssistanceOnboardingStatus = "notOnboarded" | "onboarding" | "onboarded";
797export type DeviceEnrollmentFailureReason =
798 | "unknown"
799 | "authentication"
800 | "authorization"
801 | "accountValidation"
802 | "userValidation"
803 | "deviceNotSupported"
804 | "inMaintenance"
805 | "badRequest"
806 | "featureNotSupported"
807 | "enrollmentRestrictionsEnforced"
808 | "clientDisconnected"
809 | "userAbandonment";
810export type ApplicationType = "universal" | "desktop";
811export type EntityType =
812 | "event"
813 | "message"
814 | "driveItem"
815 | "externalItem"
816 | "site"
817 | "list"
818 | "listItem"
819 | "drive"
820 | "unknownfuturevalue";
821export type PlannerPreviewType = "automatic" | "noPreview" | "checklist" | "description" | "reference";
822export type OnenotePatchActionType = "Replace" | "Append" | "Delete" | "Insert" | "Prepend";
823export type OnenotePatchInsertPosition = "After" | "Before";
824export type OnenoteSourceService = "Unknown" | "OneDrive" | "OneDriveForBusiness" | "OnPremOneDriveForBusiness";
825export type OnenoteUserRole = "None" | "Owner" | "Contributor" | "Reader";
826export type OperationStatus = "NotStarted" | "Running" | "Completed" | "Failed";
827export type Status = "active" | "updated" | "deleted" | "ignored" | "unknownFutureValue";
828export type DataPolicyOperationStatus = "notStarted" | "running" | "complete" | "failed" | "unknownFutureValue";
829export type AlertFeedback = "unknown" | "truePositive" | "falsePositive" | "benignPositive" | "unknownFutureValue";
830export type AlertSeverity = "unknown" | "informational" | "low" | "medium" | "high" | "unknownFutureValue";
831export type AlertStatus = "unknown" | "newAlert" | "inProgress" | "resolved" | "dismissed" | "unknownFutureValue";
832export type ConnectionDirection = "unknown" | "inbound" | "outbound" | "unknownFutureValue";
833export type ConnectionStatus = "unknown" | "attempted" | "succeeded" | "blocked" | "failed" | "unknownFutureValue";
834export type EmailRole = "unknown" | "sender" | "recipient" | "unknownFutureValue";
835export type FileHashType =
836 | "unknown"
837 | "sha1"
838 | "sha256"
839 | "md5"
840 | "authenticodeHash256"
841 | "lsHash"
842 | "ctph"
843 | "unknownFutureValue";
844export type LogonType =
845 | "unknown"
846 | "interactive"
847 | "remoteInteractive"
848 | "network"
849 | "batch"
850 | "service"
851 | "unknownFutureValue";
852export type ProcessIntegrityLevel =
853 | "unknown"
854 | "untrusted"
855 | "low"
856 | "medium"
857 | "high"
858 | "system"
859 | "unknownFutureValue";
860export type RegistryHive =
861 | "unknown"
862 | "currentConfig"
863 | "currentUser"
864 | "localMachineSam"
865 | "localMachineSecurity"
866 | "localMachineSoftware"
867 | "localMachineSystem"
868 | "usersDefault"
869 | "unknownFutureValue";
870export type RegistryOperation = "unknown" | "create" | "modify" | "delete" | "unknownFutureValue";
871export type RegistryValueType =
872 | "unknown"
873 | "binary"
874 | "dword"
875 | "dwordLittleEndian"
876 | "dwordBigEndian"
877 | "expandSz"
878 | "link"
879 | "multiSz"
880 | "none"
881 | "qword"
882 | "qwordlittleEndian"
883 | "sz"
884 | "unknownFutureValue";
885export type SecurityNetworkProtocol =
886 | "unknown"
887 | "ip"
888 | "icmp"
889 | "igmp"
890 | "ggp"
891 | "ipv4"
892 | "tcp"
893 | "pup"
894 | "udp"
895 | "idp"
896 | "ipv6"
897 | "ipv6RoutingHeader"
898 | "ipv6FragmentHeader"
899 | "ipSecEncapsulatingSecurityPayload"
900 | "ipSecAuthenticationHeader"
901 | "icmpV6"
902 | "ipv6NoNextHeader"
903 | "ipv6DestinationOptions"
904 | "nd"
905 | "raw"
906 | "ipx"
907 | "spx"
908 | "spxII"
909 | "unknownFutureValue";
910export type SecurityResourceType = "unknown" | "attacked" | "related" | "unknownFutureValue";
911export type UserAccountSecurityType = "unknown" | "standard" | "power" | "administrator" | "unknownFutureValue";
912export type CallDirection = "incoming" | "outgoing";
913export type CallState =
914 | "incoming"
915 | "establishing"
916 | "established"
917 | "hold"
918 | "transferring"
919 | "transferAccepted"
920 | "redirecting"
921 | "terminating"
922 | "terminated"
923 | "unknownFutureValue";
924export type CallTranscriptionState = "notStarted" | "active" | "inactive" | "unknownFutureValue";
925export type ChangeType = "created" | "updated" | "deleted";
926export type EndpointType =
927 | "default"
928 | "voicemail"
929 | "skypeForBusiness"
930 | "skypeForBusinessVoipPhone"
931 | "unknownFutureValue";
932export type LobbyBypassScope =
933 | "organizer"
934 | "organization"
935 | "organizationAndFederated"
936 | "everyone"
937 | "unknownFutureValue";
938export type MediaDirection = "inactive" | "sendOnly" | "receiveOnly" | "sendReceive";
939export type MediaState = "active" | "inactive" | "unknownFutureValue";
940export type Modality = "audio" | "video" | "videoBasedScreenSharing" | "data" | "unknownFutureValue";
941export type OnlineMeetingPresenters =
942 | "everyone"
943 | "organization"
944 | "roleIsPresenter"
945 | "organizer"
946 | "unknownFutureValue";
947export type OnlineMeetingRole = "attendee" | "presenter" | "unknownFutureValue";
948export type RecordingStatus = "unknown" | "notRecording" | "recording" | "failed" | "unknownFutureValue";
949export type RejectReason = "none" | "busy" | "forbidden" | "unknownFutureValue";
950export type RoutingType = "forwarded" | "lookup" | "selfFork" | "unknownFutureValue";
951export type ScreenSharingRole = "viewer" | "sharer";
952export type Tone =
953 | "tone0"
954 | "tone1"
955 | "tone2"
956 | "tone3"
957 | "tone4"
958 | "tone5"
959 | "tone6"
960 | "tone7"
961 | "tone8"
962 | "tone9"
963 | "star"
964 | "pound"
965 | "a"
966 | "b"
967 | "c"
968 | "d"
969 | "flash";
970export type AttestationLevel = "attested" | "notAttested" | "unknownFutureValue";
971export type AuthenticationMethodKeyStrength = "normal" | "weak" | "unknown";
972export type LifecycleEventType = "missed" | "subscriptionRemoved" | "reauthorizationRequired";
973export type ChannelMembershipType = "standard" | "private" | "unknownFutureValue";
974export type ChatMessageImportance = "normal" | "high" | "urgent" | "unknownFutureValue";
975export type ChatMessagePolicyViolationDlpActionTypes = "none" | "notifySender" | "blockAccess" | "blockAccessExternal";
976export type ChatMessagePolicyViolationUserActionTypes = "none" | "override" | "reportFalsePositive";
977export type ChatMessagePolicyViolationVerdictDetailsTypes =
978 | "none"
979 | "allowFalsePositiveOverride"
980 | "allowOverrideWithoutJustification"
981 | "allowOverrideWithJustification";
982export type ChatMessageType = "message" | "chatEvent" | "typing" | "unknownFutureValue";
983export type ClonableTeamParts = "apps" | "tabs" | "settings" | "channels" | "members";
984export type GiphyRatingType = "strict" | "moderate" | "unknownFutureValue";
985export type TeamsAppDistributionMethod = "store" | "organization" | "sideloaded" | "unknownFutureValue";
986export type TeamsAsyncOperationStatus =
987 | "invalid"
988 | "notStarted"
989 | "inProgress"
990 | "succeeded"
991 | "failed"
992 | "unknownFutureValue";
993export type TeamsAsyncOperationType =
994 | "invalid"
995 | "cloneTeam"
996 | "archiveTeam"
997 | "unarchiveTeam"
998 | "createTeam"
999 | "unknownFutureValue";
1000export type TeamSpecialization =
1001 | "none"
1002 | "educationStandard"
1003 | "educationClass"
1004 | "educationProfessionalLearningCommunity"
1005 | "educationStaff"
1006 | "healthcareStandard"
1007 | "healthcareCareCoordination"
1008 | "unknownFutureValue";
1009export type TeamVisibilityType = "private" | "public" | "hiddenMembership" | "unknownFutureValue";
1010export type ScheduleChangeRequestActor = "sender" | "recipient" | "manager" | "system" | "unknownFutureValue";
1011export type ScheduleChangeState = "pending" | "approved" | "declined" | "unknownFutureValue";
1012export type ScheduleEntityTheme =
1013 | "white"
1014 | "blue"
1015 | "green"
1016 | "purple"
1017 | "pink"
1018 | "yellow"
1019 | "gray"
1020 | "darkBlue"
1021 | "darkGreen"
1022 | "darkPurple"
1023 | "darkPink"
1024 | "darkYellow"
1025 | "unknownFutureValue";
1026export type TimeOffReasonIconType =
1027 | "none"
1028 | "car"
1029 | "calendar"
1030 | "running"
1031 | "plane"
1032 | "firstAid"
1033 | "doctor"
1034 | "notWorking"
1035 | "clock"
1036 | "juryDuty"
1037 | "globe"
1038 | "cup"
1039 | "phone"
1040 | "weather"
1041 | "umbrella"
1042 | "piggyBank"
1043 | "dog"
1044 | "cake"
1045 | "trafficCone"
1046 | "pin"
1047 | "sunny"
1048 | "unknownFutureValue";
1049export type WorkforceIntegrationEncryptionProtocol = "sharedSecret" | "unknownFutureValue";
1050export type WorkforceIntegrationSupportedEntities =
1051 | "none"
1052 | "shift"
1053 | "swapRequest"
1054 | "userShiftPreferences"
1055 | "openShift"
1056 | "openShiftRequest"
1057 | "offerShiftRequest"
1058 | "unknownFutureValue";
1059export type MailDestinationRoutingReason =
1060 | "none"
1061 | "mailFlowRule"
1062 | "safeSender"
1063 | "blockedSender"
1064 | "advancedSpamFiltering"
1065 | "domainAllowList"
1066 | "domainBlockList"
1067 | "notInAddressBook"
1068 | "firstTimeSender"
1069 | "autoPurgeToInbox"
1070 | "autoPurgeToJunk"
1071 | "autoPurgeToDeleted"
1072 | "outbound"
1073 | "notJunk"
1074 | "junk"
1075 | "unknownFutureValue";
1076export type ThreatAssessmentContentType = "mail" | "url" | "file";
1077export type ThreatAssessmentRequestSource = "undefined" | "user" | "administrator";
1078export type ThreatAssessmentResultType = "checkPolicy" | "rescan" | "unknownFutureValue";
1079export type ThreatAssessmentStatus = "pending" | "completed";
1080export type ThreatCategory = "undefined" | "spam" | "phishing" | "malware" | "unknownFutureValue";
1081export type ThreatExpectedAssessment = "block" | "unblock";
1082export type TaskStatus = "notStarted" | "inProgress" | "completed" | "waitingOnOthers" | "deferred";
1083export type WellknownListName = "none" | "defaultList" | "flaggedEmails" | "unknownFutureValue";
1084export interface Entity {
1085 // Read-only.
1086 id?: string;
1087}
1088export interface AuditLogRoot extends Entity {
1089 // Read-only. Nullable.
1090 directoryAudits?: NullableOption<DirectoryAudit[]>;
1091 restrictedSignIns?: NullableOption<RestrictedSignIn[]>;
1092 // Read-only. Nullable.
1093 signIns?: NullableOption<SignIn[]>;
1094}
1095export interface DirectoryAudit extends Entity {
1096 /**
1097 * Indicates the date and time the activity was performed. The Timestamp type is always in UTC time. For example, midnight
1098 * UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
1099 */
1100 activityDateTime?: string;
1101 /**
1102 * Indicates the activity name or the operation name (E.g. 'Create User', 'Add member to group'). For a list of activities
1103 * logged, refer to Azure Ad activity list.
1104 */
1105 activityDisplayName?: string;
1106 // Indicates additional details on the activity.
1107 additionalDetails?: NullableOption<KeyValue[]>;
1108 /**
1109 * Indicates which resource category that's targeted by the activity. (For example: User Management, Group Management
1110 * etc..)
1111 */
1112 category?: string;
1113 /**
1114 * Indicates a unique ID that helps correlate activities that span across various services. Can be used to trace logs
1115 * across services.
1116 */
1117 correlationId?: NullableOption<string>;
1118 // Indicates information about the user or app initiated the activity.
1119 initiatedBy?: AuditActivityInitiator;
1120 /**
1121 * Indicates information on which service initiated the activity (For example: Self-service Password Management, Core
1122 * Directory, B2C, Invited Users, Microsoft Identity Manager, Privileged Identity Management.
1123 */
1124 loggedByService?: NullableOption<string>;
1125 operationType?: NullableOption<string>;
1126 // Indicates the result of the activity. Possible values are: success, failure, timeout, unknownFutureValue.
1127 result?: NullableOption<OperationResult>;
1128 // Indicates the reason for failure if the result is 'Failure' or 'timeout'.
1129 resultReason?: NullableOption<string>;
1130 /**
1131 * Indicates information on which resource was changed due to the activity. Target Resource Type can be User, Device,
1132 * Directory, App, Role, Group, Policy or Other.
1133 */
1134 targetResources?: NullableOption<TargetResource[]>;
1135}
1136export interface SignIn extends Entity {
1137 // The application name displayed in the Azure Portal.
1138 appDisplayName?: NullableOption<string>;
1139 // The application identifier in Azure Active Directory.
1140 appId?: NullableOption<string>;
1141 // A list of conditional access policies that are triggered by the corresponding sign-in activity.
1142 appliedConditionalAccessPolicies?: NullableOption<AppliedConditionalAccessPolicy[]>;
1143 /**
1144 * The legacy client used for sign-in activity. For example, Browser, Exchange Active Sync,Modern clients, IMAP, MAPI,
1145 * SMTP, or POP.
1146 */
1147 clientAppUsed?: NullableOption<string>;
1148 /**
1149 * The status of the conditional access policy triggered. Possible values: success, failure, notApplied, or
1150 * unknownFutureValue.
1151 */
1152 conditionalAccessStatus?: NullableOption<ConditionalAccessStatus>;
1153 /**
1154 * The identifier that's sent from the client when sign-in is initiated. This is used for troubleshooting the
1155 * corresponding sign-in activity when calling for support.
1156 */
1157 correlationId?: NullableOption<string>;
1158 /**
1159 * The date and time the sign-in was initiated. The Timestamp type is always in UTC time. For example, midnight UTC on Jan
1160 * 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
1161 */
1162 createdDateTime?: string;
1163 // The device information from where the sign-in occurred. Includes information such as deviceId, OS, and browser.
1164 deviceDetail?: NullableOption<DeviceDetail>;
1165 // The IP address of the client from where the sign-in occurred.
1166 ipAddress?: NullableOption<string>;
1167 // Indicates whether a sign-in is interactive or not.
1168 isInteractive?: NullableOption<boolean>;
1169 // The city, state, and 2 letter country code from where the sign-in occurred.
1170 location?: NullableOption<SignInLocation>;
1171 // The name of the resource that the user signed in to.
1172 resourceDisplayName?: NullableOption<string>;
1173 // The identifier of the resource that the user signed in to.
1174 resourceId?: NullableOption<string>;
1175 /**
1176 * The reason behind a specific state of a risky user, sign-in, or a risk event. Possible values: none,
1177 * adminGeneratedTemporaryPassword, userPerformedSecuredPasswordChange, userPerformedSecuredPasswordReset,
1178 * adminConfirmedSigninSafe, aiConfirmedSigninSafe, userPassedMFADrivenByRiskBasedPolicy, adminDismissedAllRiskForUser,
1179 * adminConfirmedSigninCompromised, or unknownFutureValue. The value none means that no action has been performed on the
1180 * user or sign-in so far. Note: Details for this property are only available for Azure AD Premium P2 customers. All other
1181 * customers are returned hidden.
1182 */
1183 riskDetail?: NullableOption<RiskDetail>;
1184 /**
1185 * The list of risk event types associated with the sign-in. Possible values: unlikelyTravel, anonymizedIPAddress,
1186 * maliciousIPAddress, unfamiliarFeatures, malwareInfectedIPAddress, suspiciousIPAddress, leakedCredentials,
1187 * investigationsThreatIntelligence, generic, or unknownFutureValue.
1188 */
1189 riskEventTypes?: NullableOption<RiskEventType[]>;
1190 /**
1191 * The list of risk event types associated with the sign-in. Possible values: unlikelyTravel, anonymizedIPAddress,
1192 * maliciousIPAddress, unfamiliarFeatures, malwareInfectedIPAddress, suspiciousIPAddress, leakedCredentials,
1193 * investigationsThreatIntelligence, generic, or unknownFutureValue.
1194 */
1195 riskEventTypes_v2?: NullableOption<string[]>;
1196 /**
1197 * The aggregated risk level. Possible values: none, low, medium, high, hidden, or unknownFutureValue. The value hidden
1198 * means the user or sign-in was not enabled for Azure AD Identity Protection. Note: Details for this property are only
1199 * available for Azure AD Premium P2 customers. All other customers are returned hidden.
1200 */
1201 riskLevelAggregated?: NullableOption<RiskLevel>;
1202 /**
1203 * The risk level during sign-in. Possible values: none, low, medium, high, hidden, or unknownFutureValue. The value
1204 * hidden means the user or sign-in was not enabled for Azure AD Identity Protection. Note: Details for this property are
1205 * only available for Azure AD Premium P2 customers. All other customers are returned hidden.
1206 */
1207 riskLevelDuringSignIn?: NullableOption<RiskLevel>;
1208 /**
1209 * The risk state of a risky user, sign-in, or a risk event. Possible values: none, confirmedSafe, remediated, dismissed,
1210 * atRisk, confirmedCompromised, or unknownFutureValue.
1211 */
1212 riskState?: NullableOption<RiskState>;
1213 // The sign-in status. Includes the error code and description of the error (in case of a sign-in failure).
1214 status?: NullableOption<SignInStatus>;
1215 // The display name of the user.
1216 userDisplayName?: NullableOption<string>;
1217 // The identifier of the user.
1218 userId?: string;
1219 // The UPN of the user.
1220 userPrincipalName?: NullableOption<string>;
1221}
1222export interface RestrictedSignIn extends SignIn {
1223 targetTenantId?: NullableOption<string>;
1224}
1225// tslint:disable-next-line: interface-name
1226export interface Invitation extends Entity {
1227 // The display name of the user being invited.
1228 invitedUserDisplayName?: NullableOption<string>;
1229 /**
1230 * The email address of the user being invited. Required. The following special characters are not permitted in the email
1231 * address:Tilde (~)Exclamation point (!)At sign (@)Number sign (#)Dollar sign ($)Percent (%)Circumflex (^)Ampersand
1232 * (&amp;)Asterisk (*)Parentheses (( ))Hyphen (-)Plus sign (+)Equal sign (=)Brackets ([ ])Braces ({ })Backslash (/)Slash
1233 * mark (/)Pipe (`
1234 */
1235 invitedUserEmailAddress?: string;
1236 /**
1237 * Additional configuration for the message being sent to the invited user, including customizing message text, language
1238 * and cc recipient list.
1239 */
1240 invitedUserMessageInfo?: NullableOption<InvitedUserMessageInfo>;
1241 /**
1242 * The userType of the user being invited. By default, this is Guest. You can invite as Member if you're are company
1243 * administrator.
1244 */
1245 invitedUserType?: NullableOption<string>;
1246 // The URL the user can use to redeem their invitation. Read-only.
1247 inviteRedeemUrl?: NullableOption<string>;
1248 // The URL user should be redirected to once the invitation is redeemed. Required.
1249 inviteRedirectUrl?: string;
1250 // Indicates whether an email should be sent to the user being invited or not. The default is false.
1251 sendInvitationMessage?: NullableOption<boolean>;
1252 // The status of the invitation. Possible values: PendingAcceptance, Completed, InProgress, and Error
1253 status?: NullableOption<string>;
1254 // The user created as part of the invitation creation. Read-Only
1255 invitedUser?: NullableOption<User>;
1256}
1257export interface DirectoryObject extends Entity {
1258 deletedDateTime?: NullableOption<string>;
1259}
1260export interface User extends DirectoryObject {
1261 /**
1262 * true if the account is enabled; otherwise, false. This property is required when a user is created. Returned only on
1263 * $select. Supports $filter.
1264 */
1265 accountEnabled?: NullableOption<boolean>;
1266 /**
1267 * Sets the age group of the user. Allowed values: null, minor, notAdult and adult. Refer to the legal age group property
1268 * definitions for further information. Returned only on $select.
1269 */
1270 ageGroup?: NullableOption<string>;
1271 // The licenses that are assigned to the user. Returned only on $select. Not nullable.
1272 assignedLicenses?: AssignedLicense[];
1273 // The plans that are assigned to the user. Returned only on $select. Read-only. Not nullable.
1274 assignedPlans?: AssignedPlan[];
1275 /**
1276 * The telephone numbers for the user. Only one number can be set for this property. Returned by default. Read-only for
1277 * users synced from on-premises directory.
1278 */
1279 businessPhones?: string[];
1280 // The city in which the user is located. Returned only on $select. Supports $filter.
1281 city?: NullableOption<string>;
1282 /**
1283 * The company name which the user is associated. This property can be useful for describing the company that an external
1284 * user comes from. The maximum length of the company name is 64 chararcters.Returned only on $select.
1285 */
1286 companyName?: NullableOption<string>;
1287 /**
1288 * Sets whether consent has been obtained for minors. Allowed values: null, granted, denied and notRequired. Refer to the
1289 * legal age group property definitions for further information. Returned only on $select.
1290 */
1291 consentProvidedForMinor?: NullableOption<string>;
1292 // The country/region in which the user is located; for example, 'US' or 'UK'. Returned only on $select. Supports $filter.
1293 country?: NullableOption<string>;
1294 /**
1295 * The date and time the user was created. The value cannot be modified and is automatically populated when the entity is
1296 * created. The DateTimeOffset type represents date and time information using ISO 8601 format and is always in UTC time.
1297 * Property is nullable. A null value indicates that an accurate creation time couldn't be determined for the user.
1298 * Returned only on $select. Read-only. Supports $filter.
1299 */
1300 createdDateTime?: NullableOption<string>;
1301 /**
1302 * Indicates whether the user account was created as a regular school or work account (null), an external account
1303 * (Invitation), a local account for an Azure Active Directory B2C tenant (LocalAccount) or self-service sign-up using
1304 * email verification (EmailVerified). Returned only on $select. Read-only.
1305 */
1306 creationType?: NullableOption<string>;
1307 // The name for the department in which the user works. Returned only on $select. Supports $filter.
1308 department?: NullableOption<string>;
1309 /**
1310 * The name displayed in the address book for the user. This value is usually the combination of the user's first name,
1311 * middle initial, and last name. This property is required when a user is created and it cannot be cleared during
1312 * updates. Returned by default. Supports $filter and $orderby.
1313 */
1314 displayName?: NullableOption<string>;
1315 /**
1316 * The date and time when the user was hired or will start work in case of a future hire. Returned only on $select.
1317 * Supports $filter.
1318 */
1319 employeeHireDate?: NullableOption<string>;
1320 // The employee identifier assigned to the user by the organization. Returned only on $select. Supports $filter.
1321 employeeId?: NullableOption<string>;
1322 // Represents organization data (e.g. division and costCenter) associated with a user. Returned only on $select.
1323 employeeOrgData?: NullableOption<EmployeeOrgData>;
1324 /**
1325 * Captures enterprise worker type: Employee, Contractor, Consultant, Vendor, etc. Returned only on $select. Supports
1326 * $filter.
1327 */
1328 employeeType?: NullableOption<string>;
1329 /**
1330 * For an external user invited to the tenant using the invitation API, this property represents the invited user's
1331 * invitation status. For invited users, the state can be PendingAcceptance or Accepted, or null for all other users.
1332 * Returned only on $select. Supports $filter with the supported values. For example: $filter=externalUserState eq
1333 * 'PendingAcceptance'.
1334 */
1335 externalUserState?: NullableOption<string>;
1336 // Shows the timestamp for the latest change to the externalUserState property. Returned only on $select.
1337 externalUserStateChangeDateTime?: NullableOption<string>;
1338 // The fax number of the user. Returned only on $select.
1339 faxNumber?: NullableOption<string>;
1340 // The given name (first name) of the user. Returned by default. Supports $filter.
1341 givenName?: NullableOption<string>;
1342 /**
1343 * Represents the identities that can be used to sign in to this user account. An identity can be provided by Microsoft
1344 * (also known as a local account), by organizations, or by social identity providers such as Facebook, Google, and
1345 * Microsoft, and tied to a user account. May contain multiple items with the same signInType value. Returned only on
1346 * $select. Supports $filter.
1347 */
1348 identities?: NullableOption<ObjectIdentity[]>;
1349 // The instant message voice over IP (VOIP) session initiation protocol (SIP) addresses for the user. Read-only.
1350 imAddresses?: NullableOption<string[]>;
1351 // Do not use – reserved for future use.
1352 isResourceAccount?: NullableOption<boolean>;
1353 // The user's job title. Returned by default. Supports $filter.
1354 jobTitle?: NullableOption<string>;
1355 /**
1356 * The time when this Azure AD user last changed their password. The Timestamp type represents date and time information
1357 * using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
1358 * '2014-01-01T00:00:00Z' Returned only on $select.
1359 */
1360 lastPasswordChangeDateTime?: NullableOption<string>;
1361 /**
1362 * Used by enterprise applications to determine the legal age group of the user. This property is read-only and calculated
1363 * based on ageGroup and consentProvidedForMinor properties. Allowed values: null, minorWithOutParentalConsent,
1364 * minorWithParentalConsent, minorNoParentalConsentRequired, notAdult and adult. Refer to the legal age group property
1365 * definitions for further information. Returned only on $select.
1366 */
1367 legalAgeGroupClassification?: NullableOption<string>;
1368 // State of license assignments for this user. Returned only on $select. Read-only.
1369 licenseAssignmentStates?: NullableOption<LicenseAssignmentState[]>;
1370 /**
1371 * The SMTP address for the user, for example, 'jeff@contoso.onmicrosoft.com'. Returned by default. Supports $filter and
1372 * endsWith.
1373 */
1374 mail?: NullableOption<string>;
1375 /**
1376 * The mail alias for the user. This property must be specified when a user is created. Returned only on $select. Supports
1377 * $filter.
1378 */
1379 mailNickname?: NullableOption<string>;
1380 /**
1381 * The primary cellular telephone number for the user. Returned by default. Read-only for users synced from on-premises
1382 * directory.
1383 */
1384 mobilePhone?: NullableOption<string>;
1385 // The office location in the user's place of business. Returned by default.
1386 officeLocation?: NullableOption<string>;
1387 /**
1388 * Contains the on-premises Active Directory distinguished name or DN. The property is only populated for customers who
1389 * are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect. Returned only on $select.
1390 * Read-only.
1391 */
1392 onPremisesDistinguishedName?: NullableOption<string>;
1393 /**
1394 * Contains the on-premises domainFQDN, also called dnsDomainName synchronized from the on-premises directory. The
1395 * property is only populated for customers who are synchronizing their on-premises directory to Azure Active Directory
1396 * via Azure AD Connect. Returned only on $select. Read-only.
1397 */
1398 onPremisesDomainName?: NullableOption<string>;
1399 /**
1400 * Contains extensionAttributes 1-15 for the user. Note that the individual extension attributes are neither selectable
1401 * nor filterable. For an onPremisesSyncEnabled user, the source of authority for this set of properties is the
1402 * on-premises and is read-only and is read-only. For a cloud-only user (where onPremisesSyncEnabled is false), these
1403 * properties may be set during creation or update. These extension attributes are also known as Exchange custom
1404 * attributes 1-15. Returned only on $select.
1405 */
1406 onPremisesExtensionAttributes?: NullableOption<OnPremisesExtensionAttributes>;
1407 /**
1408 * This property is used to associate an on-premises Active Directory user account to their Azure AD user object. This
1409 * property must be specified when creating a new user account in the Graph if you are using a federated domain for the
1410 * user's userPrincipalName (UPN) property. Important: The $ and _ characters cannot be used when specifying this
1411 * property. Returned only on $select. Supports $filter.
1412 */
1413 onPremisesImmutableId?: NullableOption<string>;
1414 /**
1415 * Indicates the last time at which the object was synced with the on-premises directory; for example:
1416 * '2013-02-16T03:04:54Z'. The Timestamp type represents date and time information using ISO 8601 format and is always in
1417 * UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Returned only on
1418 * $select. Read-only.
1419 */
1420 onPremisesLastSyncDateTime?: NullableOption<string>;
1421 // Errors when using Microsoft synchronization product during provisioning. Returned only on $select.
1422 onPremisesProvisioningErrors?: NullableOption<OnPremisesProvisioningError[]>;
1423 /**
1424 * Contains the on-premises sAMAccountName synchronized from the on-premises directory. The property is only populated for
1425 * customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect. Returned
1426 * only on $select. Read-only.
1427 */
1428 onPremisesSamAccountName?: NullableOption<string>;
1429 /**
1430 * Contains the on-premises security identifier (SID) for the user that was synchronized from on-premises to the cloud.
1431 * Returned only on $select. Read-only.
1432 */
1433 onPremisesSecurityIdentifier?: NullableOption<string>;
1434 /**
1435 * true if this object is synced from an on-premises directory; false if this object was originally synced from an
1436 * on-premises directory but is no longer synced; null if this object has never been synced from an on-premises directory
1437 * (default). Returned only on $select. Read-only.
1438 */
1439 onPremisesSyncEnabled?: NullableOption<boolean>;
1440 /**
1441 * Contains the on-premises userPrincipalName synchronized from the on-premises directory. The property is only populated
1442 * for customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect.
1443 * Returned only on $select. Read-only.
1444 */
1445 onPremisesUserPrincipalName?: NullableOption<string>;
1446 /**
1447 * A list of additional email addresses for the user; for example: ['bob@contoso.com', 'Robert@fabrikam.com'].Returned
1448 * only on $select. Supports$filter.
1449 */
1450 otherMails?: string[];
1451 /**
1452 * Specifies password policies for the user. This value is an enumeration with one possible value being
1453 * 'DisableStrongPassword', which allows weaker passwords than the default policy to be specified.
1454 * 'DisablePasswordExpiration' can also be specified. The two may be specified together; for example:
1455 * 'DisablePasswordExpiration, DisableStrongPassword'.Returned only on $select.
1456 */
1457 passwordPolicies?: NullableOption<string>;
1458 /**
1459 * Specifies the password profile for the user. The profile contains the user's password. This property is required when a
1460 * user is created. The password in the profile must satisfy minimum requirements as specified by the passwordPolicies
1461 * property. By default, a strong password is required. Returned only on $select.
1462 */
1463 passwordProfile?: NullableOption<PasswordProfile>;
1464 /**
1465 * The postal code for the user's postal address. The postal code is specific to the user's country/region. In the United
1466 * States of America, this attribute contains the ZIP code. Returned only on $select.
1467 */
1468 postalCode?: NullableOption<string>;
1469 // The preferred language for the user. Should follow ISO 639-1 Code; for example 'en-US'. Returned by default.
1470 preferredLanguage?: NullableOption<string>;
1471 // The plans that are provisioned for the user. Returned only on $select. Read-only. Not nullable.
1472 provisionedPlans?: ProvisionedPlan[];
1473 /**
1474 * For example: ['SMTP: bob@contoso.com', 'smtp: bob@sales.contoso.com'] The any operator is required for filter
1475 * expressions on multi-valued properties. Returned only on $select. Read-only, Not nullable. Supports $filter.
1476 */
1477 proxyAddresses?: string[];
1478 /**
1479 * true if the Outlook global address list should contain this user, otherwise false. If not set, this will be treated as
1480 * true. For users invited through the invitation manager, this property will be set to false. Returned only on $select.
1481 */
1482 showInAddressList?: NullableOption<boolean>;
1483 /**
1484 * Any refresh tokens or sessions tokens (session cookies) issued before this time are invalid, and applications will get
1485 * an error when using an invalid refresh or sessions token to acquire a delegated access token (to access APIs such as
1486 * Microsoft Graph). If this happens, the application will need to acquire a new refresh token by making a request to the
1487 * authorize endpoint. Returned only on $select. Read-only. Use revokeSignInSessions to reset.
1488 */
1489 signInSessionsValidFromDateTime?: NullableOption<string>;
1490 // The state or province in the user's address. Returned only on $select. Supports $filter.
1491 state?: NullableOption<string>;
1492 // The street address of the user's place of business. Returned only on $select.
1493 streetAddress?: NullableOption<string>;
1494 // The user's surname (family name or last name). Returned by default. Supports $filter.
1495 surname?: NullableOption<string>;
1496 /**
1497 * A two letter country code (ISO standard 3166). Required for users that will be assigned licenses due to legal
1498 * requirement to check for availability of services in countries. Examples include: 'US', 'JP', and 'GB'. Not nullable.
1499 * Returned only on $select. Supports $filter.
1500 */
1501 usageLocation?: NullableOption<string>;
1502 /**
1503 * The user principal name (UPN) of the user. The UPN is an Internet-style login name for the user based on the Internet
1504 * standard RFC 822. By convention, this should map to the user's email name. The general format is alias@domain, where
1505 * domain must be present in the tenant's collection of verified domains. This property is required when a user is
1506 * created. The verified domains for the tenant can be accessed from the verifiedDomains property of organization.
1507 * Returned by default. Supports $filter, $orderby, and endsWith.
1508 */
1509 userPrincipalName?: NullableOption<string>;
1510 /**
1511 * A string value that can be used to classify user types in your directory, such as 'Member' and 'Guest'. Returned only
1512 * on $select. Supports $filter.
1513 */
1514 userType?: NullableOption<string>;
1515 /**
1516 * Settings for the primary mailbox of the signed-in user. You can get or update settings for sending automatic replies to
1517 * incoming messages, locale, and time zone. Returned only on $select.
1518 */
1519 mailboxSettings?: NullableOption<MailboxSettings>;
1520 // The limit on the maximum number of devices that the user is permitted to enroll. Allowed values are 5 or 1000.
1521 deviceEnrollmentLimit?: number;
1522 // A freeform text entry field for the user to describe themselves. Returned only on $select.
1523 aboutMe?: NullableOption<string>;
1524 /**
1525 * The birthday of the user. The Timestamp type represents date and time information using ISO 8601 format and is always
1526 * in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z' Returned only on
1527 * $select.
1528 */
1529 birthday?: string;
1530 /**
1531 * The hire date of the user. The Timestamp type represents date and time information using ISO 8601 format and is always
1532 * in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Returned only on
1533 * $select. Note: This property is specific to SharePoint Online. We recommend using the native employeeHireDate property
1534 * to set and update hire date values using Microsoft Graph APIs.
1535 */
1536 hireDate?: string;
1537 // A list for the user to describe their interests. Returned only on $select.
1538 interests?: NullableOption<string[]>;
1539 // The URL for the user's personal site. Returned only on $select.
1540 mySite?: NullableOption<string>;
1541 // A list for the user to enumerate their past projects. Returned only on $select.
1542 pastProjects?: NullableOption<string[]>;
1543 // The preferred name for the user. Returned only on $select.
1544 preferredName?: NullableOption<string>;
1545 // A list for the user to enumerate their responsibilities. Returned only on $select.
1546 responsibilities?: NullableOption<string[]>;
1547 // A list for the user to enumerate the schools they have attended. Returned only on $select.
1548 schools?: NullableOption<string[]>;
1549 // A list for the user to enumerate their skills. Returned only on $select.
1550 skills?: NullableOption<string[]>;
1551 appRoleAssignments?: NullableOption<AppRoleAssignment[]>;
1552 // Directory objects that were created by the user. Read-only. Nullable.
1553 createdObjects?: NullableOption<DirectoryObject[]>;
1554 /**
1555 * The users and contacts that report to the user. (The users and contacts that have their manager property set to this
1556 * user.) Read-only. Nullable.
1557 */
1558 directReports?: NullableOption<DirectoryObject[]>;
1559 // A collection of this user's license details. Read-only.
1560 licenseDetails?: NullableOption<LicenseDetails[]>;
1561 // The user or contact that is this user's manager. Read-only. (HTTP Methods: GET, PUT, DELETE.)
1562 manager?: NullableOption<DirectoryObject>;
1563 // The groups, directory roles and administrative units that the user is a member of. Read-only. Nullable.
1564 memberOf?: NullableOption<DirectoryObject[]>;
1565 oauth2PermissionGrants?: NullableOption<OAuth2PermissionGrant[]>;
1566 // Devices that are owned by the user. Read-only. Nullable.
1567 ownedDevices?: NullableOption<DirectoryObject[]>;
1568 // Directory objects that are owned by the user. Read-only. Nullable.
1569 ownedObjects?: NullableOption<DirectoryObject[]>;
1570 // Devices that are registered for the user. Read-only. Nullable.
1571 registeredDevices?: NullableOption<DirectoryObject[]>;
1572 // The scoped-role administrative unit memberships for this user. Read-only. Nullable.
1573 scopedRoleMemberOf?: NullableOption<ScopedRoleMembership[]>;
1574 transitiveMemberOf?: NullableOption<DirectoryObject[]>;
1575 // The user's primary calendar. Read-only.
1576 calendar?: NullableOption<Calendar>;
1577 // The user's calendar groups. Read-only. Nullable.
1578 calendarGroups?: NullableOption<CalendarGroup[]>;
1579 // The user's calendars. Read-only. Nullable.
1580 calendars?: NullableOption<Calendar[]>;
1581 // The calendar view for the calendar. Read-only. Nullable.
1582 calendarView?: NullableOption<Event[]>;
1583 // The user's contacts folders. Read-only. Nullable.
1584 contactFolders?: NullableOption<ContactFolder[]>;
1585 // The user's contacts. Read-only. Nullable.
1586 contacts?: NullableOption<Contact[]>;
1587 // The user's events. Default is to show events under the Default Calendar. Read-only. Nullable.
1588 events?: NullableOption<Event[]>;
1589 /**
1590 * Relevance classification of the user's messages based on explicit designations which override inferred relevance or
1591 * importance.
1592 */
1593 inferenceClassification?: NullableOption<InferenceClassification>;
1594 // The user's mail folders. Read-only. Nullable.
1595 mailFolders?: NullableOption<MailFolder[]>;
1596 // The messages in a mailbox or folder. Read-only. Nullable.
1597 messages?: NullableOption<Message[]>;
1598 // Selective Outlook services available to the user. Read-only. Nullable.
1599 outlook?: NullableOption<OutlookUser>;
1600 /**
1601 * Read-only. The most relevant people to the user. The collection is ordered by their relevance to the user, which is
1602 * determined by the user's communication, collaboration and business relationships. A person is an aggregation of
1603 * information from across mail, contacts and social networks.
1604 */
1605 people?: NullableOption<Person[]>;
1606 // The user's profile photo. Read-only.
1607 photo?: NullableOption<ProfilePhoto>;
1608 // Read-only. Nullable.
1609 photos?: NullableOption<ProfilePhoto[]>;
1610 // The user's OneDrive. Read-only.
1611 drive?: NullableOption<Drive>;
1612 // A collection of drives available for this user. Read-only.
1613 drives?: NullableOption<Drive[]>;
1614 followedSites?: NullableOption<Site[]>;
1615 // The collection of open extensions defined for the user. Nullable.
1616 extensions?: NullableOption<Extension[]>;
1617 // The managed devices associated with the user.
1618 managedDevices?: NullableOption<ManagedDevice[]>;
1619 // Zero or more managed app registrations that belong to the user.
1620 managedAppRegistrations?: NullableOption<ManagedAppRegistration[]>;
1621 // The list of troubleshooting events for this user.
1622 deviceManagementTroubleshootingEvents?: NullableOption<DeviceManagementTroubleshootingEvent[]>;
1623 // Selective Planner services available to the user. Read-only. Nullable.
1624 planner?: NullableOption<PlannerUser>;
1625 // Read-only. Nullable.
1626 insights?: NullableOption<OfficeGraphInsights>;
1627 // Read-only. Nullable.
1628 settings?: NullableOption<UserSettings>;
1629 // Read-only.
1630 onenote?: NullableOption<Onenote>;
1631 // The user's activities across devices. Read-only. Nullable.
1632 activities?: NullableOption<UserActivity[]>;
1633 onlineMeetings?: NullableOption<OnlineMeeting[]>;
1634 presence?: NullableOption<Presence>;
1635 authentication?: NullableOption<Authentication>;
1636 // The Microsoft Teams teams that the user is a member of. Read-only. Nullable.
1637 joinedTeams?: NullableOption<Team[]>;
1638 // A container for Microsoft Teams features available for the user. Read-only. Nullable.
1639 teamwork?: NullableOption<UserTeamwork>;
1640 // Represents the To Do services available to a user.
1641 todo?: NullableOption<Todo>;
1642}
1643export interface AppRoleAssignment extends DirectoryObject {
1644 /**
1645 * The identifier (id) for the app role which is assigned to the principal. This app role must be exposed in the appRoles
1646 * property on the resource application's service principal (resourceId). If the resource application has not declared any
1647 * app roles, a default app role ID of 00000000-0000-0000-0000-000000000000 can be specified to signal that the principal
1648 * is assigned to the resource app without any specific app roles. Required on create. Does not support $filter.
1649 */
1650 appRoleId?: string;
1651 createdDateTime?: NullableOption<string>;
1652 /**
1653 * The display name of the user, group, or service principal that was granted the app role assignment. Read-only. Supports
1654 * $filter (eq and startswith).
1655 */
1656 principalDisplayName?: NullableOption<string>;
1657 /**
1658 * The unique identifier (id) for the user, group or service principal being granted the app role. Required on create.
1659 * Does not support $filter.
1660 */
1661 principalId?: NullableOption<string>;
1662 /**
1663 * The type of the assigned principal. This can either be 'User', 'Group' or 'ServicePrincipal'. Read-only. Does not
1664 * support $filter.
1665 */
1666 principalType?: NullableOption<string>;
1667 // The display name of the resource app's service principal to which the assignment is made. Does not support $filter.
1668 resourceDisplayName?: NullableOption<string>;
1669 /**
1670 * The unique identifier (id) for the resource service principal for which the assignment is made. Required on create.
1671 * Supports $filter (eq only).
1672 */
1673 resourceId?: NullableOption<string>;
1674}
1675export interface LicenseDetails extends Entity {
1676 // Information about the service plans assigned with the license. Read-only, Not nullable
1677 servicePlans?: ServicePlanInfo[];
1678 /**
1679 * Unique identifier (GUID) for the service SKU. Equal to the skuId property on the related SubscribedSku object.
1680 * Read-only
1681 */
1682 skuId?: NullableOption<string>;
1683 /**
1684 * Unique SKU display name. Equal to the skuPartNumber on the related SubscribedSku object; for example: 'AAD_Premium'.
1685 * Read-only
1686 */
1687 skuPartNumber?: NullableOption<string>;
1688}
1689export interface OAuth2PermissionGrant extends Entity {
1690 /**
1691 * The id of the client service principal for the application which is authorized to act on behalf of a signed-in user
1692 * when accessing an API. Required. Supports $filter (eq only).
1693 */
1694 clientId?: string;
1695 /**
1696 * Indicates if authorization is granted for the client application to impersonate all users or only a specific user.
1697 * AllPrincipals indicates authorization to impersonate all users. Principal indicates authorization to impersonate a
1698 * specific user. Consent on behalf of all users can be granted by an administrator. Non-admin users may be authorized to
1699 * consent on behalf of themselves in some cases, for some delegated permissions. Required. Supports $filter (eq only).
1700 */
1701 consentType?: NullableOption<string>;
1702 /**
1703 * The id of the user on behalf of whom the client is authorized to access the resource, when consentType is Principal. If
1704 * consentType is AllPrincipals this value is null. Required when consentType is Principal.
1705 */
1706 principalId?: NullableOption<string>;
1707 /**
1708 * The id of the resource service principal to which access is authorized. This identifies the API which the client is
1709 * authorized to attempt to call on behalf of a signed-in user.
1710 */
1711 resourceId?: string;
1712 /**
1713 * A space-separated list of the claim values for delegated permissions which should be included in access tokens for the
1714 * resource application (the API). For example, openid User.Read GroupMember.Read.All. Each claim value should match the
1715 * value field of one of the delegated permissions defined by the API, listed in the publishedPermissionScopes property of
1716 * the resource service principal.
1717 */
1718 scope?: NullableOption<string>;
1719}
1720export interface ScopedRoleMembership extends Entity {
1721 // Unique identifier for the administrative unit that the directory role is scoped to
1722 administrativeUnitId?: string;
1723 // Unique identifier for the directory role that the member is in.
1724 roleId?: string;
1725 // Role member identity information. Represents the user that is a member of this scoped-role.
1726 roleMemberInfo?: Identity;
1727}
1728export interface Calendar extends Entity {
1729 /**
1730 * Represent the online meeting service providers that can be used to create online meetings in this calendar. Possible
1731 * values are: unknown, skypeForBusiness, skypeForConsumer, teamsForBusiness.
1732 */
1733 allowedOnlineMeetingProviders?: NullableOption<OnlineMeetingProviderType[]>;
1734 /**
1735 * True if the user can write to the calendar, false otherwise. This property is true for the user who created the
1736 * calendar. This property is also true for a user who has been shared a calendar and granted write access, through an
1737 * Outlook client or the corresponding calendarPermission resource. Read-only.
1738 */
1739 canEdit?: NullableOption<boolean>;
1740 /**
1741 * True if the user has the permission to share the calendar, false otherwise. Only the user who created the calendar can
1742 * share it. Read-only.
1743 */
1744 canShare?: NullableOption<boolean>;
1745 /**
1746 * True if the user can read calendar items that have been marked private, false otherwise. This property is set through
1747 * an Outlook client or the corresponding calendarPermission resource. Read-only.
1748 */
1749 canViewPrivateItems?: NullableOption<boolean>;
1750 /**
1751 * Identifies the version of the calendar object. Every time the calendar is changed, changeKey changes as well. This
1752 * allows Exchange to apply changes to the correct version of the object. Read-only.
1753 */
1754 changeKey?: NullableOption<string>;
1755 /**
1756 * Specifies the color theme to distinguish the calendar from other calendars in a UI. The property values are:
1757 * LightBlue=0, LightGreen=1, LightOrange=2, LightGray=3, LightYellow=4, LightTeal=5, LightPink=6, LightBrown=7,
1758 * LightRed=8, MaxColor=9, Auto=-1
1759 */
1760 color?: NullableOption<CalendarColor>;
1761 /**
1762 * The default online meeting provider for meetings sent from this calendar. Possible values are: unknown,
1763 * skypeForBusiness, skypeForConsumer, teamsForBusiness.
1764 */
1765 defaultOnlineMeetingProvider?: NullableOption<OnlineMeetingProviderType>;
1766 /**
1767 * The calendar color, expressed in a hex color code of three hexidecimal values, each ranging from 00 to FF and
1768 * representing the red, green, or blue components of the color in the RGB color space. If the user has never explicitly
1769 * set a color for the calendar, this property is empty.
1770 */
1771 hexColor?: NullableOption<string>;
1772 // True if this is the default calendar where new events are created by default, false otherwise.
1773 isDefaultCalendar?: NullableOption<boolean>;
1774 // Indicates whether this user calendar can be deleted from the user mailbox.
1775 isRemovable?: NullableOption<boolean>;
1776 /**
1777 * Indicates whether this user calendar supports tracking of meeting responses. Only meeting invites sent from users'
1778 * primary calendars support tracking of meeting responses.
1779 */
1780 isTallyingResponses?: NullableOption<boolean>;
1781 // The calendar name.
1782 name?: NullableOption<string>;
1783 /**
1784 * If set, this represents the user who created or added the calendar. For a calendar that the user created or added, the
1785 * owner property is set to the user. For a calendar shared with the user, the owner property is set to the person who
1786 * shared that calendar with the user. Read-only.
1787 */
1788 owner?: NullableOption<EmailAddress>;
1789 // The permissions of the users with whom the calendar is shared.
1790 calendarPermissions?: NullableOption<CalendarPermission[]>;
1791 // The calendar view for the calendar. Navigation property. Read-only.
1792 calendarView?: NullableOption<Event[]>;
1793 // The events in the calendar. Navigation property. Read-only.
1794 events?: NullableOption<Event[]>;
1795 // The collection of multi-value extended properties defined for the calendar. Read-only. Nullable.
1796 multiValueExtendedProperties?: NullableOption<MultiValueLegacyExtendedProperty[]>;
1797 // The collection of single-value extended properties defined for the calendar. Read-only. Nullable.
1798 singleValueExtendedProperties?: NullableOption<SingleValueLegacyExtendedProperty[]>;
1799}
1800export interface CalendarGroup extends Entity {
1801 /**
1802 * Identifies the version of the calendar group. Every time the calendar group is changed, ChangeKey changes as well. This
1803 * allows Exchange to apply changes to the correct version of the object. Read-only.
1804 */
1805 changeKey?: NullableOption<string>;
1806 // The class identifier. Read-only.
1807 classId?: NullableOption<string>;
1808 // The group name.
1809 name?: NullableOption<string>;
1810 // The calendars in the calendar group. Navigation property. Read-only. Nullable.
1811 calendars?: NullableOption<Calendar[]>;
1812}
1813export interface OutlookItem extends Entity {
1814 // The categories associated with the item
1815 categories?: NullableOption<string[]>;
1816 /**
1817 * Identifies the version of the item. Every time the item is changed, changeKey changes as well. This allows Exchange to
1818 * apply changes to the correct version of the object. Read-only.
1819 */
1820 changeKey?: NullableOption<string>;
1821 /**
1822 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
1823 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
1824 */
1825 createdDateTime?: NullableOption<string>;
1826 /**
1827 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
1828 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
1829 */
1830 lastModifiedDateTime?: NullableOption<string>;
1831}
1832export interface Event extends OutlookItem {
1833 /**
1834 * True if the meeting organizer allows invitees to propose a new time when responding, false otherwise. Optional. Default
1835 * is true.
1836 */
1837 allowNewTimeProposals?: NullableOption<boolean>;
1838 // The collection of attendees for the event.
1839 attendees?: NullableOption<Attendee[]>;
1840 // The body of the message associated with the event. It can be in HTML or text format.
1841 body?: NullableOption<ItemBody>;
1842 // The preview of the message associated with the event. It is in text format.
1843 bodyPreview?: NullableOption<string>;
1844 // The date, time, and time zone that the event ends. By default, the end time is in UTC.
1845 end?: NullableOption<DateTimeTimeZone>;
1846 // Set to true if the event has attachments.
1847 hasAttachments?: NullableOption<boolean>;
1848 /**
1849 * When set to true, each attendee only sees themselves in the meeting request and meeting Tracking list. Default is
1850 * false.
1851 */
1852 hideAttendees?: NullableOption<boolean>;
1853 /**
1854 * A unique identifier for an event across calendars. This ID is different for each occurrence in a recurring series.
1855 * Read-only.
1856 */
1857 iCalUId?: NullableOption<string>;
1858 // The importance of the event. The possible values are: low, normal, high.
1859 importance?: NullableOption<Importance>;
1860 // Set to true if the event lasts all day.
1861 isAllDay?: NullableOption<boolean>;
1862 // Set to true if the event has been canceled.
1863 isCancelled?: NullableOption<boolean>;
1864 /**
1865 * Set to true if the user has updated the meeting in Outlook but has not sent the updates to attendees. Set to false if
1866 * all changes have been sent, or if the event is an appointment without any attendees.
1867 */
1868 isDraft?: NullableOption<boolean>;
1869 // True if this event has online meeting information, false otherwise. Default is false. Optional.
1870 isOnlineMeeting?: NullableOption<boolean>;
1871 /**
1872 * Set to true if the calendar owner (specified by the owner property of the calendar) is the organizer of the event
1873 * (specified by the organizer property of the event). This also applies if a delegate organized the event on behalf of
1874 * the owner.
1875 */
1876 isOrganizer?: NullableOption<boolean>;
1877 // Set to true if an alert is set to remind the user of the event.
1878 isReminderOn?: NullableOption<boolean>;
1879 // The location of the event.
1880 location?: NullableOption<Location>;
1881 /**
1882 * The locations where the event is held or attended from. The location and locations properties always correspond with
1883 * each other. If you update the location property, any prior locations in the locations collection would be removed and
1884 * replaced by the new location value.
1885 */
1886 locations?: NullableOption<Location[]>;
1887 // Details for an attendee to join the meeting online. Read-only.
1888 onlineMeeting?: NullableOption<OnlineMeetingInfo>;
1889 /**
1890 * Represents the online meeting service provider. The possible values are teamsForBusiness, skypeForBusiness, and
1891 * skypeForConsumer. Optional.
1892 */
1893 onlineMeetingProvider?: NullableOption<OnlineMeetingProviderType>;
1894 /**
1895 * A URL for an online meeting. The property is set only when an organizer specifies an event as an online meeting such as
1896 * a Skype meeting. Read-only.
1897 */
1898 onlineMeetingUrl?: NullableOption<string>;
1899 // The organizer of the event.
1900 organizer?: NullableOption<Recipient>;
1901 /**
1902 * The end time zone that was set when the event was created. A value of tzone://Microsoft/Custom indicates that a legacy
1903 * custom time zone was set in desktop Outlook.
1904 */
1905 originalEndTimeZone?: NullableOption<string>;
1906 /**
1907 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
1908 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
1909 */
1910 originalStart?: NullableOption<string>;
1911 /**
1912 * The start time zone that was set when the event was created. A value of tzone://Microsoft/Custom indicates that a
1913 * legacy custom time zone was set in desktop Outlook.
1914 */
1915 originalStartTimeZone?: NullableOption<string>;
1916 // The recurrence pattern for the event.
1917 recurrence?: NullableOption<PatternedRecurrence>;
1918 // The number of minutes before the event start time that the reminder alert occurs.
1919 reminderMinutesBeforeStart?: NullableOption<number>;
1920 // Default is true, which represents the organizer would like an invitee to send a response to the event.
1921 responseRequested?: NullableOption<boolean>;
1922 // Indicates the type of response sent in response to an event message.
1923 responseStatus?: NullableOption<ResponseStatus>;
1924 // The possible values are: normal, personal, private, confidential.
1925 sensitivity?: NullableOption<Sensitivity>;
1926 // The ID for the recurring series master item, if this event is part of a recurring series.
1927 seriesMasterId?: NullableOption<string>;
1928 // The status to show. The possible values are: free, tentative, busy, oof, workingElsewhere, unknown.
1929 showAs?: NullableOption<FreeBusyStatus>;
1930 // The date, time, and time zone that the event starts. By default, the start time is in UTC.
1931 start?: NullableOption<DateTimeTimeZone>;
1932 // The text of the event's subject line.
1933 subject?: NullableOption<string>;
1934 /**
1935 * A custom identifier specified by a client app for the server to avoid redundant POST operations in case of client
1936 * retries to create the same event. This is useful when low network connectivity causes the client to time out before
1937 * receiving a response from the server for the client's prior create-event request. After you set transactionId when
1938 * creating an event, you cannot change transactionId in a subsequent update. This property is only returned in a response
1939 * payload if an app has set it. Optional.
1940 */
1941 transactionId?: NullableOption<string>;
1942 // The event type. The possible values are: singleInstance, occurrence, exception, seriesMaster. Read-only.
1943 type?: NullableOption<EventType>;
1944 /**
1945 * The URL to open the event in Outlook on the web.Outlook on the web opens the event in the browser if you are signed in
1946 * to your mailbox. Otherwise, Outlook on the web prompts you to sign in.This URL cannot be accessed from within an
1947 * iFrame.
1948 */
1949 webLink?: NullableOption<string>;
1950 /**
1951 * The collection of FileAttachment, ItemAttachment, and referenceAttachment attachments for the event. Navigation
1952 * property. Read-only. Nullable.
1953 */
1954 attachments?: NullableOption<Attachment[]>;
1955 // The calendar that contains the event. Navigation property. Read-only.
1956 calendar?: NullableOption<Calendar>;
1957 // The collection of open extensions defined for the event. Nullable.
1958 extensions?: NullableOption<Extension[]>;
1959 /**
1960 * The occurrences of a recurring series, if the event is a series master. This property includes occurrences that are
1961 * part of the recurrence pattern, and exceptions that have been modified, but does not include occurrences that have been
1962 * cancelled from the series. Navigation property. Read-only. Nullable.
1963 */
1964 instances?: NullableOption<Event[]>;
1965 // The collection of multi-value extended properties defined for the event. Read-only. Nullable.
1966 multiValueExtendedProperties?: NullableOption<MultiValueLegacyExtendedProperty[]>;
1967 // The collection of single-value extended properties defined for the event. Read-only. Nullable.
1968 singleValueExtendedProperties?: NullableOption<SingleValueLegacyExtendedProperty[]>;
1969}
1970export interface ContactFolder extends Entity {
1971 // The folder's display name.
1972 displayName?: NullableOption<string>;
1973 // The ID of the folder's parent folder.
1974 parentFolderId?: NullableOption<string>;
1975 // The collection of child folders in the folder. Navigation property. Read-only. Nullable.
1976 childFolders?: NullableOption<ContactFolder[]>;
1977 // The contacts in the folder. Navigation property. Read-only. Nullable.
1978 contacts?: NullableOption<Contact[]>;
1979 // The collection of multi-value extended properties defined for the contactFolder. Read-only. Nullable.
1980 multiValueExtendedProperties?: NullableOption<MultiValueLegacyExtendedProperty[]>;
1981 // The collection of single-value extended properties defined for the contactFolder. Read-only. Nullable.
1982 singleValueExtendedProperties?: NullableOption<SingleValueLegacyExtendedProperty[]>;
1983}
1984export interface Contact extends OutlookItem {
1985 // The name of the contact's assistant.
1986 assistantName?: NullableOption<string>;
1987 /**
1988 * The contact's birthday. The Timestamp type represents date and time information using ISO 8601 format and is always in
1989 * UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
1990 */
1991 birthday?: NullableOption<string>;
1992 // The contact's business address.
1993 businessAddress?: NullableOption<PhysicalAddress>;
1994 // The business home page of the contact.
1995 businessHomePage?: NullableOption<string>;
1996 // The contact's business phone numbers.
1997 businessPhones?: NullableOption<string[]>;
1998 // The names of the contact's children.
1999 children?: NullableOption<string[]>;
2000 // The name of the contact's company.
2001 companyName?: NullableOption<string>;
2002 // The contact's department.
2003 department?: NullableOption<string>;
2004 /**
2005 * The contact's display name. You can specify the display name in a create or update operation. Note that later updates
2006 * to other properties may cause an automatically generated value to overwrite the displayName value you have specified.
2007 * To preserve a pre-existing value, always include it as displayName in an update operation.
2008 */
2009 displayName?: NullableOption<string>;
2010 // The contact's email addresses.
2011 emailAddresses?: NullableOption<EmailAddress[]>;
2012 // The name the contact is filed under.
2013 fileAs?: NullableOption<string>;
2014 // The contact's generation.
2015 generation?: NullableOption<string>;
2016 // The contact's given name.
2017 givenName?: NullableOption<string>;
2018 // The contact's home address.
2019 homeAddress?: NullableOption<PhysicalAddress>;
2020 // The contact's home phone numbers.
2021 homePhones?: NullableOption<string[]>;
2022 // The contact's instant messaging (IM) addresses.
2023 imAddresses?: NullableOption<string[]>;
2024 // The contact's initials.
2025 initials?: NullableOption<string>;
2026 // The contact’s job title.
2027 jobTitle?: NullableOption<string>;
2028 // The name of the contact's manager.
2029 manager?: NullableOption<string>;
2030 // The contact's middle name.
2031 middleName?: NullableOption<string>;
2032 // The contact's mobile phone number.
2033 mobilePhone?: NullableOption<string>;
2034 // The contact's nickname.
2035 nickName?: NullableOption<string>;
2036 // The location of the contact's office.
2037 officeLocation?: NullableOption<string>;
2038 // Other addresses for the contact.
2039 otherAddress?: NullableOption<PhysicalAddress>;
2040 // The ID of the contact's parent folder.
2041 parentFolderId?: NullableOption<string>;
2042 // The user's notes about the contact.
2043 personalNotes?: NullableOption<string>;
2044 // The contact's profession.
2045 profession?: NullableOption<string>;
2046 // The name of the contact's spouse/partner.
2047 spouseName?: NullableOption<string>;
2048 // The contact's surname.
2049 surname?: NullableOption<string>;
2050 // The contact's title.
2051 title?: NullableOption<string>;
2052 // The phonetic Japanese company name of the contact.
2053 yomiCompanyName?: NullableOption<string>;
2054 // The phonetic Japanese given name (first name) of the contact.
2055 yomiGivenName?: NullableOption<string>;
2056 // The phonetic Japanese surname (last name) of the contact.
2057 yomiSurname?: NullableOption<string>;
2058 // The collection of open extensions defined for the contact. Nullable.
2059 extensions?: NullableOption<Extension[]>;
2060 // The collection of multi-value extended properties defined for the contact. Read-only. Nullable.
2061 multiValueExtendedProperties?: NullableOption<MultiValueLegacyExtendedProperty[]>;
2062 // Optional contact picture. You can get or set a photo for a contact.
2063 photo?: NullableOption<ProfilePhoto>;
2064 // The collection of single-value extended properties defined for the contact. Read-only. Nullable.
2065 singleValueExtendedProperties?: NullableOption<SingleValueLegacyExtendedProperty[]>;
2066}
2067// tslint:disable-next-line: interface-name
2068export interface InferenceClassification extends Entity {
2069 /**
2070 * A set of overrides for a user to always classify messages from specific senders in certain ways: focused, or other.
2071 * Read-only. Nullable.
2072 */
2073 overrides?: NullableOption<InferenceClassificationOverride[]>;
2074}
2075export interface MailFolder extends Entity {
2076 // The number of immediate child mailFolders in the current mailFolder.
2077 childFolderCount?: NullableOption<number>;
2078 // The mailFolder's display name.
2079 displayName?: NullableOption<string>;
2080 // The unique identifier for the mailFolder's parent mailFolder.
2081 parentFolderId?: NullableOption<string>;
2082 // The number of items in the mailFolder.
2083 totalItemCount?: NullableOption<number>;
2084 // The number of items in the mailFolder marked as unread.
2085 unreadItemCount?: NullableOption<number>;
2086 // The collection of child folders in the mailFolder.
2087 childFolders?: NullableOption<MailFolder[]>;
2088 // The collection of rules that apply to the user's Inbox folder.
2089 messageRules?: NullableOption<MessageRule[]>;
2090 // The collection of messages in the mailFolder.
2091 messages?: NullableOption<Message[]>;
2092 // The collection of multi-value extended properties defined for the mailFolder. Read-only. Nullable.
2093 multiValueExtendedProperties?: NullableOption<MultiValueLegacyExtendedProperty[]>;
2094 // The collection of single-value extended properties defined for the mailFolder. Read-only. Nullable.
2095 singleValueExtendedProperties?: NullableOption<SingleValueLegacyExtendedProperty[]>;
2096}
2097export interface Message extends OutlookItem {
2098 // The Bcc: recipients for the message.
2099 bccRecipients?: NullableOption<Recipient[]>;
2100 // The body of the message. It can be in HTML or text format. Find out about safe HTML in a message body.
2101 body?: NullableOption<ItemBody>;
2102 /**
2103 * The first 255 characters of the message body. It is in text format. If the message contains instances of mention, this
2104 * property would contain a concatenation of these mentions as well.
2105 */
2106 bodyPreview?: NullableOption<string>;
2107 // The Cc: recipients for the message.
2108 ccRecipients?: NullableOption<Recipient[]>;
2109 // The ID of the conversation the email belongs to.
2110 conversationId?: NullableOption<string>;
2111 // Indicates the position of the message within the conversation.
2112 conversationIndex?: NullableOption<number>;
2113 // The flag value that indicates the status, start date, due date, or completion date for the message.
2114 flag?: NullableOption<FollowupFlag>;
2115 /**
2116 * The owner of the mailbox from which the message is sent. In most cases, this value is the same as the sender property,
2117 * except for sharing or delegation scenarios. The value must correspond to the actual mailbox used. Find out more about
2118 * setting the from and sender properties of a message.
2119 */
2120 from?: NullableOption<Recipient>;
2121 /**
2122 * Indicates whether the message has attachments. This property doesn't include inline attachments, so if a message
2123 * contains only inline attachments, this property is false. To verify the existence of inline attachments, parse the body
2124 * property to look for a src attribute, such as &amp;lt;IMG src='cid:image001.jpg@01D26CD8.6C05F070'&amp;gt;.
2125 */
2126 hasAttachments?: NullableOption<boolean>;
2127 // The importance of the message: Low, Normal, High.
2128 importance?: NullableOption<Importance>;
2129 /**
2130 * The classification of the message for the user, based on inferred relevance or importance, or on an explicit override.
2131 * The possible values are: focused or other.
2132 */
2133 inferenceClassification?: NullableOption<InferenceClassificationType>;
2134 /**
2135 * A collection of message headers defined by RFC5322. The set includes message headers indicating the network path taken
2136 * by a message from the sender to the recipient. It can also contain custom message headers that hold app data for the
2137 * message. Returned only on applying a $select query option. Read-only.
2138 */
2139 internetMessageHeaders?: NullableOption<InternetMessageHeader[]>;
2140 // The message ID in the format specified by RFC2822.
2141 internetMessageId?: NullableOption<string>;
2142 // Indicates whether a read receipt is requested for the message.
2143 isDeliveryReceiptRequested?: NullableOption<boolean>;
2144 // Indicates whether the message is a draft. A message is a draft if it hasn't been sent yet.
2145 isDraft?: NullableOption<boolean>;
2146 // Indicates whether the message has been read.
2147 isRead?: NullableOption<boolean>;
2148 // Indicates whether a read receipt is requested for the message.
2149 isReadReceiptRequested?: NullableOption<boolean>;
2150 // The unique identifier for the message's parent mailFolder.
2151 parentFolderId?: NullableOption<string>;
2152 /**
2153 * The date and time the message was received. The date and time information uses ISO 8601 format and is always in UTC
2154 * time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
2155 */
2156 receivedDateTime?: NullableOption<string>;
2157 // The email addresses to use when replying.
2158 replyTo?: NullableOption<Recipient[]>;
2159 /**
2160 * The account that is actually used to generate the message. In most cases, this value is the same as the from property.
2161 * You can set this property to a different value when sending a message from a shared mailbox, for a shared calendar, or
2162 * as a delegate. In any case, the value must correspond to the actual mailbox used. Find out more about setting the from
2163 * and sender properties of a message.
2164 */
2165 sender?: NullableOption<Recipient>;
2166 /**
2167 * The date and time the message was sent. The date and time information uses ISO 8601 format and is always in UTC time.
2168 * For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
2169 */
2170 sentDateTime?: NullableOption<string>;
2171 // The subject of the message.
2172 subject?: NullableOption<string>;
2173 // The To: recipients for the message.
2174 toRecipients?: NullableOption<Recipient[]>;
2175 /**
2176 * The part of the body of the message that is unique to the current message. uniqueBody is not returned by default but
2177 * can be retrieved for a given message by use of the ?$select=uniqueBody query. It can be in HTML or text format.
2178 */
2179 uniqueBody?: NullableOption<ItemBody>;
2180 /**
2181 * The URL to open the message in Outlook on the web.You can append an ispopout argument to the end of the URL to change
2182 * how the message is displayed. If ispopout is not present or if it is set to 1, then the message is shown in a popout
2183 * window. If ispopout is set to 0, then the browser will show the message in the Outlook on the web review pane.The
2184 * message will open in the browser if you are logged in to your mailbox via Outlook on the web. You will be prompted to
2185 * login if you are not already logged in with the browser.This URL cannot be accessed from within an iFrame.
2186 */
2187 webLink?: NullableOption<string>;
2188 // The fileAttachment and itemAttachment attachments for the message.
2189 attachments?: NullableOption<Attachment[]>;
2190 // The collection of open extensions defined for the message. Nullable.
2191 extensions?: NullableOption<Extension[]>;
2192 // The collection of multi-value extended properties defined for the message. Nullable.
2193 multiValueExtendedProperties?: NullableOption<MultiValueLegacyExtendedProperty[]>;
2194 // The collection of single-value extended properties defined for the message. Nullable.
2195 singleValueExtendedProperties?: NullableOption<SingleValueLegacyExtendedProperty[]>;
2196}
2197export interface OutlookUser extends Entity {
2198 // A list of categories defined for the user.
2199 masterCategories?: NullableOption<OutlookCategory[]>;
2200}
2201export interface Person extends Entity {
2202 // The person's birthday.
2203 birthday?: NullableOption<string>;
2204 // The name of the person's company.
2205 companyName?: NullableOption<string>;
2206 // The person's department.
2207 department?: NullableOption<string>;
2208 // The person's display name.
2209 displayName?: NullableOption<string>;
2210 // The person's given name.
2211 givenName?: NullableOption<string>;
2212 // The instant message voice over IP (VOIP) session initiation protocol (SIP) address for the user. Read-only.
2213 imAddress?: NullableOption<string>;
2214 // true if the user has flagged this person as a favorite.
2215 isFavorite?: NullableOption<boolean>;
2216 // The person's job title.
2217 jobTitle?: NullableOption<string>;
2218 // The location of the person's office.
2219 officeLocation?: NullableOption<string>;
2220 // Free-form notes that the user has taken about this person.
2221 personNotes?: NullableOption<string>;
2222 // The type of person, for example distribution list.
2223 personType?: NullableOption<PersonType>;
2224 // The person's phone numbers.
2225 phones?: NullableOption<Phone[]>;
2226 // The person's addresses.
2227 postalAddresses?: NullableOption<Location[]>;
2228 // The person's profession.
2229 profession?: NullableOption<string>;
2230 // The person's email addresses.
2231 scoredEmailAddresses?: NullableOption<ScoredEmailAddress[]>;
2232 // The person's surname.
2233 surname?: NullableOption<string>;
2234 /**
2235 * The user principal name (UPN) of the person. The UPN is an Internet-style login name for the person based on the
2236 * Internet standard RFC 822. By convention, this should map to the person's email name. The general format is
2237 * alias@domain.
2238 */
2239 userPrincipalName?: NullableOption<string>;
2240 // The person's websites.
2241 websites?: NullableOption<Website[]>;
2242 // The phonetic Japanese name of the person's company.
2243 yomiCompany?: NullableOption<string>;
2244}
2245export interface ProfilePhoto extends Entity {
2246 // The height of the photo. Read-only.
2247 height?: NullableOption<number>;
2248 // The width of the photo. Read-only.
2249 width?: NullableOption<number>;
2250}
2251export interface BaseItem extends Entity {
2252 // Identity of the user, device, or application which created the item. Read-only.
2253 createdBy?: NullableOption<IdentitySet>;
2254 // Date and time of item creation. Read-only.
2255 createdDateTime?: string;
2256 // Provides a user-visible description of the item. Optional.
2257 description?: NullableOption<string>;
2258 // ETag for the item. Read-only.
2259 eTag?: NullableOption<string>;
2260 // Identity of the user, device, and application which last modified the item. Read-only.
2261 lastModifiedBy?: NullableOption<IdentitySet>;
2262 // Date and time the item was last modified. Read-only.
2263 lastModifiedDateTime?: string;
2264 // The name of the item. Read-write.
2265 name?: NullableOption<string>;
2266 // Parent information, if the item has a parent. Read-write.
2267 parentReference?: NullableOption<ItemReference>;
2268 // URL that displays the resource in the browser. Read-only.
2269 webUrl?: NullableOption<string>;
2270 // Identity of the user who created the item. Read-only.
2271 createdByUser?: NullableOption<User>;
2272 // Identity of the user who last modified the item. Read-only.
2273 lastModifiedByUser?: NullableOption<User>;
2274}
2275export interface Drive extends BaseItem {
2276 /**
2277 * Describes the type of drive represented by this resource. OneDrive personal drives will return personal. OneDrive for
2278 * Business will return business. SharePoint document libraries will return documentLibrary. Read-only.
2279 */
2280 driveType?: NullableOption<string>;
2281 // Optional. The user account that owns the drive. Read-only.
2282 owner?: NullableOption<IdentitySet>;
2283 // Optional. Information about the drive's storage space quota. Read-only.
2284 quota?: NullableOption<Quota>;
2285 sharePointIds?: NullableOption<SharepointIds>;
2286 // If present, indicates that this is a system-managed drive. Read-only.
2287 system?: NullableOption<SystemFacet>;
2288 // The list of items the user is following. Only in OneDrive for Business.
2289 following?: NullableOption<DriveItem[]>;
2290 // All items contained in the drive. Read-only. Nullable.
2291 items?: NullableOption<DriveItem[]>;
2292 // For drives in SharePoint, the underlying document library list. Read-only. Nullable.
2293 list?: NullableOption<List>;
2294 // The root folder of the drive. Read-only.
2295 root?: NullableOption<DriveItem>;
2296 // Collection of common folders available in OneDrive. Read-only. Nullable.
2297 special?: NullableOption<DriveItem[]>;
2298}
2299export interface Site extends BaseItem {
2300 // The full title for the site. Read-only.
2301 displayName?: NullableOption<string>;
2302 error?: NullableOption<PublicError>;
2303 // If present, indicates that this is the root site in the site collection. Read-only.
2304 root?: NullableOption<Root>;
2305 // Returns identifiers useful for SharePoint REST compatibility. Read-only.
2306 sharepointIds?: NullableOption<SharepointIds>;
2307 // Provides details about the site's site collection. Available only on the root site. Read-only.
2308 siteCollection?: NullableOption<SiteCollection>;
2309 // Analytics about the view activities that took place in this site.
2310 analytics?: NullableOption<ItemAnalytics>;
2311 // The collection of column definitions reusable across lists under this site.
2312 columns?: NullableOption<ColumnDefinition[]>;
2313 // The collection of content types defined for this site.
2314 contentTypes?: NullableOption<ContentType[]>;
2315 // The default drive (document library) for this site.
2316 drive?: NullableOption<Drive>;
2317 // The collection of drives (document libraries) under this site.
2318 drives?: NullableOption<Drive[]>;
2319 // Used to address any item contained in this site. This collection cannot be enumerated.
2320 items?: NullableOption<BaseItem[]>;
2321 // The collection of lists under this site.
2322 lists?: NullableOption<List[]>;
2323 // The permissions associated with the site. Nullable.
2324 permissions?: NullableOption<Permission[]>;
2325 // The collection of the sub-sites under this site.
2326 sites?: NullableOption<Site[]>;
2327 // Calls the OneNote service for notebook related operations.
2328 onenote?: NullableOption<Onenote>;
2329}
2330// tslint:disable-next-line: no-empty-interface
2331export interface Extension extends Entity {}
2332export interface ManagedDevice extends Entity {
2333 // Code that allows the Activation Lock on a device to be bypassed. This property is read-only.
2334 activationLockBypassCode?: NullableOption<string>;
2335 // Android security patch level. This property is read-only.
2336 androidSecurityPatchLevel?: NullableOption<string>;
2337 // The unique identifier for the Azure Active Directory device. Read only. This property is read-only.
2338 azureADDeviceId?: NullableOption<string>;
2339 // Whether the device is Azure Active Directory registered. This property is read-only.
2340 azureADRegistered?: NullableOption<boolean>;
2341 // The DateTime when device compliance grace period expires. This property is read-only.
2342 complianceGracePeriodExpirationDateTime?: string;
2343 /**
2344 * Compliance state of the device. This property is read-only. Possible values are: unknown, compliant, noncompliant,
2345 * conflict, error, inGracePeriod, configManager.
2346 */
2347 complianceState?: ComplianceState;
2348 // ConfigrMgr client enabled features. This property is read-only.
2349 configurationManagerClientEnabledFeatures?: NullableOption<ConfigurationManagerClientEnabledFeatures>;
2350 // List of ComplexType deviceActionResult objects. This property is read-only.
2351 deviceActionResults?: NullableOption<DeviceActionResult[]>;
2352 // Device category display name. This property is read-only.
2353 deviceCategoryDisplayName?: NullableOption<string>;
2354 /**
2355 * Enrollment type of the device. This property is read-only. Possible values are: unknown, userEnrollment,
2356 * deviceEnrollmentManager, appleBulkWithUser, appleBulkWithoutUser, windowsAzureADJoin, windowsBulkUserless,
2357 * windowsAutoEnrollment, windowsBulkAzureDomainJoin, windowsCoManagement, appleUserEnrollment,
2358 * appleUserEnrollmentWithServiceAccount, azureAdJoinUsingAzureVmExtension, androidEnterpriseDedicatedDevice,
2359 * androidEnterpriseFullyManaged, androidEnterpriseCorporateWorkProfile.
2360 */
2361 deviceEnrollmentType?: DeviceEnrollmentType;
2362 // The device health attestation state. This property is read-only.
2363 deviceHealthAttestationState?: NullableOption<DeviceHealthAttestationState>;
2364 // Name of the device. This property is read-only.
2365 deviceName?: NullableOption<string>;
2366 /**
2367 * Device registration state. This property is read-only. Possible values are: notRegistered, registered, revoked,
2368 * keyConflict, approvalPending, certificateReset, notRegisteredPendingEnrollment, unknown.
2369 */
2370 deviceRegistrationState?: DeviceRegistrationState;
2371 // Whether the device is Exchange ActiveSync activated. This property is read-only.
2372 easActivated?: boolean;
2373 // Exchange ActivationSync activation time of the device. This property is read-only.
2374 easActivationDateTime?: string;
2375 // Exchange ActiveSync Id of the device. This property is read-only.
2376 easDeviceId?: NullableOption<string>;
2377 // Email(s) for the user associated with the device. This property is read-only.
2378 emailAddress?: NullableOption<string>;
2379 // Enrollment time of the device. This property is read-only.
2380 enrolledDateTime?: string;
2381 /**
2382 * The Access State of the device in Exchange. This property is read-only. Possible values are: none, unknown, allowed,
2383 * blocked, quarantined.
2384 */
2385 exchangeAccessState?: DeviceManagementExchangeAccessState;
2386 /**
2387 * The reason for the device's access state in Exchange. This property is read-only. Possible values are: none, unknown,
2388 * exchangeGlobalRule, exchangeIndividualRule, exchangeDeviceRule, exchangeUpgrade, exchangeMailboxPolicy, other,
2389 * compliant, notCompliant, notEnrolled, unknownLocation, mfaRequired, azureADBlockDueToAccessPolicy, compromisedPassword,
2390 * deviceNotKnownWithManagedApp.
2391 */
2392 exchangeAccessStateReason?: DeviceManagementExchangeAccessStateReason;
2393 // Last time the device contacted Exchange. This property is read-only.
2394 exchangeLastSuccessfulSyncDateTime?: string;
2395 // Free Storage in Bytes. This property is read-only.
2396 freeStorageSpaceInBytes?: number;
2397 // IMEI. This property is read-only.
2398 imei?: NullableOption<string>;
2399 // Device encryption status. This property is read-only.
2400 isEncrypted?: boolean;
2401 // Device supervised status. This property is read-only.
2402 isSupervised?: boolean;
2403 // whether the device is jail broken or rooted. This property is read-only.
2404 jailBroken?: NullableOption<string>;
2405 // The date and time that the device last completed a successful sync with Intune. This property is read-only.
2406 lastSyncDateTime?: string;
2407 // Automatically generated name to identify a device. Can be overwritten to a user friendly name.
2408 managedDeviceName?: NullableOption<string>;
2409 // Ownership of the device. Can be 'company' or 'personal'. Possible values are: unknown, company, personal.
2410 managedDeviceOwnerType?: ManagedDeviceOwnerType;
2411 /**
2412 * Management channel of the device. Intune, EAS, etc. This property is read-only. Possible values are: eas, mdm, easMdm,
2413 * intuneClient, easIntuneClient, configurationManagerClient, configurationManagerClientMdm,
2414 * configurationManagerClientMdmEas, unknown, jamf, googleCloudDevicePolicyController, microsoft365ManagedMdm.
2415 */
2416 managementAgent?: ManagementAgentType;
2417 // Manufacturer of the device. This property is read-only.
2418 manufacturer?: NullableOption<string>;
2419 // MEID. This property is read-only.
2420 meid?: NullableOption<string>;
2421 // Model of the device. This property is read-only.
2422 model?: NullableOption<string>;
2423 // Operating system of the device. Windows, iOS, etc. This property is read-only.
2424 operatingSystem?: NullableOption<string>;
2425 // Operating system version of the device. This property is read-only.
2426 osVersion?: NullableOption<string>;
2427 /**
2428 * Indicates the threat state of a device when a Mobile Threat Defense partner is in use by the account and device. Read
2429 * Only. This property is read-only. Possible values are: unknown, activated, deactivated, secured, lowSeverity,
2430 * mediumSeverity, highSeverity, unresponsive, compromised, misconfigured.
2431 */
2432 partnerReportedThreatState?: ManagedDevicePartnerReportedHealthState;
2433 // Phone number of the device. This property is read-only.
2434 phoneNumber?: NullableOption<string>;
2435 // An error string that identifies issues when creating Remote Assistance session objects. This property is read-only.
2436 remoteAssistanceSessionErrorDetails?: NullableOption<string>;
2437 // Url that allows a Remote Assistance session to be established with the device. This property is read-only.
2438 remoteAssistanceSessionUrl?: NullableOption<string>;
2439 // SerialNumber. This property is read-only.
2440 serialNumber?: NullableOption<string>;
2441 // Subscriber Carrier. This property is read-only.
2442 subscriberCarrier?: NullableOption<string>;
2443 // Total Storage in Bytes. This property is read-only.
2444 totalStorageSpaceInBytes?: number;
2445 // User display name. This property is read-only.
2446 userDisplayName?: NullableOption<string>;
2447 // Unique Identifier for the user associated with the device. This property is read-only.
2448 userId?: NullableOption<string>;
2449 // Device user principal name. This property is read-only.
2450 userPrincipalName?: NullableOption<string>;
2451 // Wi-Fi MAC. This property is read-only.
2452 wiFiMacAddress?: NullableOption<string>;
2453 // Device compliance policy states for this device.
2454 deviceCompliancePolicyStates?: NullableOption<DeviceCompliancePolicyState[]>;
2455 // Device configuration states for this device.
2456 deviceConfigurationStates?: NullableOption<DeviceConfigurationState[]>;
2457 // Device category
2458 deviceCategory?: NullableOption<DeviceCategory>;
2459}
2460export interface ManagedAppRegistration extends Entity {
2461 // The app package Identifier
2462 appIdentifier?: NullableOption<MobileAppIdentifier>;
2463 // App version
2464 applicationVersion?: NullableOption<string>;
2465 // Date and time of creation
2466 createdDateTime?: string;
2467 // Host device name
2468 deviceName?: NullableOption<string>;
2469 /**
2470 * App management SDK generated tag, which helps relate apps hosted on the same device. Not guaranteed to relate apps in
2471 * all conditions.
2472 */
2473 deviceTag?: NullableOption<string>;
2474 // Host device type
2475 deviceType?: NullableOption<string>;
2476 // Zero or more reasons an app registration is flagged. E.g. app running on rooted device
2477 flaggedReasons?: ManagedAppFlaggedReason[];
2478 // Date and time of last the app synced with management service.
2479 lastSyncDateTime?: string;
2480 // App management SDK version
2481 managementSdkVersion?: NullableOption<string>;
2482 // Operating System version
2483 platformVersion?: NullableOption<string>;
2484 // The user Id to who this app registration belongs.
2485 userId?: NullableOption<string>;
2486 // Version of the entity.
2487 version?: NullableOption<string>;
2488 // Zero or more policys already applied on the registered app when it last synchronized with managment service.
2489 appliedPolicies?: NullableOption<ManagedAppPolicy[]>;
2490 // Zero or more policies admin intended for the app as of now.
2491 intendedPolicies?: NullableOption<ManagedAppPolicy[]>;
2492 // Zero or more long running operations triggered on the app registration.
2493 operations?: NullableOption<ManagedAppOperation[]>;
2494}
2495export interface DeviceManagementTroubleshootingEvent extends Entity {
2496 // Id used for tracing the failure in the service.
2497 correlationId?: NullableOption<string>;
2498 // Time when the event occurred .
2499 eventDateTime?: string;
2500}
2501export interface PlannerUser extends Entity {
2502 // Read-only. Nullable. Returns the plannerTasks assigned to the user.
2503 plans?: NullableOption<PlannerPlan[]>;
2504 // Read-only. Nullable. Returns the plannerTasks assigned to the user.
2505 tasks?: NullableOption<PlannerTask[]>;
2506}
2507export interface OfficeGraphInsights extends Entity {
2508 // Access this property from the derived type itemInsights.
2509 shared?: NullableOption<SharedInsight[]>;
2510 // Access this property from the derived type itemInsights.
2511 trending?: NullableOption<Trending[]>;
2512 // Access this property from the derived type itemInsights.
2513 used?: NullableOption<UsedInsight[]>;
2514}
2515export interface UserSettings extends Entity {
2516 /**
2517 * Reflects the organization level setting controlling delegate access to the trending API. When set to true, the
2518 * organization doesn't have access to Office Delve. The relevancy of the content displayed in Microsoft 365, for example
2519 * in Suggested sites in SharePoint Home and the Discover view in OneDrive for Business is affected for the whole
2520 * organization. This setting is read-only and can only be changed by administrators in the SharePoint admin center.
2521 */
2522 contributionToContentDiscoveryAsOrganizationDisabled?: boolean;
2523 /**
2524 * When set to true, the delegate access to the user's trending API is disabled. When set to true, documents in the user's
2525 * Office Delve are disabled. When set to true, the relevancy of the content displayed in Microsoft 365, for example in
2526 * Suggested sites in SharePoint Home and the Discover view in OneDrive for Business is affected. Users can control this
2527 * setting in Office Delve.
2528 */
2529 contributionToContentDiscoveryDisabled?: boolean;
2530 // The shift preferences for the user.
2531 shiftPreferences?: NullableOption<ShiftPreferences>;
2532}
2533export interface Onenote extends Entity {
2534 // The collection of OneNote notebooks that are owned by the user or group. Read-only. Nullable.
2535 notebooks?: NullableOption<Notebook[]>;
2536 /**
2537 * The status of OneNote operations. Getting an operations collection is not supported, but you can get the status of
2538 * long-running operations if the Operation-Location header is returned in the response. Read-only. Nullable.
2539 */
2540 operations?: NullableOption<OnenoteOperation[]>;
2541 // The pages in all OneNote notebooks that are owned by the user or group. Read-only. Nullable.
2542 pages?: NullableOption<OnenotePage[]>;
2543 /**
2544 * The image and other file resources in OneNote pages. Getting a resources collection is not supported, but you can get
2545 * the binary content of a specific resource. Read-only. Nullable.
2546 */
2547 resources?: NullableOption<OnenoteResource[]>;
2548 // The section groups in all OneNote notebooks that are owned by the user or group. Read-only. Nullable.
2549 sectionGroups?: NullableOption<SectionGroup[]>;
2550 // The sections in all OneNote notebooks that are owned by the user or group. Read-only. Nullable.
2551 sections?: NullableOption<OnenoteSection[]>;
2552}
2553export interface UserActivity extends Entity {
2554 /**
2555 * Required. URL used to launch the activity in the best native experience represented by the appId. Might launch a
2556 * web-based app if no native app exists.
2557 */
2558 activationUrl?: string;
2559 /**
2560 * Required. URL for the domain representing the cross-platform identity mapping for the app. Mapping is stored either as
2561 * a JSON file hosted on the domain or configurable via Windows Dev Center. The JSON file is named
2562 * cross-platform-app-identifiers and is hosted at root of your HTTPS domain, either at the top level domain or include a
2563 * sub domain. For example: https://contoso.com or https://myapp.contoso.com but NOT https://myapp.contoso.com/somepath.
2564 * You must have a unique file and domain (or sub domain) per cross-platform app identity. For example, a separate file
2565 * and domain is needed for Word vs. PowerPoint.
2566 */
2567 activitySourceHost?: string;
2568 // Required. The unique activity ID in the context of the app - supplied by caller and immutable thereafter.
2569 appActivityId?: string;
2570 /**
2571 * Optional. Short text description of the app used to generate the activity for use in cases when the app is not
2572 * installed on the user’s local device.
2573 */
2574 appDisplayName?: NullableOption<string>;
2575 // Optional. A custom piece of data - JSON-LD extensible description of content according to schema.org syntax.
2576 contentInfo?: NullableOption<any>;
2577 /**
2578 * Optional. Used in the event the content can be rendered outside of a native or web-based app experience (for example, a
2579 * pointer to an item in an RSS feed).
2580 */
2581 contentUrl?: NullableOption<string>;
2582 // Set by the server. DateTime in UTC when the object was created on the server.
2583 createdDateTime?: NullableOption<string>;
2584 // Set by the server. DateTime in UTC when the object expired on the server.
2585 expirationDateTime?: NullableOption<string>;
2586 // Optional. URL used to launch the activity in a web-based app, if available.
2587 fallbackUrl?: NullableOption<string>;
2588 // Set by the server. DateTime in UTC when the object was modified on the server.
2589 lastModifiedDateTime?: NullableOption<string>;
2590 // Set by the server. A status code used to identify valid objects. Values: active, updated, deleted, ignored.
2591 status?: NullableOption<Status>;
2592 /**
2593 * Optional. The timezone in which the user's device used to generate the activity was located at activity creation time;
2594 * values supplied as Olson IDs in order to support cross-platform representation.
2595 */
2596 userTimezone?: NullableOption<string>;
2597 // Required. The object containing information to render the activity in the UX.
2598 visualElements?: VisualInfo;
2599 // Optional. NavigationProperty/Containment; navigation property to the activity's historyItems.
2600 historyItems?: NullableOption<ActivityHistoryItem[]>;
2601}
2602export interface OnlineMeeting extends Entity {
2603 /**
2604 * Specifies who can be a presenter in a meeting. Possible values are everyone, organization, roleIsPresenter, organizer,
2605 * and unknownFutureValue.
2606 */
2607 allowedPresenters?: NullableOption<OnlineMeetingPresenters>;
2608 // The phone access (dial-in) information for an online meeting. Read-only.
2609 audioConferencing?: NullableOption<AudioConferencing>;
2610 // The chat information associated with this online meeting.
2611 chatInfo?: NullableOption<ChatInfo>;
2612 // The meeting creation time in UTC. Read-only.
2613 creationDateTime?: NullableOption<string>;
2614 // The meeting end time in UTC.
2615 endDateTime?: NullableOption<string>;
2616 // The external ID. A custom ID. Optional.
2617 externalId?: NullableOption<string>;
2618 // Whether or not to announce when callers join or leave.
2619 isEntryExitAnnounced?: NullableOption<boolean>;
2620 // The join information in the language and locale variant specified in 'Accept-Language' request HTTP header. Read-only
2621 joinInformation?: NullableOption<ItemBody>;
2622 // The join URL of the online meeting. Read-only.
2623 joinWebUrl?: NullableOption<string>;
2624 // Specifies which participants can bypass the meeting lobby.
2625 lobbyBypassSettings?: NullableOption<LobbyBypassSettings>;
2626 // The participants associated with the online meeting. This includes the organizer and the attendees.
2627 participants?: NullableOption<MeetingParticipants>;
2628 // The meeting start time in UTC.
2629 startDateTime?: NullableOption<string>;
2630 // The subject of the online meeting.
2631 subject?: NullableOption<string>;
2632 // The video teleconferencing ID. Read-only.
2633 videoTeleconferenceId?: NullableOption<string>;
2634}
2635export interface Presence extends Entity {
2636 /**
2637 * The supplemental information to a user's availability. Possible values are Available, Away, BeRightBack, Busy,
2638 * DoNotDisturb, InACall, InAConferenceCall, Inactive,InAMeeting, Offline, OffWork,OutOfOffice,
2639 * PresenceUnknown,Presenting, UrgentInterruptionsOnly.
2640 */
2641 activity?: NullableOption<string>;
2642 /**
2643 * The base presence information for a user. Possible values are Available, AvailableIdle, Away, BeRightBack, Busy,
2644 * BusyIdle, DoNotDisturb, Offline, PresenceUnknown
2645 */
2646 availability?: NullableOption<string>;
2647}
2648export interface Authentication extends Entity {
2649 fido2Methods?: NullableOption<Fido2AuthenticationMethod[]>;
2650 methods?: NullableOption<AuthenticationMethod[]>;
2651 microsoftAuthenticatorMethods?: NullableOption<MicrosoftAuthenticatorAuthenticationMethod[]>;
2652 windowsHelloForBusinessMethods?: NullableOption<WindowsHelloForBusinessAuthenticationMethod[]>;
2653}
2654export interface Team extends Entity {
2655 /**
2656 * An optional label. Typically describes the data or business sensitivity of the team. Must match one of a pre-configured
2657 * set in the tenant's directory.
2658 */
2659 classification?: NullableOption<string>;
2660 // An optional description for the team.
2661 description?: NullableOption<string>;
2662 // The name of the team.
2663 displayName?: NullableOption<string>;
2664 // Settings to configure use of Giphy, memes, and stickers in the team.
2665 funSettings?: NullableOption<TeamFunSettings>;
2666 // Settings to configure whether guests can create, update, or delete channels in the team.
2667 guestSettings?: NullableOption<TeamGuestSettings>;
2668 // A unique ID for the team that has been used in a few places such as the audit log/Office 365 Management Activity API.
2669 internalId?: NullableOption<string>;
2670 // Whether this team is in read-only mode.
2671 isArchived?: NullableOption<boolean>;
2672 /**
2673 * Settings to configure whether members can perform certain actions, for example, create channels and add bots, in the
2674 * team.
2675 */
2676 memberSettings?: NullableOption<TeamMemberSettings>;
2677 // Settings to configure messaging and mentions in the team.
2678 messagingSettings?: NullableOption<TeamMessagingSettings>;
2679 /**
2680 * Optional. Indicates whether the team is intended for a particular use case. Each team specialization has access to
2681 * unique behaviors and experiences targeted to its use case.
2682 */
2683 specialization?: NullableOption<TeamSpecialization>;
2684 // The visibility of the group and team. Defaults to Public.
2685 visibility?: NullableOption<TeamVisibilityType>;
2686 /**
2687 * A hyperlink that will go to the team in the Microsoft Teams client. This is the URL that you get when you right-click a
2688 * team in the Microsoft Teams client and select Get link to team. This URL should be treated as an opaque blob, and not
2689 * parsed.
2690 */
2691 webUrl?: NullableOption<string>;
2692 // The schedule of shifts for this team.
2693 schedule?: NullableOption<Schedule>;
2694 // The collection of channels &amp; messages associated with the team.
2695 channels?: NullableOption<Channel[]>;
2696 group?: NullableOption<Group>;
2697 // The apps installed in this team.
2698 installedApps?: NullableOption<TeamsAppInstallation[]>;
2699 // Members and owners of the team.
2700 members?: NullableOption<ConversationMember[]>;
2701 // The async operations that ran or are running on this team.
2702 operations?: NullableOption<TeamsAsyncOperation[]>;
2703 // The general channel for the team.
2704 primaryChannel?: NullableOption<Channel>;
2705 // The template this team was created from. See available templates.
2706 template?: NullableOption<TeamsTemplate>;
2707}
2708export interface UserTeamwork extends Entity {
2709 // The apps installed in the personal scope of this user.
2710 installedApps?: NullableOption<UserScopeTeamsAppInstallation[]>;
2711}
2712export interface Todo extends Entity {
2713 // The task lists in the users mailbox.
2714 lists?: NullableOption<TodoTaskList[]>;
2715}
2716export interface Application extends DirectoryObject {
2717 /**
2718 * Defines custom behavior that a consuming service can use to call an app in specific contexts. For example, applications
2719 * that can render file streams may set the addIns property for its 'FileHandler' functionality. This will let services
2720 * like Office 365 call the application in the context of a document the user is working on.
2721 */
2722 addIns?: AddIn[];
2723 // Specifies settings for an application that implements a web API.
2724 api?: NullableOption<ApiApplication>;
2725 // The unique identifier for the application that is assigned by Azure AD. Not nullable. Read-only.
2726 appId?: NullableOption<string>;
2727 applicationTemplateId?: NullableOption<string>;
2728 /**
2729 * The collection of roles assigned to the application. With app role assignments, these roles can be assigned to users,
2730 * groups, or service principals associated with other applications. Not nullable.
2731 */
2732 appRoles?: AppRole[];
2733 // The date and time the application was registered. Read-only.
2734 createdDateTime?: NullableOption<string>;
2735 description?: NullableOption<string>;
2736 // The display name for the application.
2737 displayName?: NullableOption<string>;
2738 /**
2739 * Configures the groups claim issued in a user or OAuth 2.0 access token that the application expects. To set this
2740 * attribute, use one of the following string values:NoneSecurityGroup: For security groups and Azure AD rolesAll: This
2741 * gets all of the security groups, distribution groups, and Azure AD directory roles that the signed-in user is a member
2742 * of.
2743 */
2744 groupMembershipClaims?: NullableOption<string>;
2745 /**
2746 * The URIs that identify the application within its Azure AD tenant, or within a verified custom domain if the
2747 * application is multi-tenant. For more information, see Application Objects and Service Principal Objects. The any
2748 * operator is required for filter expressions on multi-valued properties. Not nullable.
2749 */
2750 identifierUris?: string[];
2751 /**
2752 * Basic profile information of the application, such as it's marketing, support, terms of service, and privacy statement
2753 * URLs. The terms of service and privacy statement are surfaced to users through the user consent experience. For more
2754 * information, see How to: Add Terms of service and privacy statement for registered Azure AD apps.
2755 */
2756 info?: NullableOption<InformationalUrl>;
2757 isDeviceOnlyAuthSupported?: NullableOption<boolean>;
2758 /**
2759 * Specifies the fallback application type as public client, such as an installed application running on a mobile device.
2760 * The default value is false which means the fallback application type is confidential client such as a web app. There
2761 * are certain scenarios where Azure AD cannot determine the client application type. For example, the ROPC flow where the
2762 * application is configured without specifying a redirect URI. In those cases Azure AD interprets the application type
2763 * based on the value of this property.
2764 */
2765 isFallbackPublicClient?: NullableOption<boolean>;
2766 // The collection of key credentials associated with the application. Not nullable.
2767 keyCredentials?: KeyCredential[];
2768 // The main logo for the application. Not nullable.
2769 logo?: any;
2770 notes?: NullableOption<string>;
2771 oauth2RequirePostResponse?: boolean;
2772 /**
2773 * Application developers can configure optional claims in their Azure AD applications to specify the claims that are sent
2774 * to their application by the Microsoft security token service. For more information, see How to: Provide optional claims
2775 * to your app.
2776 */
2777 optionalClaims?: NullableOption<OptionalClaims>;
2778 // Specifies parental control settings for an application.
2779 parentalControlSettings?: NullableOption<ParentalControlSettings>;
2780 // The collection of password credentials associated with the application. Not nullable.
2781 passwordCredentials?: PasswordCredential[];
2782 // Specifies settings for installed clients such as desktop or mobile devices.
2783 publicClient?: NullableOption<PublicClientApplication>;
2784 // The verified publisher domain for the application. Read-only.
2785 publisherDomain?: NullableOption<string>;
2786 /**
2787 * Specifies the resources that the application needs to access. This property also specifies the set of OAuth permission
2788 * scopes and application roles that it needs for each of those resources. This configuration of access to the required
2789 * resources drives the consent experience. Not nullable.
2790 */
2791 requiredResourceAccess?: RequiredResourceAccess[];
2792 /**
2793 * Specifies the Microsoft accounts that are supported for the current application. Supported values are:AzureADMyOrg:
2794 * Users with a Microsoft work or school account in my organization’s Azure AD tenant (single-tenant).AzureADMultipleOrgs:
2795 * Users with a Microsoft work or school account in any organization’s Azure AD tenant
2796 * (multi-tenant).AzureADandPersonalMicrosoftAccount: Users with a personal Microsoft account, or a work or school account
2797 * in any organization’s Azure AD tenant.PersonalMicrosoftAccount: Users with a personal Microsoft account only.
2798 */
2799 signInAudience?: NullableOption<string>;
2800 /**
2801 * Specifies settings for a single-page application, including sign out URLs and redirect URIs for authorization codes and
2802 * access tokens.
2803 */
2804 spa?: NullableOption<SpaApplication>;
2805 // Custom strings that can be used to categorize and identify the application. Not nullable.
2806 tags?: string[];
2807 /**
2808 * Specifies the keyId of a public key from the keyCredentials collection. When configured, Azure AD encrypts all the
2809 * tokens it emits by using the key this property points to. The application code that receives the encrypted token must
2810 * use the matching private key to decrypt the token before it can be used for the signed-in user.
2811 */
2812 tokenEncryptionKeyId?: NullableOption<string>;
2813 // Specifies settings for a web application.
2814 web?: NullableOption<WebApplication>;
2815 // Read-only.
2816 createdOnBehalfOf?: NullableOption<DirectoryObject>;
2817 // Read-only. Nullable.
2818 extensionProperties?: NullableOption<ExtensionProperty[]>;
2819 homeRealmDiscoveryPolicies?: NullableOption<HomeRealmDiscoveryPolicy[]>;
2820 // Directory objects that are owners of the application. Read-only. Nullable.
2821 owners?: NullableOption<DirectoryObject[]>;
2822 tokenIssuancePolicies?: NullableOption<TokenIssuancePolicy[]>;
2823 // The tokenLifetimePolicies assigned to this application.
2824 tokenLifetimePolicies?: NullableOption<TokenLifetimePolicy[]>;
2825}
2826export interface ServicePrincipal extends DirectoryObject {
2827 // true if the service principal account is enabled; otherwise, false.
2828 accountEnabled?: NullableOption<boolean>;
2829 /**
2830 * Defines custom behavior that a consuming service can use to call an app in specific contexts. For example, applications
2831 * that can render file streams may set the addIns property for its 'FileHandler' functionality. This will let services
2832 * like Microsoft 365 call the application in the context of a document the user is working on.
2833 */
2834 addIns?: AddIn[];
2835 /**
2836 * Used to retrieve service principals by subscription, identify resource group and full resource ids for managed
2837 * identities.
2838 */
2839 alternativeNames?: string[];
2840 appDescription?: NullableOption<string>;
2841 // The display name exposed by the associated application.
2842 appDisplayName?: NullableOption<string>;
2843 // The unique identifier for the associated application (its appId property).
2844 appId?: NullableOption<string>;
2845 // Unique identifier of the applicationTemplate that the servicePrincipal was created from. Read-only.
2846 applicationTemplateId?: NullableOption<string>;
2847 /**
2848 * Contains the tenant id where the application is registered. This is applicable only to service principals backed by
2849 * applications.
2850 */
2851 appOwnerOrganizationId?: NullableOption<string>;
2852 /**
2853 * Specifies whether users or other service principals need to be granted an app role assignment for this service
2854 * principal before users can sign in or apps can get tokens. The default value is false. Not nullable.
2855 */
2856 appRoleAssignmentRequired?: boolean;
2857 /**
2858 * The roles exposed by the application which this service principal represents. For more information see the appRoles
2859 * property definition on the application entity. Not nullable.
2860 */
2861 appRoles?: AppRole[];
2862 description?: NullableOption<string>;
2863 // The display name for the service principal.
2864 displayName?: NullableOption<string>;
2865 // Home page or landing page of the application.
2866 homepage?: NullableOption<string>;
2867 /**
2868 * Basic profile information of the acquired application such as app's marketing, support, terms of service and privacy
2869 * statement URLs. The terms of service and privacy statement are surfaced to users through the user consent experience.
2870 * For more info, see How to: Add Terms of service and privacy statement for registered Azure AD apps.
2871 */
2872 info?: NullableOption<InformationalUrl>;
2873 // The collection of key credentials associated with the service principal. Not nullable.
2874 keyCredentials?: KeyCredential[];
2875 /**
2876 * Specifies the URL where the service provider redirects the user to Azure AD to authenticate. Azure AD uses the URL to
2877 * launch the application from Microsoft 365 or the Azure AD My Apps. When blank, Azure AD performs IdP-initiated sign-on
2878 * for applications configured with SAML-based single sign-on. The user launches the application from Microsoft 365, the
2879 * Azure AD My Apps, or the Azure AD SSO URL.
2880 */
2881 loginUrl?: NullableOption<string>;
2882 /**
2883 * Specifies the URL that will be used by Microsoft's authorization service to logout an user using OpenId Connect
2884 * front-channel, back-channel or SAML logout protocols.
2885 */
2886 logoutUrl?: NullableOption<string>;
2887 notes?: NullableOption<string>;
2888 /**
2889 * Specifies the list of email addresses where Azure AD sends a notification when the active certificate is near the
2890 * expiration date. This is only for the certificates used to sign the SAML token issued for Azure AD Gallery
2891 * applications.
2892 */
2893 notificationEmailAddresses?: string[];
2894 /**
2895 * The delegated permissions exposed by the application. For more information see the oauth2PermissionScopes property on
2896 * the application entity's api property. Not nullable.
2897 */
2898 oauth2PermissionScopes?: PermissionScope[];
2899 // The collection of password credentials associated with the service principal. Not nullable.
2900 passwordCredentials?: PasswordCredential[];
2901 /**
2902 * Specifies the single sign-on mode configured for this application. Azure AD uses the preferred single sign-on mode to
2903 * launch the application from Microsoft 365 or the Azure AD My Apps. The supported values are password, saml,
2904 * notSupported, and oidc.
2905 */
2906 preferredSingleSignOnMode?: NullableOption<string>;
2907 // Reserved for internal use only. Do not write or otherwise rely on this property. May be removed in future versions.
2908 preferredTokenSigningKeyThumbprint?: NullableOption<string>;
2909 /**
2910 * The URLs that user tokens are sent to for sign in with the associated application, or the redirect URIs that OAuth 2.0
2911 * authorization codes and access tokens are sent to for the associated application. Not nullable.
2912 */
2913 replyUrls?: string[];
2914 // The collection for settings related to saml single sign-on.
2915 samlSingleSignOnSettings?: NullableOption<SamlSingleSignOnSettings>;
2916 /**
2917 * Contains the list of identifiersUris, copied over from the associated application. Additional values can be added to
2918 * hybrid applications. These values can be used to identify the permissions exposed by this app within Azure AD. For
2919 * example,Client apps can specify a resource URI which is based on the values of this property to acquire an access
2920 * token, which is the URI returned in the 'aud' claim.The any operator is required for filter expressions on multi-valued
2921 * properties. Not nullable.
2922 */
2923 servicePrincipalNames?: string[];
2924 /**
2925 * Identifies if the service principal represents an application or a managed identity. This is set by Azure AD
2926 * internally. For a service principal that represents an application this is set as Application. For a service principal
2927 * that represent a managed identity this is set as ManagedIdentity.
2928 */
2929 servicePrincipalType?: NullableOption<string>;
2930 // Specifies what Microsoft accounts are supported for the associated application. Read-only.
2931 signInAudience?: NullableOption<string>;
2932 // Custom strings that can be used to categorize and identify the service principal. Not nullable.
2933 tags?: string[];
2934 /**
2935 * Specifies the keyId of a public key from the keyCredentials collection. When configured, Azure AD issues tokens for
2936 * this application encrypted using the key specified by this property. The application code that receives the encrypted
2937 * token must use the matching private key to decrypt the token before it can be used for the signed-in user.
2938 */
2939 tokenEncryptionKeyId?: NullableOption<string>;
2940 // Principals (users, groups, and service principals) that are assigned to this service principal. Read-only.
2941 appRoleAssignedTo?: NullableOption<AppRoleAssignment[]>;
2942 // Applications that this service principal is assigned to. Read-only. Nullable.
2943 appRoleAssignments?: NullableOption<AppRoleAssignment[]>;
2944 // The claimsMappingPolicies assigned to this service principal.
2945 claimsMappingPolicies?: NullableOption<ClaimsMappingPolicy[]>;
2946 // Directory objects created by this service principal. Read-only. Nullable.
2947 createdObjects?: NullableOption<DirectoryObject[]>;
2948 // The permission classifications for delegated permissions exposed by the app that this service principal represents.
2949 delegatedPermissionClassifications?: NullableOption<DelegatedPermissionClassification[]>;
2950 /**
2951 * Endpoints available for discovery. Services like Sharepoint populate this property with a tenant specific SharePoint
2952 * endpoints that other applications can discover and use in their experiences.
2953 */
2954 endpoints?: NullableOption<Endpoint[]>;
2955 // The homeRealmDiscoveryPolicies assigned to this service principal.
2956 homeRealmDiscoveryPolicies?: NullableOption<HomeRealmDiscoveryPolicy[]>;
2957 // Roles that this service principal is a member of. HTTP Methods: GET Read-only. Nullable.
2958 memberOf?: NullableOption<DirectoryObject[]>;
2959 /**
2960 * Delegated permission grants authorizing this service principal to access an API on behalf of a signed-in user.
2961 * Read-only. Nullable.
2962 */
2963 oauth2PermissionGrants?: NullableOption<OAuth2PermissionGrant[]>;
2964 // Directory objects that are owned by this service principal. Read-only. Nullable.
2965 ownedObjects?: NullableOption<DirectoryObject[]>;
2966 /**
2967 * Directory objects that are owners of this servicePrincipal. The owners are a set of non-admin users or
2968 * servicePrincipals who are allowed to modify this object. Read-only. Nullable.
2969 */
2970 owners?: NullableOption<DirectoryObject[]>;
2971 // The tokenIssuancePolicies assigned to this service principal.
2972 tokenIssuancePolicies?: NullableOption<TokenIssuancePolicy[]>;
2973 // The tokenLifetimePolicies assigned to this service principal.
2974 tokenLifetimePolicies?: NullableOption<TokenLifetimePolicy[]>;
2975 transitiveMemberOf?: NullableOption<DirectoryObject[]>;
2976}
2977export interface ExtensionProperty extends DirectoryObject {
2978 // Display name of the application object on which this extension property is defined. Read-only.
2979 appDisplayName?: NullableOption<string>;
2980 /**
2981 * Specifies the data type of the value the extension property can hold. Following values are supported. Not nullable.
2982 * Binary - 256 bytes maximumBooleanDateTime - Must be specified in ISO 8601 format. Will be stored in UTC.Integer -
2983 * 32-bit value.LargeInteger - 64-bit value.String - 256 characters maximum
2984 */
2985 dataType?: string;
2986 // Indicates if this extension property was sycned from onpremises directory using Azure AD Connect. Read-only.
2987 isSyncedFromOnPremises?: NullableOption<boolean>;
2988 // Name of the extension property. Not nullable.
2989 name?: string;
2990 // Following values are supported. Not nullable. UserGroupOrganizationDeviceApplication
2991 targetObjects?: string[];
2992}
2993export interface PolicyBase extends DirectoryObject {
2994 // Description for this policy.
2995 description?: NullableOption<string>;
2996 // Display name for this policy.
2997 displayName?: NullableOption<string>;
2998}
2999export interface StsPolicy extends PolicyBase {
3000 /**
3001 * A string collection containing a JSON string that defines the rules and settings for a policy. The syntax for the
3002 * definition differs for each derived policy type. Required.
3003 */
3004 definition?: string[];
3005 /**
3006 * If set to true, activates this policy. There can be many policies for the same policy type, but only one can be
3007 * activated as the organization default. Optional, default value is false.
3008 */
3009 isOrganizationDefault?: NullableOption<boolean>;
3010 appliesTo?: NullableOption<DirectoryObject[]>;
3011}
3012// tslint:disable-next-line: no-empty-interface
3013export interface HomeRealmDiscoveryPolicy extends StsPolicy {}
3014// tslint:disable-next-line: no-empty-interface
3015export interface TokenIssuancePolicy extends StsPolicy {}
3016// tslint:disable-next-line: no-empty-interface
3017export interface TokenLifetimePolicy extends StsPolicy {}
3018export interface ApplicationTemplate extends Entity {
3019 /**
3020 * The list of categories for the application. Supported values can be: Collaboration, Business Management,
3021 * Consumer,Content management, CRM, Data services, Developer services, E-commerce, Education, ERP, Finance, Health, Human
3022 * resources, IT infrastructure, Mail, Management, Marketing, Media, Productivity, Project management, Telecommunications,
3023 * Tools, Travel, and Web design &amp; hosting.
3024 */
3025 categories?: NullableOption<string[]>;
3026 // A description of the application.
3027 description?: NullableOption<string>;
3028 // The name of the application.
3029 displayName?: NullableOption<string>;
3030 // The home page URL of the application.
3031 homePageUrl?: NullableOption<string>;
3032 // The URL to get the logo for this application.
3033 logoUrl?: NullableOption<string>;
3034 // The name of the publisher for this application.
3035 publisher?: NullableOption<string>;
3036 // The list of provisioning modes supported by this application. The only valid value is sync.
3037 supportedProvisioningTypes?: NullableOption<string[]>;
3038 /**
3039 * The list of single sign-on modes supported by this application. The supported values are password, saml, external, and
3040 * oidc.
3041 */
3042 supportedSingleSignOnModes?: NullableOption<string[]>;
3043}
3044// tslint:disable-next-line: no-empty-interface
3045export interface ClaimsMappingPolicy extends StsPolicy {}
3046export interface DelegatedPermissionClassification extends Entity {
3047 // The classification value being given. Possible value: low. Does not support $filter.
3048 classification?: NullableOption<PermissionClassificationType>;
3049 /**
3050 * The unique identifier (id) for the delegated permission listed in the publishedPermissionScopes collection of the
3051 * servicePrincipal. Required on create. Does not support $filter.
3052 */
3053 permissionId?: NullableOption<string>;
3054 /**
3055 * The claim value (value) for the delegated permission listed in the publishedPermissionScopes collection of the
3056 * servicePrincipal. Does not support $filter.
3057 */
3058 permissionName?: NullableOption<string>;
3059}
3060export interface Endpoint extends DirectoryObject {
3061 /**
3062 * Describes the capability that is associated with this resource. (e.g. Messages, Conversations, etc.) Not nullable.
3063 * Read-only.
3064 */
3065 capability?: string;
3066 // Application id of the publishing underlying service. Not nullable. Read-only.
3067 providerId?: NullableOption<string>;
3068 // Name of the publishing underlying service. Read-only.
3069 providerName?: NullableOption<string>;
3070 /**
3071 * For Microsoft 365 groups, this is set to a well-known name for the resource (e.g. Yammer.FeedURL etc.). Not nullable.
3072 * Read-only.
3073 */
3074 providerResourceId?: NullableOption<string>;
3075 // URL of the published resource. Not nullable. Read-only.
3076 uri?: string;
3077}
3078export interface AuthenticationMethodConfiguration extends Entity {
3079 // The state of the policy. Possible values are: enabled, disabled.
3080 state?: NullableOption<AuthenticationMethodState>;
3081}
3082export interface AuthenticationMethodsPolicy extends Entity {
3083 description?: NullableOption<string>;
3084 displayName?: NullableOption<string>;
3085 lastModifiedDateTime?: NullableOption<string>;
3086 policyVersion?: NullableOption<string>;
3087 reconfirmationInDays?: NullableOption<number>;
3088 authenticationMethodConfigurations?: NullableOption<AuthenticationMethodConfiguration[]>;
3089}
3090export interface AuthenticationMethodTarget extends Entity {
3091 // Determines if the user is enforced to register the authentication method.
3092 isRegistrationRequired?: boolean;
3093 // Possible values are: user, group.
3094 targetType?: AuthenticationMethodTargetType;
3095}
3096export interface EmailAuthenticationMethodConfiguration extends AuthenticationMethodConfiguration {
3097 /**
3098 * Determines whether email OTP is usable by external users for authentication. Possible values are: default, enabled,
3099 * disabled, unknownFutureValue. Tenants in the default state who did not use public preview will automatically have email
3100 * OTP enabled beginning in March 2021.
3101 */
3102 allowExternalIdToUseEmailOtp?: NullableOption<ExternalEmailOtpState>;
3103 // A collection of users or groups who are enabled to use the authentication method.
3104 includeTargets?: NullableOption<AuthenticationMethodTarget[]>;
3105}
3106export interface Fido2AuthenticationMethodConfiguration extends AuthenticationMethodConfiguration {
3107 // Determines whether attestation must be enforced for FIDO2 security key registration.
3108 isAttestationEnforced?: NullableOption<boolean>;
3109 // Determines if users can register new FIDO2 security keys.
3110 isSelfServiceRegistrationAllowed?: NullableOption<boolean>;
3111 /**
3112 * Controls whether key restrictions are enforced on FIDO2 security keys, either allowing or disallowing certain key types
3113 * as defined by Authenticator Attestation GUID (AAGUID), an identifier that indicates the type (e.g. make and model) of
3114 * the authenticator.
3115 */
3116 keyRestrictions?: NullableOption<Fido2KeyRestrictions>;
3117 // A collection of users or groups who are enabled to use the authentication method.
3118 includeTargets?: NullableOption<AuthenticationMethodTarget[]>;
3119}
3120export interface MicrosoftAuthenticatorAuthenticationMethodConfiguration extends AuthenticationMethodConfiguration {
3121 // A collection of users or groups who are enabled to use the authentication method.
3122 includeTargets?: NullableOption<MicrosoftAuthenticatorAuthenticationMethodTarget[]>;
3123}
3124export interface MicrosoftAuthenticatorAuthenticationMethodTarget extends AuthenticationMethodTarget {
3125 authenticationMode?: MicrosoftAuthenticatorAuthenticationMode;
3126 featureSettings?: NullableOption<AuthenticatorAppFeatureSettings>;
3127}
3128export interface PolicyRoot extends Entity {
3129 authenticationMethodsPolicy?: NullableOption<AuthenticationMethodsPolicy>;
3130 activityBasedTimeoutPolicies?: NullableOption<ActivityBasedTimeoutPolicy[]>;
3131 authorizationPolicy?: NullableOption<AuthorizationPolicy>;
3132 claimsMappingPolicies?: NullableOption<ClaimsMappingPolicy[]>;
3133 homeRealmDiscoveryPolicies?: NullableOption<HomeRealmDiscoveryPolicy[]>;
3134 permissionGrantPolicies?: NullableOption<PermissionGrantPolicy[]>;
3135 tokenIssuancePolicies?: NullableOption<TokenIssuancePolicy[]>;
3136 tokenLifetimePolicies?: NullableOption<TokenLifetimePolicy[]>;
3137 conditionalAccessPolicies?: NullableOption<ConditionalAccessPolicy[]>;
3138 identitySecurityDefaultsEnforcementPolicy?: NullableOption<IdentitySecurityDefaultsEnforcementPolicy>;
3139}
3140// tslint:disable-next-line: no-empty-interface
3141export interface ActivityBasedTimeoutPolicy extends StsPolicy {}
3142export interface AuthorizationPolicy extends PolicyBase {
3143 // Indicates whether users can sign up for email based subscriptions.
3144 allowedToSignUpEmailBasedSubscriptions?: boolean;
3145 // Indicates whether the Self-Serve Password Reset feature can be used by users on the tenant.
3146 allowedToUseSSPR?: boolean;
3147 // Indicates whether a user can join the tenant by email validation.
3148 allowEmailVerifiedUsersToJoinOrganization?: boolean;
3149 /**
3150 * Indicates who can invite external users to the organization. Possible values are:none - Prevent everyone, including
3151 * admins, from inviting external users. Default setting for US Government.adminsAndGuestInviters - Allow members of
3152 * Global Administrators, User Administrators, and Guest Inviter roles to invite external
3153 * users.adminsGuestInvitersAndAllMembers - Allow the above admin roles and all other User role members to invite external
3154 * users.everyone - Allow everyone in the organization, including guest users, to invite external users. Default setting
3155 * for all cloud environments except US Government.
3156 */
3157 allowInvitesFrom?: NullableOption<AllowInvitesFrom>;
3158 /**
3159 * To disable the use of MSOL PowerShell set this property to true. Setting to true will also disable user-based access to
3160 * the legacy service endpoint used by MSOL PowerShell. This does not affect Azure AD Connect or Microsoft Graph.
3161 */
3162 blockMsolPowerShell?: NullableOption<boolean>;
3163 // Specifies certain customizable permissions for default user role.
3164 defaultUserRolePermissions?: DefaultUserRolePermissions;
3165}
3166export interface PermissionGrantPolicy extends PolicyBase {
3167 // Condition sets which are excluded in this permission grant policy. Automatically expanded on GET.
3168 excludes?: NullableOption<PermissionGrantConditionSet[]>;
3169 // Condition sets which are included in this permission grant policy. Automatically expanded on GET.
3170 includes?: NullableOption<PermissionGrantConditionSet[]>;
3171}
3172export interface ConditionalAccessPolicy extends Entity {
3173 // Specifies the rules that must be met for the policy to apply. Required.
3174 conditions?: ConditionalAccessConditionSet;
3175 /**
3176 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
3177 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Readonly.
3178 */
3179 createdDateTime?: NullableOption<string>;
3180 // Not used.
3181 description?: NullableOption<string>;
3182 // Specifies a display name for the conditionalAccessPolicy object.
3183 displayName?: string;
3184 // Specifies the grant controls that must be fulfilled to pass the policy.
3185 grantControls?: NullableOption<ConditionalAccessGrantControls>;
3186 /**
3187 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
3188 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Readonly.
3189 */
3190 modifiedDateTime?: NullableOption<string>;
3191 // Specifies the session controls that are enforced after sign-in.
3192 sessionControls?: NullableOption<ConditionalAccessSessionControls>;
3193 /**
3194 * Specifies the state of the conditionalAccessPolicy object. Possible values are: enabled, disabled,
3195 * enabledForReportingButNotEnforced. Required.
3196 */
3197 state?: ConditionalAccessPolicyState;
3198}
3199// tslint:disable-next-line: interface-name
3200export interface IdentitySecurityDefaultsEnforcementPolicy extends PolicyBase {
3201 // If set to true, Azure Active Directory security defaults is enabled for the tenant.
3202 isEnabled?: boolean;
3203}
3204// tslint:disable-next-line: interface-name
3205export interface IdentityContainer extends Entity {
3206 conditionalAccess?: NullableOption<ConditionalAccessRoot>;
3207}
3208export interface ConditionalAccessRoot extends Entity {
3209 namedLocations?: NullableOption<NamedLocation[]>;
3210 policies?: NullableOption<ConditionalAccessPolicy[]>;
3211}
3212// tslint:disable-next-line: interface-name
3213export interface IdentityProvider extends Entity {
3214 /**
3215 * The client ID for the application obtained when registering the application with the identity provider. This is a
3216 * required field.
3217 */
3218 clientId?: NullableOption<string>;
3219 /**
3220 * The client secret for the application obtained when registering the application with the identity provider. This is
3221 * write-only. A read operation will return '****'. This is a required field.
3222 */
3223 clientSecret?: NullableOption<string>;
3224 // The display name of the identity provider.
3225 name?: NullableOption<string>;
3226 /**
3227 * The identity provider type is a required field.For B2B scenario:GoogleFacebookFor B2C
3228 * scenario:MicrosoftGoogleAmazonLinkedInFacebookGitHubTwitterWeiboQQWeChatOpenIDConnect
3229 */
3230 type?: NullableOption<string>;
3231}
3232export interface AdministrativeUnit extends DirectoryObject {
3233 // An optional description for the administrative unit.
3234 description?: NullableOption<string>;
3235 // Display name for the administrative unit.
3236 displayName?: NullableOption<string>;
3237 /**
3238 * Controls whether the adminstrative unit and its members are hidden or public. Can be set to HiddenMembership or Public.
3239 * If not set, default behavior is Public. When set to HiddenMembership, only members of the administrative unit can list
3240 * other members of the adminstrative unit.
3241 */
3242 visibility?: NullableOption<string>;
3243 /**
3244 * Users and groups that are members of this Adminsitrative Unit. HTTP Methods: GET (list members), POST (add members),
3245 * DELETE (remove members).
3246 */
3247 members?: NullableOption<DirectoryObject[]>;
3248 /**
3249 * Scoped-role members of this Administrative Unit. HTTP Methods: GET (list scopedRoleMemberships), POST (add
3250 * scopedRoleMembership), DELETE (remove scopedRoleMembership).
3251 */
3252 scopedRoleMembers?: NullableOption<ScopedRoleMembership[]>;
3253 // The collection of open extensions defined for this Administrative Unit. Nullable.
3254 extensions?: NullableOption<Extension[]>;
3255}
3256export interface CertificateBasedAuthConfiguration extends Entity {
3257 // Collection of certificate authorities which creates a trusted certificate chain.
3258 certificateAuthorities?: CertificateAuthority[];
3259}
3260export interface Contract extends DirectoryObject {
3261 /**
3262 * Type of contract.Possible values are: SyndicationPartner - Partner that exclusively resells and manages O365 and Intune
3263 * for this customer. They resell and support their customers. BreadthPartner - Partner has the ability to provide
3264 * administrative support for this customer. However, the partner is not allowed to resell to the customer.ResellerPartner
3265 * - Partner that is similar to a syndication partner, except that the partner doesn’t have exclusive access to a tenant.
3266 * In the syndication case, the customer cannot buy additional direct subscriptions from Microsoft or from other partners.
3267 */
3268 contractType?: NullableOption<string>;
3269 /**
3270 * The unique identifier for the customer tenant referenced by this partnership. Corresponds to the id property of the
3271 * customer tenant's organization resource.
3272 */
3273 customerId?: NullableOption<string>;
3274 /**
3275 * A copy of the customer tenant's default domain name. The copy is made when the partnership with the customer is
3276 * established. It is not automatically updated if the customer tenant's default domain name changes.
3277 */
3278 defaultDomainName?: NullableOption<string>;
3279 /**
3280 * A copy of the customer tenant's display name. The copy is made when the partnership with the customer is established.
3281 * It is not automatically updated if the customer tenant's display name changes.
3282 */
3283 displayName?: NullableOption<string>;
3284}
3285export interface Device extends DirectoryObject {
3286 // true if the account is enabled; otherwise, false. default is true.
3287 accountEnabled?: NullableOption<boolean>;
3288 // For internal use only. Not nullable.
3289 alternativeSecurityIds?: AlternativeSecurityId[];
3290 /**
3291 * The timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
3292 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Read-only.
3293 */
3294 approximateLastSignInDateTime?: NullableOption<string>;
3295 /**
3296 * The timestamp when the device is no longer deemed compliant. The timestamp type represents date and time information
3297 * using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
3298 * '2014-01-01T00:00:00Z'. Read-only.
3299 */
3300 complianceExpirationDateTime?: NullableOption<string>;
3301 // Unique identifier set by Azure Device Registration Service at the time of registration.
3302 deviceId?: NullableOption<string>;
3303 // For internal use only. Set to null.
3304 deviceMetadata?: NullableOption<string>;
3305 // For internal use only.
3306 deviceVersion?: NullableOption<number>;
3307 // The display name for the device. Required.
3308 displayName?: NullableOption<string>;
3309 /**
3310 * true if the device complies with Mobile Device Management (MDM) policies; otherwise, false. Read-only. This can only be
3311 * updated by Intune for any device OS type or by an approved MDM app for Windows OS devices.
3312 */
3313 isCompliant?: NullableOption<boolean>;
3314 /**
3315 * true if the device is managed by a Mobile Device Management (MDM) app; otherwise, false. This can only be updated by
3316 * Intune for any device OS type or by an approved MDM app for Windows OS devices.
3317 */
3318 isManaged?: NullableOption<boolean>;
3319 // Application identifier used to register device into MDM. Read-only. Supports $filter.
3320 mdmAppId?: NullableOption<string>;
3321 /**
3322 * The last time at which the object was synced with the on-premises directory. The Timestamp type represents date and
3323 * time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look
3324 * like this: '2014-01-01T00:00:00Z' Read-only.
3325 */
3326 onPremisesLastSyncDateTime?: NullableOption<string>;
3327 /**
3328 * true if this object is synced from an on-premises directory; false if this object was originally synced from an
3329 * on-premises directory but is no longer synced; null if this object has never been synced from an on-premises directory
3330 * (default). Read-only.
3331 */
3332 onPremisesSyncEnabled?: NullableOption<boolean>;
3333 // The type of operating system on the device. Required.
3334 operatingSystem?: NullableOption<string>;
3335 // Operating system version of the device. Required.
3336 operatingSystemVersion?: NullableOption<string>;
3337 // For internal use only. Not nullable.
3338 physicalIds?: string[];
3339 // The profile type of the device. Possible values:RegisteredDevice (default)SecureVMPrinterSharedIoT
3340 profileType?: NullableOption<string>;
3341 // List of labels applied to the device by the system.
3342 systemLabels?: string[];
3343 /**
3344 * Type of trust for the joined device. Read-only. Possible values: Workplace - indicates bring your own personal
3345 * devicesAzureAd - Cloud only joined devicesServerAd - on-premises domain joined devices joined to Azure AD. For more
3346 * details, see Introduction to device management in Azure Active Directory
3347 */
3348 trustType?: NullableOption<string>;
3349 // Groups that this group is a member of. HTTP Methods: GET (supported for all groups). Read-only. Nullable.
3350 memberOf?: NullableOption<DirectoryObject[]>;
3351 /**
3352 * The user that cloud joined the device or registered their personal device. The registered owner is set at the time of
3353 * registration. Currently, there can be only one owner. Read-only. Nullable.
3354 */
3355 registeredOwners?: NullableOption<DirectoryObject[]>;
3356 /**
3357 * Collection of registered users of the device. For cloud joined devices and registered personal devices, registered
3358 * users are set to the same value as registered owners at the time of registration. Read-only. Nullable.
3359 */
3360 registeredUsers?: NullableOption<DirectoryObject[]>;
3361 transitiveMemberOf?: NullableOption<DirectoryObject[]>;
3362 // The collection of open extensions defined for the device. Read-only. Nullable.
3363 extensions?: NullableOption<Extension[]>;
3364}
3365export interface Directory extends Entity {
3366 administrativeUnits?: NullableOption<AdministrativeUnit[]>;
3367 // Recently deleted items. Read-only. Nullable.
3368 deletedItems?: NullableOption<DirectoryObject[]>;
3369}
3370export interface DirectoryObjectPartnerReference extends DirectoryObject {
3371 // Description of the object returned. Read-only.
3372 description?: NullableOption<string>;
3373 // Name of directory object being returned, like group or application. Read-only.
3374 displayName?: NullableOption<string>;
3375 // The tenant identifier for the partner tenant. Read-only.
3376 externalPartnerTenantId?: NullableOption<string>;
3377 // The type of the referenced object in the partner tenant. Read-only.
3378 objectType?: NullableOption<string>;
3379}
3380export interface DirectoryRole extends DirectoryObject {
3381 // The description for the directory role. Read-only.
3382 description?: NullableOption<string>;
3383 // The display name for the directory role. Read-only.
3384 displayName?: NullableOption<string>;
3385 /**
3386 * The id of the directoryRoleTemplate that this role is based on. The property must be specified when activating a
3387 * directory role in a tenant with a POST operation. After the directory role has been activated, the property is read
3388 * only.
3389 */
3390 roleTemplateId?: NullableOption<string>;
3391 // Users that are members of this directory role. HTTP Methods: GET, POST, DELETE. Read-only. Nullable.
3392 members?: NullableOption<DirectoryObject[]>;
3393 // Members of this directory role that are scoped to administrative units. Read-only. Nullable.
3394 scopedMembers?: NullableOption<ScopedRoleMembership[]>;
3395}
3396export interface DirectoryRoleTemplate extends DirectoryObject {
3397 // The description to set for the directory role. Read-only.
3398 description?: NullableOption<string>;
3399 // The display name to set for the directory role. Read-only.
3400 displayName?: NullableOption<string>;
3401}
3402export interface Domain extends Entity {
3403 /**
3404 * Indicates the configured authentication type for the domain. The value is either Managed or Federated. Managed
3405 * indicates a cloud managed domain where Azure AD performs user authentication.Federated indicates authentication is
3406 * federated with an identity provider such as the tenant's on-premises Active Directory via Active Directory Federation
3407 * Services. This propert is read-only and is not nullable.
3408 */
3409 authenticationType?: string;
3410 /**
3411 * This property is always null except when the verify action is used. When the verify action is used, a domain entity is
3412 * returned in the response. The availabilityStatus property of the domain entity in the response is either
3413 * AvailableImmediately or EmailVerifiedDomainTakeoverScheduled.
3414 */
3415 availabilityStatus?: NullableOption<string>;
3416 /**
3417 * The value of the property is false if the DNS record management of the domain has been delegated to Microsoft 365.
3418 * Otherwise, the value is true. Not nullable
3419 */
3420 isAdminManaged?: boolean;
3421 /**
3422 * True if this is the default domain that is used for user creation. There is only one default domain per company. Not
3423 * nullable
3424 */
3425 isDefault?: boolean;
3426 /**
3427 * True if this is the initial domain created by Microsoft Online Services (companyname.onmicrosoft.com). There is only
3428 * one initial domain per company. Not nullable
3429 */
3430 isInitial?: boolean;
3431 // True if the domain is a verified root domain. Otherwise, false if the domain is a subdomain or unverified. Not nullable
3432 isRoot?: boolean;
3433 // True if the domain has completed domain ownership verification. Not nullable
3434 isVerified?: boolean;
3435 manufacturer?: NullableOption<string>;
3436 model?: NullableOption<string>;
3437 /**
3438 * Specifies the number of days before a user receives notification that their password will expire. If the property is
3439 * not set, a default value of 14 days will be used.
3440 */
3441 passwordNotificationWindowInDays?: NullableOption<number>;
3442 /**
3443 * Specifies the length of time that a password is valid before it must be changed. If the property is not set, a default
3444 * value of 90 days will be used.
3445 */
3446 passwordValidityPeriodInDays?: NullableOption<number>;
3447 // Status of asynchronous operations scheduled for the domain.
3448 state?: NullableOption<DomainState>;
3449 /**
3450 * The capabilities assigned to the domain.Can include 0, 1 or more of following values: Email, Sharepoint,
3451 * EmailInternalRelayOnly, OfficeCommunicationsOnline, SharePointDefaultDomain, FullRedelegation, SharePointPublic,
3452 * OrgIdAuthentication, Yammer, Intune The values which you can add/remove using Graph API include: Email,
3453 * OfficeCommunicationsOnline, YammerNot nullable
3454 */
3455 supportedServices?: string[];
3456 // Read-only, Nullable
3457 domainNameReferences?: NullableOption<DirectoryObject[]>;
3458 /**
3459 * DNS records the customer adds to the DNS zone file of the domain before the domain can be used by Microsoft Online
3460 * services.Read-only, Nullable
3461 */
3462 serviceConfigurationRecords?: NullableOption<DomainDnsRecord[]>;
3463 /**
3464 * DNS records that the customer adds to the DNS zone file of the domain before the customer can complete domain ownership
3465 * verification with Azure AD.Read-only, Nullable
3466 */
3467 verificationDnsRecords?: NullableOption<DomainDnsRecord[]>;
3468}
3469export interface DomainDnsRecord extends Entity {
3470 /**
3471 * If false, this record must be configured by the customer at the DNS host for Microsoft Online Services to operate
3472 * correctly with the domain.
3473 */
3474 isOptional?: boolean;
3475 // Value used when configuring the name of the DNS record at the DNS host.
3476 label?: string;
3477 // Indicates what type of DNS record this entity represents.The value can be one of the following: CName, Mx, Srv, TxtKey
3478 recordType?: NullableOption<string>;
3479 /**
3480 * Microsoft Online Service or feature that has a dependency on this DNS record.Can be one of the following values: null,
3481 * Email, Sharepoint, EmailInternalRelayOnly, OfficeCommunicationsOnline, SharePointDefaultDomain, FullRedelegation,
3482 * SharePointPublic, OrgIdAuthentication, Yammer, Intune
3483 */
3484 supportedService?: string;
3485 // Value to use when configuring the time-to-live (ttl) property of the DNS record at the DNS host. Not nullable
3486 ttl?: number;
3487}
3488export interface DomainDnsCnameRecord extends DomainDnsRecord {
3489 // The canonical name of the CNAME record. Used to configure the CNAME record at the DNS host.
3490 canonicalName?: NullableOption<string>;
3491}
3492export interface DomainDnsMxRecord extends DomainDnsRecord {
3493 // Value used when configuring the answer/destination/value of the MX record at the DNS host.
3494 mailExchange?: string;
3495 // Value used when configuring the Preference/Priority property of the MX record at the DNS host.
3496 preference?: NullableOption<number>;
3497}
3498export interface DomainDnsSrvRecord extends DomainDnsRecord {
3499 // Value to use when configuring the Target property of the SRV record at the DNS host.
3500 nameTarget?: NullableOption<string>;
3501 // Value to use when configuring the port property of the SRV record at the DNS host.
3502 port?: NullableOption<number>;
3503 // Value to use when configuring the priority property of the SRV record at the DNS host.
3504 priority?: NullableOption<number>;
3505 // Value to use when configuring the protocol property of the SRV record at the DNS host.
3506 protocol?: NullableOption<string>;
3507 // Value to use when configuring the service property of the SRV record at the DNS host.
3508 service?: NullableOption<string>;
3509 // Value to use when configuring the weight property of the SRV record at the DNS host.
3510 weight?: NullableOption<number>;
3511}
3512export interface DomainDnsTxtRecord extends DomainDnsRecord {
3513 // Value used when configuring the text property at the DNS host.
3514 text?: string;
3515}
3516export interface DomainDnsUnavailableRecord extends DomainDnsRecord {
3517 // Provides the reason why the DomainDnsUnavailableRecord entity is returned.
3518 description?: NullableOption<string>;
3519}
3520export interface Group extends DirectoryObject {
3521 /**
3522 * The list of sensitivity label pairs (label ID, label name) associated with a Microsoft 365 group. Returned only on
3523 * $select.
3524 */
3525 assignedLabels?: NullableOption<AssignedLabel[]>;
3526 // The licenses that are assigned to the group. Returned only on $select. Read-only.
3527 assignedLicenses?: NullableOption<AssignedLicense[]>;
3528 /**
3529 * Describes a classification for the group (such as low, medium or high business impact). Valid values for this property
3530 * are defined by creating a ClassificationList setting value, based on the template definition.Returned by default.
3531 */
3532 classification?: NullableOption<string>;
3533 /**
3534 * Timestamp of when the group was created. The value cannot be modified and is automatically populated when the group is
3535 * created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For
3536 * example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Returned by default. Read-only.
3537 */
3538 createdDateTime?: NullableOption<string>;
3539 // An optional description for the group. Returned by default.
3540 description?: NullableOption<string>;
3541 /**
3542 * The display name for the group. This property is required when a group is created and cannot be cleared during updates.
3543 * Returned by default. Supports $filter and $orderby.
3544 */
3545 displayName?: NullableOption<string>;
3546 /**
3547 * Timestamp of when the group is set to expire. The value cannot be modified and is automatically populated when the
3548 * group is created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC
3549 * time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Returned by default.
3550 * Read-only.
3551 */
3552 expirationDateTime?: NullableOption<string>;
3553 /**
3554 * Specifies the group type and its membership. If the collection contains Unified, the group is a Microsoft 365 group;
3555 * otherwise, it's either a security group or distribution group. For details, see groups overview.If the collection
3556 * includes DynamicMembership, the group has dynamic membership; otherwise, membership is static. Returned by default.
3557 * Supports $filter.
3558 */
3559 groupTypes?: string[];
3560 /**
3561 * Indicates whether there are members in this group that have license errors from its group-based license assignment.
3562 * This property is never returned on a GET operation. You can use it as a $filter argument to get groups that have
3563 * members with license errors (that is, filter for this property being true).
3564 */
3565 hasMembersWithLicenseErrors?: NullableOption<boolean>;
3566 /**
3567 * Indicates status of the group license assignment to all members of the group. Possible values: QueuedForProcessing,
3568 * ProcessingInProgress, and ProcessingComplete. Returned only on $select. Read-only.
3569 */
3570 licenseProcessingState?: NullableOption<LicenseProcessingState>;
3571 /**
3572 * The SMTP address for the group, for example, 'serviceadmins@contoso.onmicrosoft.com'. Returned by default. Read-only.
3573 * Supports $filter.
3574 */
3575 mail?: NullableOption<string>;
3576 // Specifies whether the group is mail-enabled. Returned by default.
3577 mailEnabled?: NullableOption<boolean>;
3578 /**
3579 * The mail alias for the group, unique in the organization. This property must be specified when a group is created.
3580 * These characters cannot be used in the mailNickName: @()/[]';:.&amp;lt;&amp;gt;,SPACE. Returned by default. Supports
3581 * $filter.
3582 */
3583 mailNickname?: NullableOption<string>;
3584 /**
3585 * The rule that determines members for this group if the group is a dynamic group (groupTypes contains
3586 * DynamicMembership). For more information about the syntax of the membership rule, see Membership Rules syntax. Returned
3587 * by default.
3588 */
3589 membershipRule?: NullableOption<string>;
3590 /**
3591 * Indicates whether the dynamic membership processing is on or paused. Possible values are 'On' or 'Paused'. Returned by
3592 * default.
3593 */
3594 membershipRuleProcessingState?: NullableOption<string>;
3595 /**
3596 * Contains the on-premises domain FQDN, also called dnsDomainName synchronized from the on-premises directory. The
3597 * property is only populated for customers who are synchronizing their on-premises directory to Azure Active Directory
3598 * via Azure AD Connect.Returned by default. Read-only.
3599 */
3600 onPremisesDomainName?: NullableOption<string>;
3601 /**
3602 * Indicates the last time at which the group was synced with the on-premises directory.The Timestamp type represents date
3603 * and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would
3604 * look like this: '2014-01-01T00:00:00Z'. Returned by default. Read-only. Supports $filter.
3605 */
3606 onPremisesLastSyncDateTime?: NullableOption<string>;
3607 /**
3608 * Contains the on-premises netBios name synchronized from the on-premises directory. The property is only populated for
3609 * customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect.Returned by
3610 * default. Read-only.
3611 */
3612 onPremisesNetBiosName?: NullableOption<string>;
3613 // Errors when using Microsoft synchronization product during provisioning. Returned by default.
3614 onPremisesProvisioningErrors?: NullableOption<OnPremisesProvisioningError[]>;
3615 /**
3616 * Contains the on-premises SAM account name synchronized from the on-premises directory. The property is only populated
3617 * for customers who are synchronizing their on-premises directory to Azure Active Directory via Azure AD Connect.Returned
3618 * by default. Read-only.
3619 */
3620 onPremisesSamAccountName?: NullableOption<string>;
3621 /**
3622 * Contains the on-premises security identifier (SID) for the group that was synchronized from on-premises to the cloud.
3623 * Returned by default. Read-only.
3624 */
3625 onPremisesSecurityIdentifier?: NullableOption<string>;
3626 /**
3627 * true if this group is synced from an on-premises directory; false if this group was originally synced from an
3628 * on-premises directory but is no longer synced; null if this object has never been synced from an on-premises directory
3629 * (default). Returned by default. Read-only. Supports $filter.
3630 */
3631 onPremisesSyncEnabled?: NullableOption<boolean>;
3632 // The preferred data location for the group. For more information, see OneDrive Online Multi-Geo. Returned by default.
3633 preferredDataLocation?: NullableOption<string>;
3634 /**
3635 * The preferred language for a Microsoft 365 group. Should follow ISO 639-1 Code; for example 'en-US'. Returned by
3636 * default.
3637 */
3638 preferredLanguage?: NullableOption<string>;
3639 /**
3640 * Email addresses for the group that direct to the same group mailbox. For example: ['SMTP: bob@contoso.com', 'smtp:
3641 * bob@sales.contoso.com']. The any operator is required for filter expressions on multi-valued properties. Returned by
3642 * default. Read-only. Not nullable. Supports $filter.
3643 */
3644 proxyAddresses?: string[];
3645 /**
3646 * Timestamp of when the group was last renewed. This cannot be modified directly and is only updated via the renew
3647 * service action. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC
3648 * time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Returned by default.
3649 * Read-only.
3650 */
3651 renewedDateTime?: NullableOption<string>;
3652 // Specifies whether the group is a security group. Returned by default. Supports $filter.
3653 securityEnabled?: NullableOption<boolean>;
3654 // Security identifier of the group, used in Windows scenarios. Returned by default.
3655 securityIdentifier?: NullableOption<string>;
3656 /**
3657 * Specifies a Microsoft 365 group's color theme. Possible values are Teal, Purple, Green, Blue, Pink, Orange or Red.
3658 * Returned by default.
3659 */
3660 theme?: NullableOption<string>;
3661 /**
3662 * Specifies the group join policy and group content visibility for groups. Possible values are: Private, Public, or
3663 * Hiddenmembership. Hiddenmembership can be set only for Microsoft 365 groups, when the groups are created. It can't be
3664 * updated later. Other values of visibility can be updated after group creation. If visibility value is not specified
3665 * during group creation on Microsoft Graph, a security group is created as Private by default and Microsoft 365 group is
3666 * Public. See group visibility options to learn more. Returned by default.
3667 */
3668 visibility?: NullableOption<string>;
3669 /**
3670 * Indicates if people external to the organization can send messages to the group. Default value is false. Returned only
3671 * on $select.
3672 */
3673 allowExternalSenders?: NullableOption<boolean>;
3674 /**
3675 * Indicates if new members added to the group will be auto-subscribed to receive email notifications. You can set this
3676 * property in a PATCH request for the group; do not set it in the initial POST request that creates the group. Default
3677 * value is false. Returned only on $select.
3678 */
3679 autoSubscribeNewMembers?: NullableOption<boolean>;
3680 /**
3681 * True if the group is not displayed in certain parts of the Outlook user interface: in the Address Book, in address
3682 * lists for selecting message recipients, and in the Browse Groups dialog for searching groups; false otherwise. Default
3683 * value is false. Returned only on $select.
3684 */
3685 hideFromAddressLists?: NullableOption<boolean>;
3686 /**
3687 * True if the group is not displayed in Outlook clients, such as Outlook for Windows and Outlook on the web, false
3688 * otherwise. Default value is false. Returned only on $select.
3689 */
3690 hideFromOutlookClients?: NullableOption<boolean>;
3691 /**
3692 * Indicates whether the signed-in user is subscribed to receive email conversations. Default value is true. Returned only
3693 * on $select.
3694 */
3695 isSubscribedByMail?: NullableOption<boolean>;
3696 /**
3697 * Count of conversations that have received new posts since the signed-in user last visited the group. This property is
3698 * the same as unseenConversationsCount.Returned only on $select.
3699 */
3700 unseenCount?: NullableOption<number>;
3701 isArchived?: NullableOption<boolean>;
3702 appRoleAssignments?: NullableOption<AppRoleAssignment[]>;
3703 // The user (or application) that created the group. Note: This is not set if the user is an administrator. Read-only.
3704 createdOnBehalfOf?: NullableOption<DirectoryObject>;
3705 /**
3706 * Groups and administrative units that this group is a member of. HTTP Methods: GET (supported for all groups).
3707 * Read-only. Nullable.
3708 */
3709 memberOf?: NullableOption<DirectoryObject[]>;
3710 /**
3711 * Users, contacts, and groups that are members of this group. HTTP Methods: GET (supported for all groups), POST
3712 * (supported for security groups and mail-enabled security groups), DELETE (supported only for security groups)
3713 * Read-only. Nullable.
3714 */
3715 members?: NullableOption<DirectoryObject[]>;
3716 // A list of group members with license errors from this group-based license assignment. Read-only.
3717 membersWithLicenseErrors?: NullableOption<DirectoryObject[]>;
3718 /**
3719 * The owners of the group. The owners are a set of non-admin users who are allowed to modify this object. HTTP Methods:
3720 * GET (supported for all groups), POST (supported for security groups and mail-enabled security groups), DELETE
3721 * (supported only for security groups) Read-only. Nullable.
3722 */
3723 owners?: NullableOption<DirectoryObject[]>;
3724 permissionGrants?: NullableOption<ResourceSpecificPermissionGrant[]>;
3725 // Settings that can govern this group's behavior, like whether members can invite guest users to the group. Nullable.
3726 settings?: NullableOption<GroupSetting[]>;
3727 transitiveMemberOf?: NullableOption<DirectoryObject[]>;
3728 transitiveMembers?: NullableOption<DirectoryObject[]>;
3729 /**
3730 * The list of users or groups that are allowed to create post's or calendar events in this group. If this list is
3731 * non-empty then only users or groups listed here are allowed to post.
3732 */
3733 acceptedSenders?: NullableOption<DirectoryObject[]>;
3734 // The group's calendar. Read-only.
3735 calendar?: NullableOption<Calendar>;
3736 // The calendar view for the calendar. Read-only.
3737 calendarView?: NullableOption<Event[]>;
3738 // The group's conversations.
3739 conversations?: NullableOption<Conversation[]>;
3740 // The group's events.
3741 events?: NullableOption<Event[]>;
3742 // The group's profile photo.
3743 photo?: NullableOption<ProfilePhoto>;
3744 // The profile photos owned by the group. Read-only. Nullable.
3745 photos?: NullableOption<ProfilePhoto[]>;
3746 // The list of users or groups that are not allowed to create posts or calendar events in this group. Nullable
3747 rejectedSenders?: NullableOption<DirectoryObject[]>;
3748 // The group's conversation threads. Nullable.
3749 threads?: NullableOption<ConversationThread[]>;
3750 // The group's default drive. Read-only.
3751 drive?: NullableOption<Drive>;
3752 // The group's drives. Read-only.
3753 drives?: NullableOption<Drive[]>;
3754 // The list of SharePoint sites in this group. Access the default site with /sites/root.
3755 sites?: NullableOption<Site[]>;
3756 // The collection of open extensions defined for the group. Read-only. Nullable.
3757 extensions?: NullableOption<Extension[]>;
3758 // The collection of lifecycle policies for this group. Read-only. Nullable.
3759 groupLifecyclePolicies?: NullableOption<GroupLifecyclePolicy[]>;
3760 // Selective Planner services available to the group. Read-only. Nullable.
3761 planner?: NullableOption<PlannerGroup>;
3762 // Read-only.
3763 onenote?: NullableOption<Onenote>;
3764 team?: NullableOption<Team>;
3765}
3766export interface ResourceSpecificPermissionGrant extends DirectoryObject {
3767 clientAppId?: NullableOption<string>;
3768 clientId?: NullableOption<string>;
3769 permission?: NullableOption<string>;
3770 permissionType?: NullableOption<string>;
3771 resourceAppId?: NullableOption<string>;
3772}
3773export interface GroupSetting extends Entity {
3774 // Display name of this group of settings, which comes from the associated template.
3775 displayName?: NullableOption<string>;
3776 // Unique identifier for the template used to create this group of settings. Read-only.
3777 templateId?: NullableOption<string>;
3778 // Collection of name value pairs. Must contain and set all the settings defined in the template.
3779 values?: SettingValue[];
3780}
3781export interface Conversation extends Entity {
3782 // Indicates whether any of the posts within this Conversation has at least one attachment.
3783 hasAttachments?: boolean;
3784 /**
3785 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
3786 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
3787 */
3788 lastDeliveredDateTime?: string;
3789 // A short summary from the body of the latest post in this converstaion.
3790 preview?: string;
3791 // The topic of the conversation. This property can be set when the conversation is created, but it cannot be updated.
3792 topic?: string;
3793 // All the users that sent a message to this Conversation.
3794 uniqueSenders?: string[];
3795 // A collection of all the conversation threads in the conversation. A navigation property. Read-only. Nullable.
3796 threads?: NullableOption<ConversationThread[]>;
3797}
3798export interface ConversationThread extends Entity {
3799 // The Cc: recipients for the thread.
3800 ccRecipients?: Recipient[];
3801 // Indicates whether any of the posts within this thread has at least one attachment.
3802 hasAttachments?: boolean;
3803 // Indicates if the thread is locked.
3804 isLocked?: boolean;
3805 /**
3806 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
3807 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
3808 */
3809 lastDeliveredDateTime?: string;
3810 // A short summary from the body of the latest post in this conversation.
3811 preview?: string;
3812 // The topic of the conversation. This property can be set when the conversation is created, but it cannot be updated.
3813 topic?: string;
3814 // The To: recipients for the thread.
3815 toRecipients?: Recipient[];
3816 // All the users that sent a message to this thread.
3817 uniqueSenders?: string[];
3818 // Read-only. Nullable.
3819 posts?: NullableOption<Post[]>;
3820}
3821export interface GroupLifecyclePolicy extends Entity {
3822 /**
3823 * List of email address to send notifications for groups without owners. Multiple email address can be defined by
3824 * separating email address with a semicolon.
3825 */
3826 alternateNotificationEmails?: NullableOption<string>;
3827 /**
3828 * Number of days before a group expires and needs to be renewed. Once renewed, the group expiration is extended by the
3829 * number of days defined.
3830 */
3831 groupLifetimeInDays?: NullableOption<number>;
3832 // The group type for which the expiration policy applies. Possible values are All, Selected or None.
3833 managedGroupTypes?: NullableOption<string>;
3834}
3835export interface PlannerGroup extends Entity {
3836 // Read-only. Nullable. Returns the plannerPlans owned by the group.
3837 plans?: NullableOption<PlannerPlan[]>;
3838}
3839export interface GroupSettingTemplate extends DirectoryObject {
3840 // Description of the template.
3841 description?: NullableOption<string>;
3842 // Display name of the template.
3843 displayName?: NullableOption<string>;
3844 /**
3845 * Collection of settingTemplateValues that list the set of available settings, defaults and types that make up this
3846 * template.
3847 */
3848 values?: SettingTemplateValue[];
3849}
3850export interface Organization extends DirectoryObject {
3851 // The collection of service plans associated with the tenant. Not nullable.
3852 assignedPlans?: AssignedPlan[];
3853 /**
3854 * Telephone number for the organization. Note: Although this is a string collection, only one number can be set for this
3855 * property.
3856 */
3857 businessPhones?: string[];
3858 // City name of the address for the organization.
3859 city?: NullableOption<string>;
3860 // Country/region name of the address for the organization.
3861 country?: NullableOption<string>;
3862 // Country/region abbreviation for the organization.
3863 countryLetterCode?: NullableOption<string>;
3864 /**
3865 * Timestamp of when the organization was created. The value cannot be modified and is automatically populated when the
3866 * organization is created. The Timestamp type represents date and time information using ISO 8601 format and is always in
3867 * UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Read-only.
3868 */
3869 createdDateTime?: NullableOption<string>;
3870 // The display name for the tenant.
3871 displayName?: NullableOption<string>;
3872 // Not nullable.
3873 marketingNotificationEmails?: string[];
3874 /**
3875 * The time and date at which the tenant was last synced with the on-premise directory. The Timestamp type represents date
3876 * and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would
3877 * look like this: '2014-01-01T00:00:00Z'.
3878 */
3879 onPremisesLastSyncDateTime?: NullableOption<string>;
3880 /**
3881 * true if this object is synced from an on-premises directory; false if this object was originally synced from an
3882 * on-premises directory but is no longer synced; null if this object has never been synced from an on-premises directory
3883 * (default).
3884 */
3885 onPremisesSyncEnabled?: NullableOption<boolean>;
3886 // Postal code of the address for the organization.
3887 postalCode?: NullableOption<string>;
3888 // The preferred language for the organization. Should follow ISO 639-1 Code; for example 'en'.
3889 preferredLanguage?: NullableOption<string>;
3890 // The privacy profile of an organization.
3891 privacyProfile?: NullableOption<PrivacyProfile>;
3892 // Not nullable.
3893 provisionedPlans?: ProvisionedPlan[];
3894 securityComplianceNotificationMails?: string[];
3895 securityComplianceNotificationPhones?: string[];
3896 // State name of the address for the organization.
3897 state?: NullableOption<string>;
3898 // Street name of the address for organization.
3899 street?: NullableOption<string>;
3900 // Not nullable.
3901 technicalNotificationMails?: string[];
3902 tenantType?: NullableOption<string>;
3903 // The collection of domains associated with this tenant. Not nullable.
3904 verifiedDomains?: VerifiedDomain[];
3905 // Mobile device management authority. Possible values are: unknown, intune, sccm, office365.
3906 mobileDeviceManagementAuthority?: MdmAuthority;
3907 /**
3908 * Navigation property to manage certificate-based authentication configuration. Only a single instance of
3909 * certificateBasedAuthConfiguration can be created in the collection.
3910 */
3911 certificateBasedAuthConfiguration?: NullableOption<CertificateBasedAuthConfiguration[]>;
3912 // The collection of open extensions defined for the organization resource. Nullable.
3913 extensions?: NullableOption<Extension[]>;
3914}
3915export interface OrgContact extends DirectoryObject {
3916 // Postal addresses for this organizational contact. For now a contact can only have one physical address.
3917 addresses?: NullableOption<PhysicalOfficeAddress[]>;
3918 // Name of the company that this organizational contact belong to.
3919 companyName?: NullableOption<string>;
3920 // The name for the department in which the contact works.
3921 department?: NullableOption<string>;
3922 // Display name for this organizational contact.
3923 displayName?: NullableOption<string>;
3924 // First name for this organizational contact.
3925 givenName?: NullableOption<string>;
3926 // Job title for this organizational contact.
3927 jobTitle?: NullableOption<string>;
3928 // The SMTP address for the contact, for example, 'jeff@contoso.onmicrosoft.com'.
3929 mail?: NullableOption<string>;
3930 // Email alias (portion of email address pre-pending the @ symbol) for this organizational contact.
3931 mailNickname?: NullableOption<string>;
3932 /**
3933 * Date and time when this organizational contact was last synchronized from on-premises AD. The Timestamp type represents
3934 * date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014
3935 * would look like this: '2014-01-01T00:00:00Z'.
3936 */
3937 onPremisesLastSyncDateTime?: NullableOption<string>;
3938 // List of any synchronization provisioning errors for this organizational contact.
3939 onPremisesProvisioningErrors?: NullableOption<OnPremisesProvisioningError[]>;
3940 /**
3941 * true if this object is synced from an on-premises directory; false if this object was originally synced from an
3942 * on-premises directory but is no longer synced and now mastered in Exchange; null if this object has never been synced
3943 * from an on-premises directory (default).
3944 */
3945 onPremisesSyncEnabled?: NullableOption<boolean>;
3946 /**
3947 * List of phones for this organizational contact. Phone types can be mobile, business, and businessFax. Only one of each
3948 * type can ever be present in the collection.
3949 */
3950 phones?: NullableOption<Phone[]>;
3951 /**
3952 * For example: 'SMTP: bob@contoso.com', 'smtp: bob@sales.contoso.com'. The any operator is required for filter
3953 * expressions on multi-valued properties. Supports $filter.
3954 */
3955 proxyAddresses?: string[];
3956 // Last name for this organizational contact.
3957 surname?: NullableOption<string>;
3958 /**
3959 * The contact's direct reports. (The users and contacts that have their manager property set to this contact.) Read-only.
3960 * Nullable.
3961 */
3962 directReports?: NullableOption<DirectoryObject[]>;
3963 // The user or contact that is this contact's manager. Read-only.
3964 manager?: NullableOption<DirectoryObject>;
3965 // Groups that this contact is a member of. Read-only. Nullable.
3966 memberOf?: NullableOption<DirectoryObject[]>;
3967 transitiveMemberOf?: NullableOption<DirectoryObject[]>;
3968}
3969export interface PermissionGrantConditionSet extends Entity {
3970 /**
3971 * A list of appId values for the client applications to match with, or a list with the single value 'all' to match any
3972 * client application. Default is the single value 'all'.
3973 */
3974 clientApplicationIds?: NullableOption<string[]>;
3975 /**
3976 * A list of Microsoft Partner Network (MPN) IDs for verified publishers of the client application, or a list with the
3977 * single value 'all' to match with client apps from any publisher. Default is the single value 'all'.
3978 */
3979 clientApplicationPublisherIds?: NullableOption<string[]>;
3980 /**
3981 * Set to true to only match on client applications with a verified publisher. Set to false to match on any client app,
3982 * even if it does not have a verified publisher. Default is false.
3983 */
3984 clientApplicationsFromVerifiedPublisherOnly?: NullableOption<boolean>;
3985 /**
3986 * A list of Azure Active Directory tenant IDs in which the client application is registered, or a list with the single
3987 * value 'all' to match with client apps registered in any tenant. Default is the single value 'all'.
3988 */
3989 clientApplicationTenantIds?: NullableOption<string[]>;
3990 /**
3991 * The permission classification for the permission being granted, or 'all' to match with any permission classification
3992 * (including permissions which are not classified). Default is all.
3993 */
3994 permissionClassification?: NullableOption<string>;
3995 /**
3996 * The list of id values for the specific permissions to match with, or a list with the single value 'all' to match with
3997 * any permission. The id of delegated permissions can be found in the publishedPermissionScopes property of the API's
3998 * **servicePrincipal** object. The id of application permissions can be found in the appRoles property of the API's
3999 * **servicePrincipal** object. The id of resource-specific application permissions can be found in the
4000 * resourceSpecificApplicationPermissions property of the API's **servicePrincipal** object. Default is the single value
4001 * 'all'.
4002 */
4003 permissions?: NullableOption<string[]>;
4004 /**
4005 * The permission type of the permission being granted. Possible values: application for application permissions (e.g. app
4006 * roles) or delegated for delegated permissions. The value delegatedUserConsentable indicates delegated permissions which
4007 * have not been configured by the API publisher to require admin consent—this value may be used in built-in permission
4008 * grant policies, but cannot be used in custom permission grant policies. Required.
4009 */
4010 permissionType?: NullableOption<PermissionType>;
4011 /**
4012 * The appId of the resource application (e.g. the API) for which a permission is being granted, or any to match with any
4013 * resource application or API. Default is any.
4014 */
4015 resourceApplication?: NullableOption<string>;
4016}
4017export interface SubscribedSku extends Entity {
4018 // For example, 'User' or 'Company'.
4019 appliesTo?: NullableOption<string>;
4020 // Possible values are: Enabled, Warning, Suspended, Deleted, LockedOut.
4021 capabilityStatus?: NullableOption<string>;
4022 // The number of licenses that have been assigned.
4023 consumedUnits?: NullableOption<number>;
4024 // Information about the number and status of prepaid licenses.
4025 prepaidUnits?: NullableOption<LicenseUnitsDetail>;
4026 // Information about the service plans that are available with the SKU. Not nullable
4027 servicePlans?: ServicePlanInfo[];
4028 // The unique identifier (GUID) for the service SKU.
4029 skuId?: NullableOption<string>;
4030 /**
4031 * The SKU part number; for example: 'AAD_PREMIUM' or 'RMSBASIC'. To get a list of commercial subscriptions that an
4032 * organization has acquired, see List subscribedSkus.
4033 */
4034 skuPartNumber?: NullableOption<string>;
4035}
4036export interface EducationClass extends Entity {
4037 // Class code used by the school to identify the class.
4038 classCode?: NullableOption<string>;
4039 // Entity who created the class
4040 createdBy?: NullableOption<IdentitySet>;
4041 // Description of the class.
4042 description?: NullableOption<string>;
4043 // Name of the class.
4044 displayName?: string;
4045 // ID of the class from the syncing system.
4046 externalId?: NullableOption<string>;
4047 // Name of the class in the syncing system.
4048 externalName?: NullableOption<string>;
4049 /**
4050 * The type of external source this resource was generated from (automatically determined from externalSourceDetail).
4051 * Possible values are: sis, lms, or manual.
4052 */
4053 externalSource?: NullableOption<EducationExternalSource>;
4054 // Mail name for sending email to all members, if this is enabled.
4055 mailNickname?: string;
4056 // Term for the class.
4057 term?: NullableOption<EducationTerm>;
4058 // The directory group corresponding to this class.
4059 group?: NullableOption<Group>;
4060 // All users in the class. Nullable.
4061 members?: NullableOption<EducationUser[]>;
4062 // All schools that this class is associated with. Nullable.
4063 schools?: NullableOption<EducationSchool[]>;
4064 // All teachers in the class. Nullable.
4065 teachers?: NullableOption<EducationUser[]>;
4066}
4067export interface EducationUser extends Entity {
4068 // True if the account is enabled; otherwise, false. This property is required when a user is created. Supports /$filter.
4069 accountEnabled?: NullableOption<boolean>;
4070 // The licenses that are assigned to the user. Not nullable.
4071 assignedLicenses?: AssignedLicense[];
4072 // The plans that are assigned to the user. Read-only. Not nullable.
4073 assignedPlans?: AssignedPlan[];
4074 /**
4075 * The telephone numbers for the user. Note: Although this is a string collection, only one number can be set for this
4076 * property.
4077 */
4078 businessPhones?: string[];
4079 // Entity who created the user.
4080 createdBy?: NullableOption<IdentitySet>;
4081 // The name for the department in which the user works. Supports /$filter.
4082 department?: NullableOption<string>;
4083 // The name displayed in the address book for the user. Supports $filter and $orderby.
4084 displayName?: NullableOption<string>;
4085 /**
4086 * The type of external source this resource was generated from (automatically determined from externalSourceDetail).
4087 * Possible values are: sis, lms, or manual.
4088 */
4089 externalSource?: NullableOption<EducationExternalSource>;
4090 // The given name (first name) of the user. Supports /$filter.
4091 givenName?: NullableOption<string>;
4092 // The SMTP address for the user; for example, 'jeff@contoso.onmicrosoft.com'. Read-Only. Supports /$filter.
4093 mail?: NullableOption<string>;
4094 // Mail address of user. Note: type and postOfficeBox are not supported for educationUser resources.
4095 mailingAddress?: NullableOption<PhysicalAddress>;
4096 // The mail alias for the user. This property must be specified when a user is created. Supports /$filter.
4097 mailNickname?: NullableOption<string>;
4098 // The middle name of user.
4099 middleName?: NullableOption<string>;
4100 // The primary cellular telephone number for the user.
4101 mobilePhone?: NullableOption<string>;
4102 officeLocation?: NullableOption<string>;
4103 // Specifies password policies for the user. See standard [user] resource for additional details.
4104 passwordPolicies?: NullableOption<string>;
4105 /**
4106 * Specifies the password profile for the user. The profile contains the user's password. This property is required when a
4107 * user is created. See standard [user] resource for additional details.
4108 */
4109 passwordProfile?: NullableOption<PasswordProfile>;
4110 // The preferred language for the user. Should follow ISO 639-1 Code; for example, 'en-US'.
4111 preferredLanguage?: NullableOption<string>;
4112 /**
4113 * Default role for a user. The user's role might be different in an individual class. Possible values are: student,
4114 * teacher, faculty. Supports /$filter.
4115 */
4116 primaryRole?: EducationUserRole;
4117 // The plans that are provisioned for the user. Read-only. Not nullable.
4118 provisionedPlans?: ProvisionedPlan[];
4119 refreshTokensValidFromDateTime?: NullableOption<string>;
4120 // Address where user lives. Note: type and postOfficeBox are not supported for educationUser resources.
4121 residenceAddress?: NullableOption<PhysicalAddress>;
4122 showInAddressList?: NullableOption<boolean>;
4123 // If the primary role is student, this block will contain student specific data.
4124 student?: NullableOption<EducationStudent>;
4125 // The user's surname (family name or last name). Supports /$filter.
4126 surname?: NullableOption<string>;
4127 // If the primary role is teacher, this block will contain teacher specific data.
4128 teacher?: NullableOption<EducationTeacher>;
4129 /**
4130 * A two-letter country code ([ISO 3166 Alpha-2]). Required for users who will be assigned licenses. Not nullable.
4131 * Supports /$filter.
4132 */
4133 usageLocation?: NullableOption<string>;
4134 /**
4135 * The user principal name (UPN) for the user. Supports $filter and $orderby. See standard [user] resource for additional
4136 * details.
4137 */
4138 userPrincipalName?: NullableOption<string>;
4139 /**
4140 * A string value that can be used to classify user types in your directory, such as 'Member' and 'Guest'. Supports
4141 * /$filter.
4142 */
4143 userType?: NullableOption<string>;
4144 // Classes to which the user belongs. Nullable.
4145 classes?: NullableOption<EducationClass[]>;
4146 // Schools to which the user belongs. Nullable.
4147 schools?: NullableOption<EducationSchool[]>;
4148 // The directory user corresponding to this user.
4149 user?: NullableOption<User>;
4150}
4151export interface EducationOrganization extends Entity {
4152 // Organization description.
4153 description?: NullableOption<string>;
4154 // Organization display name.
4155 displayName?: string;
4156 // Where this user was created from. Possible values are: sis, lms, or manual.
4157 externalSource?: NullableOption<EducationExternalSource>;
4158}
4159export interface EducationSchool extends EducationOrganization {
4160 // Address of the school.
4161 address?: NullableOption<PhysicalAddress>;
4162 // Entity who created the school.
4163 createdBy?: NullableOption<IdentitySet>;
4164 // ID of school in syncing system.
4165 externalId?: NullableOption<string>;
4166 // ID of principal in syncing system.
4167 externalPrincipalId?: NullableOption<string>;
4168 fax?: NullableOption<string>;
4169 // Highest grade taught.
4170 highestGrade?: NullableOption<string>;
4171 // Lowest grade taught.
4172 lowestGrade?: NullableOption<string>;
4173 // Phone number of school.
4174 phone?: NullableOption<string>;
4175 // Email address of the principal.
4176 principalEmail?: NullableOption<string>;
4177 // Name of the principal.
4178 principalName?: NullableOption<string>;
4179 // School Number.
4180 schoolNumber?: NullableOption<string>;
4181 // Classes taught at the school. Nullable.
4182 classes?: NullableOption<EducationClass[]>;
4183 // Users in the school. Nullable.
4184 users?: NullableOption<EducationUser[]>;
4185}
4186export interface EducationRoot extends Entity {
4187 // Read-only. Nullable.
4188 classes?: NullableOption<EducationClass[]>;
4189 // Read-only. Nullable.
4190 me?: NullableOption<EducationUser>;
4191 // Read-only. Nullable.
4192 schools?: NullableOption<EducationSchool[]>;
4193 // Read-only. Nullable.
4194 users?: NullableOption<EducationUser[]>;
4195}
4196export interface DriveItem extends BaseItem {
4197 // Audio metadata, if the item is an audio file. Read-only.
4198 audio?: NullableOption<Audio>;
4199 // The content stream, if the item represents a file.
4200 content?: NullableOption<any>;
4201 /**
4202 * An eTag for the content of the item. This eTag is not changed if only the metadata is changed. Note This property is
4203 * not returned if the item is a folder. Read-only.
4204 */
4205 cTag?: NullableOption<string>;
4206 // Information about the deleted state of the item. Read-only.
4207 deleted?: NullableOption<Deleted>;
4208 // File metadata, if the item is a file. Read-only.
4209 file?: NullableOption<File>;
4210 // File system information on client. Read-write.
4211 fileSystemInfo?: NullableOption<FileSystemInfo>;
4212 // Folder metadata, if the item is a folder. Read-only.
4213 folder?: NullableOption<Folder>;
4214 // Image metadata, if the item is an image. Read-only.
4215 image?: NullableOption<Image>;
4216 // Location metadata, if the item has location data. Read-only.
4217 location?: NullableOption<GeoCoordinates>;
4218 /**
4219 * If present, indicates that this item is a package instead of a folder or file. Packages are treated like files in some
4220 * contexts and folders in others. Read-only.
4221 */
4222 package?: NullableOption<Package>;
4223 /**
4224 * If present, indicates that indicates that one or more operations that may affect the state of the driveItem are pending
4225 * completion. Read-only.
4226 */
4227 pendingOperations?: NullableOption<PendingOperations>;
4228 // Photo metadata, if the item is a photo. Read-only.
4229 photo?: NullableOption<Photo>;
4230 /**
4231 * Provides information about the published or checked-out state of an item, in locations that support such actions. This
4232 * property is not returned by default. Read-only.
4233 */
4234 publication?: NullableOption<PublicationFacet>;
4235 // Remote item data, if the item is shared from a drive other than the one being accessed. Read-only.
4236 remoteItem?: NullableOption<RemoteItem>;
4237 // If this property is non-null, it indicates that the driveItem is the top-most driveItem in the drive.
4238 root?: NullableOption<Root>;
4239 // Search metadata, if the item is from a search result. Read-only.
4240 searchResult?: NullableOption<SearchResult>;
4241 /**
4242 * Indicates that the item has been shared with others and provides information about the shared state of the item.
4243 * Read-only.
4244 */
4245 shared?: NullableOption<Shared>;
4246 // Returns identifiers useful for SharePoint REST compatibility. Read-only.
4247 sharepointIds?: NullableOption<SharepointIds>;
4248 // Size of the item in bytes. Read-only.
4249 size?: NullableOption<number>;
4250 // If the current item is also available as a special folder, this facet is returned. Read-only.
4251 specialFolder?: NullableOption<SpecialFolder>;
4252 // Video metadata, if the item is a video. Read-only.
4253 video?: NullableOption<Video>;
4254 // WebDAV compatible URL for the item.
4255 webDavUrl?: NullableOption<string>;
4256 // For files that are Excel spreadsheets, accesses the workbook API to work with the spreadsheet's contents. Nullable.
4257 workbook?: NullableOption<Workbook>;
4258 // Analytics about the view activities that took place on this item.
4259 analytics?: NullableOption<ItemAnalytics>;
4260 /**
4261 * Collection containing Item objects for the immediate children of Item. Only items representing folders have children.
4262 * Read-only. Nullable.
4263 */
4264 children?: NullableOption<DriveItem[]>;
4265 // For drives in SharePoint, the associated document library list item. Read-only. Nullable.
4266 listItem?: NullableOption<ListItem>;
4267 // The set of permissions for the item. Read-only. Nullable.
4268 permissions?: NullableOption<Permission[]>;
4269 // The set of subscriptions on the item. Only supported on the root of a drive.
4270 subscriptions?: NullableOption<Subscription[]>;
4271 /**
4272 * Collection containing [ThumbnailSet][] objects associated with the item. For more info, see [getting thumbnails][].
4273 * Read-only. Nullable.
4274 */
4275 thumbnails?: NullableOption<ThumbnailSet[]>;
4276 // The list of previous versions of the item. For more info, see [getting previous versions][]. Read-only. Nullable.
4277 versions?: NullableOption<DriveItemVersion[]>;
4278}
4279export interface List extends BaseItem {
4280 // The displayable title of the list.
4281 displayName?: NullableOption<string>;
4282 // Provides additional details about the list.
4283 list?: NullableOption<ListInfo>;
4284 // Returns identifiers useful for SharePoint REST compatibility. Read-only.
4285 sharepointIds?: NullableOption<SharepointIds>;
4286 // If present, indicates that this is a system-managed list. Read-only.
4287 system?: NullableOption<SystemFacet>;
4288 // The collection of field definitions for this list.
4289 columns?: NullableOption<ColumnDefinition[]>;
4290 // The collection of content types present in this list.
4291 contentTypes?: NullableOption<ContentType[]>;
4292 // Only present on document libraries. Allows access to the list as a [drive][] resource with [driveItems][driveItem].
4293 drive?: NullableOption<Drive>;
4294 // All items contained in the list.
4295 items?: NullableOption<ListItem[]>;
4296 // The set of subscriptions on the list.
4297 subscriptions?: NullableOption<Subscription[]>;
4298}
4299export interface Workbook extends Entity {
4300 application?: NullableOption<WorkbookApplication>;
4301 comments?: NullableOption<WorkbookComment[]>;
4302 functions?: NullableOption<WorkbookFunctions>;
4303 // Represents a collection of workbook scoped named items (named ranges and constants). Read-only.
4304 names?: NullableOption<WorkbookNamedItem[]>;
4305 /**
4306 * The status of Workbook operations. Getting an operation collection is not supported, but you can get the status of a
4307 * long-running operation if the Location header is returned in the response. Read-only. Nullable.
4308 */
4309 operations?: NullableOption<WorkbookOperation[]>;
4310 // Represents a collection of tables associated with the workbook. Read-only.
4311 tables?: NullableOption<WorkbookTable[]>;
4312 // Represents a collection of worksheets associated with the workbook. Read-only.
4313 worksheets?: NullableOption<WorkbookWorksheet[]>;
4314}
4315// tslint:disable-next-line: interface-name
4316export interface ItemAnalytics extends Entity {
4317 allTime?: NullableOption<ItemActivityStat>;
4318 itemActivityStats?: NullableOption<ItemActivityStat[]>;
4319 lastSevenDays?: NullableOption<ItemActivityStat>;
4320}
4321export interface ListItem extends BaseItem {
4322 // The content type of this list item
4323 contentType?: NullableOption<ContentTypeInfo>;
4324 // Returns identifiers useful for SharePoint REST compatibility. Read-only.
4325 sharepointIds?: NullableOption<SharepointIds>;
4326 // Analytics about the view activities that took place on this item.
4327 analytics?: NullableOption<ItemAnalytics>;
4328 // For document libraries, the driveItem relationship exposes the listItem as a [driveItem][]
4329 driveItem?: NullableOption<DriveItem>;
4330 // The values of the columns set on this list item.
4331 fields?: NullableOption<FieldValueSet>;
4332 // The list of previous versions of the list item.
4333 versions?: NullableOption<ListItemVersion[]>;
4334}
4335export interface Permission extends Entity {
4336 /**
4337 * A format of yyyy-MM-ddTHH:mm:ssZ of DateTimeOffset indicates the expiration time of the permission. DateTime.MinValue
4338 * indicates there is no expiration set for this permission. Optional.
4339 */
4340 expirationDateTime?: NullableOption<string>;
4341 // For user type permissions, the details of the users &amp; applications for this permission. Read-only.
4342 grantedTo?: NullableOption<IdentitySet>;
4343 // For link type permissions, the details of the users to whom permission was granted. Read-only.
4344 grantedToIdentities?: NullableOption<IdentitySet[]>;
4345 /**
4346 * This indicates whether password is set for this permission, it's only showing in response. Optional and Read-only and
4347 * for OneDrive Personal only.
4348 */
4349 hasPassword?: NullableOption<boolean>;
4350 // Provides a reference to the ancestor of the current permission, if it is inherited from an ancestor. Read-only.
4351 inheritedFrom?: NullableOption<ItemReference>;
4352 // Details of any associated sharing invitation for this permission. Read-only.
4353 invitation?: NullableOption<SharingInvitation>;
4354 // Provides the link details of the current permission, if it is a link type permissions. Read-only.
4355 link?: NullableOption<SharingLink>;
4356 // The type of permission, e.g. read. See below for the full list of roles. Read-only.
4357 roles?: NullableOption<string[]>;
4358 // A unique token that can be used to access this shared item via the [shares API][]. Read-only.
4359 shareId?: NullableOption<string>;
4360}
4361export interface Subscription extends Entity {
4362 // Identifier of the application used to create the subscription. Read-only.
4363 applicationId?: NullableOption<string>;
4364 /**
4365 * Indicates the type of change in the subscribed resource that will raise a change notification. The supported values
4366 * are: created, updated, deleted. Multiple values can be combined using a comma-separated list. Required. Note: Drive
4367 * root item and list change notifications support only the updated changeType. User and group change notifications
4368 * support updated and deleted changeType.
4369 */
4370 changeType?: string;
4371 /**
4372 * Specifies the value of the clientState property sent by the service in each change notification. The maximum length is
4373 * 255 characters. The client can check that the change notification came from the service by comparing the value of the
4374 * clientState property sent with the subscription with the value of the clientState property received with each change
4375 * notification. Optional.
4376 */
4377 clientState?: NullableOption<string>;
4378 /**
4379 * Identifier of the user or service principal that created the subscription. If the app used delegated permissions to
4380 * create the subscription, this field contains the ID of the signed-in user the app called on behalf of. If the app used
4381 * application permissions, this field contains the ID of the service principal corresponding to the app. Read-only.
4382 */
4383 creatorId?: NullableOption<string>;
4384 /**
4385 * A base64-encoded representation of a certificate with a public key used to encrypt resource data in change
4386 * notifications. Optional. Required when includeResourceData is true.
4387 */
4388 encryptionCertificate?: NullableOption<string>;
4389 /**
4390 * A custom app-provided identifier to help identify the certificate needed to decrypt resource data. Optional. Required
4391 * when includeResourceData is true.
4392 */
4393 encryptionCertificateId?: NullableOption<string>;
4394 /**
4395 * Specifies the date and time when the webhook subscription expires. The time is in UTC, and can be an amount of time
4396 * from subscription creation that varies for the resource subscribed to. See the table below for maximum supported
4397 * subscription length of time. Required.
4398 */
4399 expirationDateTime?: string;
4400 // When set to true, change notifications include resource data (such as content of a chat message). Optional.
4401 includeResourceData?: NullableOption<boolean>;
4402 /**
4403 * Specifies the latest version of Transport Layer Security (TLS) that the notification endpoint, specified by
4404 * notificationUrl, supports. The possible values are: v1_0, v1_1, v1_2, v1_3. For subscribers whose notification endpoint
4405 * supports a version lower than the currently recommended version (TLS 1.2), specifying this property by a set timeline
4406 * allows them to temporarily use their deprecated version of TLS before completing their upgrade to TLS 1.2. For these
4407 * subscribers, not setting this property per the timeline would result in subscription operations failing. For
4408 * subscribers whose notification endpoint already supports TLS 1.2, setting this property is optional. In such cases,
4409 * Microsoft Graph defaults the property to v1_2.
4410 */
4411 latestSupportedTlsVersion?: NullableOption<string>;
4412 /**
4413 * The URL of the endpoint that receives lifecycle notifications, including subscriptionRemoved and missed notifications.
4414 * This URL must make use of the HTTPS protocol. Optional. Read more about how Outlook resources use lifecycle
4415 * notifications.
4416 */
4417 lifecycleNotificationUrl?: NullableOption<string>;
4418 // The URL of the endpoint that receives the change notifications. This URL must make use of the HTTPS protocol. Required.
4419 notificationUrl?: string;
4420 /**
4421 * Specifies the resource that will be monitored for changes. Do not include the base URL
4422 * (https://graph.microsoft.com/beta/). See the possible resource path values for each supported resource. Required.
4423 */
4424 resource?: string;
4425}
4426export interface ThumbnailSet extends Entity {
4427 // A 1920x1920 scaled thumbnail.
4428 large?: NullableOption<Thumbnail>;
4429 // A 176x176 scaled thumbnail.
4430 medium?: NullableOption<Thumbnail>;
4431 // A 48x48 cropped thumbnail.
4432 small?: NullableOption<Thumbnail>;
4433 // A custom thumbnail image or the original image used to generate other thumbnails.
4434 source?: NullableOption<Thumbnail>;
4435}
4436export interface BaseItemVersion extends Entity {
4437 // Identity of the user which last modified the version. Read-only.
4438 lastModifiedBy?: NullableOption<IdentitySet>;
4439 // Date and time the version was last modified. Read-only.
4440 lastModifiedDateTime?: NullableOption<string>;
4441 // Indicates the publication status of this particular version. Read-only.
4442 publication?: NullableOption<PublicationFacet>;
4443}
4444export interface DriveItemVersion extends BaseItemVersion {
4445 content?: NullableOption<any>;
4446 // Indicates the size of the content stream for this version of the item.
4447 size?: NullableOption<number>;
4448}
4449export interface ColumnDefinition extends Entity {
4450 // This column stores boolean values.
4451 boolean?: NullableOption<BooleanColumn>;
4452 // This column's data is calculated based on other columns.
4453 calculated?: NullableOption<CalculatedColumn>;
4454 // This column stores data from a list of choices.
4455 choice?: NullableOption<ChoiceColumn>;
4456 // For site columns, the name of the group this column belongs to. Helps organize related columns.
4457 columnGroup?: NullableOption<string>;
4458 // This column stores currency values.
4459 currency?: NullableOption<CurrencyColumn>;
4460 // This column stores DateTime values.
4461 dateTime?: NullableOption<DateTimeColumn>;
4462 // The default value for this column.
4463 defaultValue?: NullableOption<DefaultColumnValue>;
4464 // The user-facing description of the column.
4465 description?: NullableOption<string>;
4466 // The user-facing name of the column.
4467 displayName?: NullableOption<string>;
4468 // If true, no two list items may have the same value for this column.
4469 enforceUniqueValues?: NullableOption<boolean>;
4470 // This column stores a geolocation.
4471 geolocation?: NullableOption<GeolocationColumn>;
4472 // Specifies whether the column is displayed in the user interface.
4473 hidden?: NullableOption<boolean>;
4474 // Specifies whether the column values can used for sorting and searching.
4475 indexed?: NullableOption<boolean>;
4476 // This column's data is looked up from another source in the site.
4477 lookup?: NullableOption<LookupColumn>;
4478 /**
4479 * The API-facing name of the column as it appears in the [fields][] on a [listItem][]. For the user-facing name, see
4480 * displayName.
4481 */
4482 name?: NullableOption<string>;
4483 // This column stores number values.
4484 number?: NullableOption<NumberColumn>;
4485 // This column stores Person or Group values.
4486 personOrGroup?: NullableOption<PersonOrGroupColumn>;
4487 // Specifies whether the column values can be modified.
4488 readOnly?: NullableOption<boolean>;
4489 // Specifies whether the column value is not optional.
4490 required?: NullableOption<boolean>;
4491 // This column stores text values.
4492 text?: NullableOption<TextColumn>;
4493}
4494export interface ContentType extends Entity {
4495 // The descriptive text for the item.
4496 description?: NullableOption<string>;
4497 // The name of the group this content type belongs to. Helps organize related content types.
4498 group?: NullableOption<string>;
4499 // Indicates whether the content type is hidden in the list's 'New' menu.
4500 hidden?: NullableOption<boolean>;
4501 /**
4502 * If this content type is inherited from another scope (like a site), provides a reference to the item where the content
4503 * type is defined.
4504 */
4505 inheritedFrom?: NullableOption<ItemReference>;
4506 // The name of the content type.
4507 name?: NullableOption<string>;
4508 // Specifies the order in which the content type appears in the selection UI.
4509 order?: NullableOption<ContentTypeOrder>;
4510 // The unique identifier of the content type.
4511 parentId?: NullableOption<string>;
4512 // If true, the content type cannot be modified unless this value is first set to false.
4513 readOnly?: NullableOption<boolean>;
4514 /**
4515 * If true, the content type cannot be modified by users or through push-down operations. Only site collection
4516 * administrators can seal or unseal content types.
4517 */
4518 sealed?: NullableOption<boolean>;
4519 // The collection of columns that are required by this content type
4520 columnLinks?: NullableOption<ColumnLink[]>;
4521}
4522export interface WorkbookApplication extends Entity {
4523 // Returns the calculation mode used in the workbook. Possible values are: Automatic, AutomaticExceptTables, Manual.
4524 calculationMode?: string;
4525}
4526export interface WorkbookComment extends Entity {
4527 // The content of the comment.
4528 content?: NullableOption<string>;
4529 // Indicates the type for the comment.
4530 contentType?: string;
4531 // Read-only. Nullable.
4532 replies?: NullableOption<WorkbookCommentReply[]>;
4533}
4534// tslint:disable-next-line: no-empty-interface
4535export interface WorkbookFunctions extends Entity {}
4536export interface WorkbookNamedItem extends Entity {
4537 // Represents the comment associated with this name.
4538 comment?: NullableOption<string>;
4539 // The name of the object. Read-only.
4540 name?: NullableOption<string>;
4541 // Indicates whether the name is scoped to the workbook or to a specific worksheet. Read-only.
4542 scope?: string;
4543 /**
4544 * Indicates what type of reference is associated with the name. Possible values are: String, Integer, Double, Boolean,
4545 * Range. Read-only.
4546 */
4547 type?: NullableOption<string>;
4548 // Represents the formula that the name is defined to refer to. E.g. =Sheet14!$B$2:$H$12, =4.75, etc. Read-only.
4549 value?: NullableOption<any>;
4550 // Specifies whether the object is visible or not.
4551 visible?: boolean;
4552 /**
4553 * Returns the worksheet on which the named item is scoped to. Available only if the item is scoped to the worksheet.
4554 * Read-only.
4555 */
4556 worksheet?: NullableOption<WorkbookWorksheet>;
4557}
4558export interface WorkbookOperation extends Entity {
4559 // The error returned by the operation.
4560 error?: NullableOption<WorkbookOperationError>;
4561 // The resource URI for the result.
4562 resourceLocation?: NullableOption<string>;
4563 // The current status of the operation. Possible values are: notStarted, running, succeeded, failed.
4564 status?: WorkbookOperationStatus;
4565}
4566export interface WorkbookTable extends Entity {
4567 // Indicates whether the first column contains special formatting.
4568 highlightFirstColumn?: boolean;
4569 // Indicates whether the last column contains special formatting.
4570 highlightLastColumn?: boolean;
4571 /**
4572 * Legacy Id used in older Excle clients. The value of the identifier remains the same even when the table is renamed.
4573 * This property should be interpreted as an opaque string value and should not be parsed to any other type. Read-only.
4574 */
4575 legacyId?: NullableOption<string>;
4576 // Name of the table.
4577 name?: NullableOption<string>;
4578 /**
4579 * Indicates whether the columns show banded formatting in which odd columns are highlighted differently from even ones to
4580 * make reading the table easier.
4581 */
4582 showBandedColumns?: boolean;
4583 /**
4584 * Indicates whether the rows show banded formatting in which odd rows are highlighted differently from even ones to make
4585 * reading the table easier.
4586 */
4587 showBandedRows?: boolean;
4588 /**
4589 * Indicates whether the filter buttons are visible at the top of each column header. Setting this is only allowed if the
4590 * table contains a header row.
4591 */
4592 showFilterButton?: boolean;
4593 // Indicates whether the header row is visible or not. This value can be set to show or remove the header row.
4594 showHeaders?: boolean;
4595 // Indicates whether the total row is visible or not. This value can be set to show or remove the total row.
4596 showTotals?: boolean;
4597 /**
4598 * Constant value that represents the Table style. Possible values are: TableStyleLight1 thru TableStyleLight21,
4599 * TableStyleMedium1 thru TableStyleMedium28, TableStyleStyleDark1 thru TableStyleStyleDark11. A custom user-defined style
4600 * present in the workbook can also be specified.
4601 */
4602 style?: NullableOption<string>;
4603 // Represents a collection of all the columns in the table. Read-only.
4604 columns?: NullableOption<WorkbookTableColumn[]>;
4605 // Represents a collection of all the rows in the table. Read-only.
4606 rows?: NullableOption<WorkbookTableRow[]>;
4607 // Represents the sorting for the table. Read-only.
4608 sort?: NullableOption<WorkbookTableSort>;
4609 // The worksheet containing the current table. Read-only.
4610 worksheet?: NullableOption<WorkbookWorksheet>;
4611}
4612export interface WorkbookWorksheet extends Entity {
4613 // The display name of the worksheet.
4614 name?: NullableOption<string>;
4615 // The zero-based position of the worksheet within the workbook.
4616 position?: number;
4617 // The Visibility of the worksheet. The possible values are: Visible, Hidden, VeryHidden.
4618 visibility?: string;
4619 // Returns collection of charts that are part of the worksheet. Read-only.
4620 charts?: NullableOption<WorkbookChart[]>;
4621 // Returns collection of names that are associated with the worksheet. Read-only.
4622 names?: NullableOption<WorkbookNamedItem[]>;
4623 // Collection of PivotTables that are part of the worksheet.
4624 pivotTables?: NullableOption<WorkbookPivotTable[]>;
4625 // Returns sheet protection object for a worksheet. Read-only.
4626 protection?: NullableOption<WorkbookWorksheetProtection>;
4627 // Collection of tables that are part of the worksheet. Read-only.
4628 tables?: NullableOption<WorkbookTable[]>;
4629}
4630export interface WorkbookChart extends Entity {
4631 // Represents the height, in points, of the chart object.
4632 height?: number;
4633 // The distance, in points, from the left side of the chart to the worksheet origin.
4634 left?: number;
4635 // Represents the name of a chart object.
4636 name?: NullableOption<string>;
4637 /**
4638 * Represents the distance, in points, from the top edge of the object to the top of row 1 (on a worksheet) or the top of
4639 * the chart area (on a chart).
4640 */
4641 top?: number;
4642 // Represents the width, in points, of the chart object.
4643 width?: number;
4644 // Represents chart axes. Read-only.
4645 axes?: NullableOption<WorkbookChartAxes>;
4646 // Represents the datalabels on the chart. Read-only.
4647 dataLabels?: NullableOption<WorkbookChartDataLabels>;
4648 // Encapsulates the format properties for the chart area. Read-only.
4649 format?: NullableOption<WorkbookChartAreaFormat>;
4650 // Represents the legend for the chart. Read-only.
4651 legend?: NullableOption<WorkbookChartLegend>;
4652 // Represents either a single series or collection of series in the chart. Read-only.
4653 series?: NullableOption<WorkbookChartSeries[]>;
4654 /**
4655 * Represents the title of the specified chart, including the text, visibility, position and formating of the title.
4656 * Read-only.
4657 */
4658 title?: NullableOption<WorkbookChartTitle>;
4659 // The worksheet containing the current chart. Read-only.
4660 worksheet?: NullableOption<WorkbookWorksheet>;
4661}
4662export interface WorkbookChartAxes extends Entity {
4663 // Represents the category axis in a chart. Read-only.
4664 categoryAxis?: NullableOption<WorkbookChartAxis>;
4665 // Represents the series axis of a 3-dimensional chart. Read-only.
4666 seriesAxis?: NullableOption<WorkbookChartAxis>;
4667 // Represents the value axis in an axis. Read-only.
4668 valueAxis?: NullableOption<WorkbookChartAxis>;
4669}
4670export interface WorkbookChartDataLabels extends Entity {
4671 /**
4672 * DataLabelPosition value that represents the position of the data label. The possible values are: None, Center,
4673 * InsideEnd, InsideBase, OutsideEnd, Left, Right, Top, Bottom, BestFit, Callout.
4674 */
4675 position?: NullableOption<string>;
4676 // String representing the separator used for the data labels on a chart.
4677 separator?: NullableOption<string>;
4678 // Boolean value representing if the data label bubble size is visible or not.
4679 showBubbleSize?: NullableOption<boolean>;
4680 // Boolean value representing if the data label category name is visible or not.
4681 showCategoryName?: NullableOption<boolean>;
4682 // Boolean value representing if the data label legend key is visible or not.
4683 showLegendKey?: NullableOption<boolean>;
4684 // Boolean value representing if the data label percentage is visible or not.
4685 showPercentage?: NullableOption<boolean>;
4686 // Boolean value representing if the data label series name is visible or not.
4687 showSeriesName?: NullableOption<boolean>;
4688 // Boolean value representing if the data label value is visible or not.
4689 showValue?: NullableOption<boolean>;
4690 // Represents the format of chart data labels, which includes fill and font formatting. Read-only.
4691 format?: NullableOption<WorkbookChartDataLabelFormat>;
4692}
4693export interface WorkbookChartAreaFormat extends Entity {
4694 // Represents the fill format of an object, which includes background formatting information. Read-only.
4695 fill?: NullableOption<WorkbookChartFill>;
4696 // Represents the font attributes (font name, font size, color, etc.) for the current object. Read-only.
4697 font?: NullableOption<WorkbookChartFont>;
4698}
4699export interface WorkbookChartLegend extends Entity {
4700 // Boolean value for whether the chart legend should overlap with the main body of the chart.
4701 overlay?: NullableOption<boolean>;
4702 // Represents the position of the legend on the chart. The possible values are: Top, Bottom, Left, Right, Corner, Custom.
4703 position?: NullableOption<string>;
4704 // A boolean value the represents the visibility of a ChartLegend object.
4705 visible?: boolean;
4706 // Represents the formatting of a chart legend, which includes fill and font formatting. Read-only.
4707 format?: NullableOption<WorkbookChartLegendFormat>;
4708}
4709export interface WorkbookChartSeries extends Entity {
4710 // Represents the name of a series in a chart.
4711 name?: NullableOption<string>;
4712 // Represents the formatting of a chart series, which includes fill and line formatting. Read-only.
4713 format?: NullableOption<WorkbookChartSeriesFormat>;
4714 // Represents a collection of all points in the series. Read-only.
4715 points?: NullableOption<WorkbookChartPoint[]>;
4716}
4717export interface WorkbookChartTitle extends Entity {
4718 // Boolean value representing if the chart title will overlay the chart or not.
4719 overlay?: NullableOption<boolean>;
4720 // Represents the title text of a chart.
4721 text?: NullableOption<string>;
4722 // A boolean value the represents the visibility of a chart title object.
4723 visible?: boolean;
4724 // Represents the formatting of a chart title, which includes fill and font formatting. Read-only.
4725 format?: NullableOption<WorkbookChartTitleFormat>;
4726}
4727// tslint:disable-next-line: no-empty-interface
4728export interface WorkbookChartFill extends Entity {}
4729export interface WorkbookChartFont extends Entity {
4730 // Represents the bold status of font.
4731 bold?: NullableOption<boolean>;
4732 // HTML color code representation of the text color. E.g. #FF0000 represents Red.
4733 color?: NullableOption<string>;
4734 // Represents the italic status of the font.
4735 italic?: NullableOption<boolean>;
4736 // Font name (e.g. 'Calibri')
4737 name?: NullableOption<string>;
4738 // Size of the font (e.g. 11)
4739 size?: NullableOption<number>;
4740 // Type of underline applied to the font. The possible values are: None, Single.
4741 underline?: NullableOption<string>;
4742}
4743export interface WorkbookChartAxis extends Entity {
4744 /**
4745 * Represents the interval between two major tick marks. Can be set to a numeric value or an empty string. The returned
4746 * value is always a number.
4747 */
4748 majorUnit?: NullableOption<any>;
4749 /**
4750 * Represents the maximum value on the value axis. Can be set to a numeric value or an empty string (for automatic axis
4751 * values). The returned value is always a number.
4752 */
4753 maximum?: NullableOption<any>;
4754 /**
4755 * Represents the minimum value on the value axis. Can be set to a numeric value or an empty string (for automatic axis
4756 * values). The returned value is always a number.
4757 */
4758 minimum?: NullableOption<any>;
4759 /**
4760 * Represents the interval between two minor tick marks. 'Can be set to a numeric value or an empty string (for automatic
4761 * axis values). The returned value is always a number.
4762 */
4763 minorUnit?: NullableOption<any>;
4764 // Represents the formatting of a chart object, which includes line and font formatting. Read-only.
4765 format?: NullableOption<WorkbookChartAxisFormat>;
4766 // Returns a gridlines object that represents the major gridlines for the specified axis. Read-only.
4767 majorGridlines?: NullableOption<WorkbookChartGridlines>;
4768 // Returns a Gridlines object that represents the minor gridlines for the specified axis. Read-only.
4769 minorGridlines?: NullableOption<WorkbookChartGridlines>;
4770 // Represents the axis title. Read-only.
4771 title?: NullableOption<WorkbookChartAxisTitle>;
4772}
4773export interface WorkbookChartAxisFormat extends Entity {
4774 // Represents the font attributes (font name, font size, color, etc.) for a chart axis element. Read-only.
4775 font?: NullableOption<WorkbookChartFont>;
4776 // Represents chart line formatting. Read-only.
4777 line?: NullableOption<WorkbookChartLineFormat>;
4778}
4779export interface WorkbookChartGridlines extends Entity {
4780 // Boolean value representing if the axis gridlines are visible or not.
4781 visible?: boolean;
4782 // Represents the formatting of chart gridlines. Read-only.
4783 format?: NullableOption<WorkbookChartGridlinesFormat>;
4784}
4785export interface WorkbookChartAxisTitle extends Entity {
4786 // Represents the axis title.
4787 text?: NullableOption<string>;
4788 // A boolean that specifies the visibility of an axis title.
4789 visible?: boolean;
4790 // Represents the formatting of chart axis title. Read-only.
4791 format?: NullableOption<WorkbookChartAxisTitleFormat>;
4792}
4793export interface WorkbookChartLineFormat extends Entity {
4794 // HTML color code representing the color of lines in the chart.
4795 color?: NullableOption<string>;
4796}
4797export interface WorkbookChartAxisTitleFormat extends Entity {
4798 // Represents the font attributes, such as font name, font size, color, etc. of chart axis title object. Read-only.
4799 font?: NullableOption<WorkbookChartFont>;
4800}
4801export interface WorkbookChartDataLabelFormat extends Entity {
4802 // Represents the fill format of the current chart data label. Read-only.
4803 fill?: NullableOption<WorkbookChartFill>;
4804 // Represents the font attributes (font name, font size, color, etc.) for a chart data label. Read-only.
4805 font?: NullableOption<WorkbookChartFont>;
4806}
4807export interface WorkbookChartGridlinesFormat extends Entity {
4808 // Represents chart line formatting. Read-only.
4809 line?: NullableOption<WorkbookChartLineFormat>;
4810}
4811export interface WorkbookChartLegendFormat extends Entity {
4812 // Represents the fill format of an object, which includes background formating information. Read-only.
4813 fill?: NullableOption<WorkbookChartFill>;
4814 // Represents the font attributes such as font name, font size, color, etc. of a chart legend. Read-only.
4815 font?: NullableOption<WorkbookChartFont>;
4816}
4817export interface WorkbookChartPoint extends Entity {
4818 // Returns the value of a chart point. Read-only.
4819 value?: NullableOption<any>;
4820 // Encapsulates the format properties chart point. Read-only.
4821 format?: NullableOption<WorkbookChartPointFormat>;
4822}
4823export interface WorkbookChartPointFormat extends Entity {
4824 // Represents the fill format of a chart, which includes background formating information. Read-only.
4825 fill?: NullableOption<WorkbookChartFill>;
4826}
4827export interface WorkbookChartSeriesFormat extends Entity {
4828 // Represents the fill format of a chart series, which includes background formating information. Read-only.
4829 fill?: NullableOption<WorkbookChartFill>;
4830 // Represents line formatting. Read-only.
4831 line?: NullableOption<WorkbookChartLineFormat>;
4832}
4833export interface WorkbookChartTitleFormat extends Entity {
4834 // Represents the fill format of an object, which includes background formatting information. Read-only.
4835 fill?: NullableOption<WorkbookChartFill>;
4836 // Represents the font attributes (font name, font size, color, etc.) for the current object. Read-only.
4837 font?: NullableOption<WorkbookChartFont>;
4838}
4839export interface WorkbookCommentReply extends Entity {
4840 // The content of replied comment.
4841 content?: NullableOption<string>;
4842 // Indicates the type for the replied comment.
4843 contentType?: string;
4844}
4845export interface WorkbookFilter extends Entity {
4846 // The currently applied filter on the given column. Read-only.
4847 criteria?: NullableOption<WorkbookFilterCriteria>;
4848}
4849export interface WorkbookFormatProtection extends Entity {
4850 /**
4851 * Indicates if Excel hides the formula for the cells in the range. A null value indicates that the entire range doesn't
4852 * have uniform formula hidden setting.
4853 */
4854 formulaHidden?: NullableOption<boolean>;
4855 /**
4856 * Indicates if Excel locks the cells in the object. A null value indicates that the entire range doesn't have uniform
4857 * lock setting.
4858 */
4859 locked?: NullableOption<boolean>;
4860}
4861export interface WorkbookFunctionResult extends Entity {
4862 error?: NullableOption<string>;
4863 value?: NullableOption<any>;
4864}
4865export interface WorkbookPivotTable extends Entity {
4866 // Name of the PivotTable.
4867 name?: NullableOption<string>;
4868 // The worksheet containing the current PivotTable. Read-only.
4869 worksheet?: NullableOption<WorkbookWorksheet>;
4870}
4871export interface WorkbookRange extends Entity {
4872 /**
4873 * Represents the range reference in A1-style. Address value will contain the Sheet reference (e.g. Sheet1!A1:B4).
4874 * Read-only.
4875 */
4876 address?: NullableOption<string>;
4877 // Represents range reference for the specified range in the language of the user. Read-only.
4878 addressLocal?: NullableOption<string>;
4879 // Number of cells in the range. Read-only.
4880 cellCount?: number;
4881 // Represents the total number of columns in the range. Read-only.
4882 columnCount?: number;
4883 // Represents if all columns of the current range are hidden.
4884 columnHidden?: NullableOption<boolean>;
4885 // Represents the column number of the first cell in the range. Zero-indexed. Read-only.
4886 columnIndex?: number;
4887 // Represents the formula in A1-style notation.
4888 formulas?: NullableOption<any>;
4889 /**
4890 * Represents the formula in A1-style notation, in the user's language and number-formatting locale. For example, the
4891 * English '=SUM(A1, 1.5)' formula would become '=SUMME(A1; 1,5)' in German.
4892 */
4893 formulasLocal?: NullableOption<any>;
4894 // Represents the formula in R1C1-style notation.
4895 formulasR1C1?: NullableOption<any>;
4896 // Represents if all cells of the current range are hidden. Read-only.
4897 hidden?: NullableOption<boolean>;
4898 // Represents Excel's number format code for the given cell.
4899 numberFormat?: NullableOption<any>;
4900 // Returns the total number of rows in the range. Read-only.
4901 rowCount?: number;
4902 // Represents if all rows of the current range are hidden.
4903 rowHidden?: NullableOption<boolean>;
4904 // Returns the row number of the first cell in the range. Zero-indexed. Read-only.
4905 rowIndex?: number;
4906 /**
4907 * Text values of the specified range. The Text value will not depend on the cell width. The # sign substitution that
4908 * happens in Excel UI will not affect the text value returned by the API. Read-only.
4909 */
4910 text?: NullableOption<any>;
4911 /**
4912 * Represents the raw values of the specified range. The data returned could be of type string, number, or a boolean. Cell
4913 * that contain an error will return the error string.
4914 */
4915 values?: NullableOption<any>;
4916 /**
4917 * Represents the type of data of each cell. Possible values are: Unknown, Empty, String, Integer, Double, Boolean, Error.
4918 * Read-only.
4919 */
4920 valueTypes?: NullableOption<any>;
4921 // Returns a format object, encapsulating the range's font, fill, borders, alignment, and other properties. Read-only.
4922 format?: NullableOption<WorkbookRangeFormat>;
4923 // The worksheet containing the current range. Read-only.
4924 sort?: NullableOption<WorkbookRangeSort>;
4925 // The worksheet containing the current range. Read-only.
4926 worksheet?: NullableOption<WorkbookWorksheet>;
4927}
4928export interface WorkbookRangeFormat extends Entity {
4929 // Gets or sets the width of all colums within the range. If the column widths are not uniform, null will be returned.
4930 columnWidth?: NullableOption<number>;
4931 /**
4932 * Represents the horizontal alignment for the specified object. Possible values are: General, Left, Center, Right, Fill,
4933 * Justify, CenterAcrossSelection, Distributed.
4934 */
4935 horizontalAlignment?: NullableOption<string>;
4936 // Gets or sets the height of all rows in the range. If the row heights are not uniform null will be returned.
4937 rowHeight?: NullableOption<number>;
4938 /**
4939 * Represents the vertical alignment for the specified object. Possible values are: Top, Center, Bottom, Justify,
4940 * Distributed.
4941 */
4942 verticalAlignment?: NullableOption<string>;
4943 /**
4944 * Indicates if Excel wraps the text in the object. A null value indicates that the entire range doesn't have uniform wrap
4945 * setting
4946 */
4947 wrapText?: NullableOption<boolean>;
4948 // Collection of border objects that apply to the overall range selected Read-only.
4949 borders?: NullableOption<WorkbookRangeBorder[]>;
4950 // Returns the fill object defined on the overall range. Read-only.
4951 fill?: NullableOption<WorkbookRangeFill>;
4952 // Returns the font object defined on the overall range selected Read-only.
4953 font?: NullableOption<WorkbookRangeFont>;
4954 // Returns the format protection object for a range. Read-only.
4955 protection?: NullableOption<WorkbookFormatProtection>;
4956}
4957// tslint:disable-next-line: no-empty-interface
4958export interface WorkbookRangeSort extends Entity {}
4959export interface WorkbookRangeBorder extends Entity {
4960 /**
4961 * HTML color code representing the color of the border line, of the form #RRGGBB (e.g. 'FFA500') or as a named HTML color
4962 * (e.g. 'orange').
4963 */
4964 color?: NullableOption<string>;
4965 /**
4966 * Constant value that indicates the specific side of the border. Possible values are: EdgeTop, EdgeBottom, EdgeLeft,
4967 * EdgeRight, InsideVertical, InsideHorizontal, DiagonalDown, DiagonalUp. Read-only.
4968 */
4969 sideIndex?: NullableOption<string>;
4970 /**
4971 * One of the constants of line style specifying the line style for the border. Possible values are: None, Continuous,
4972 * Dash, DashDot, DashDotDot, Dot, Double, SlantDashDot.
4973 */
4974 style?: NullableOption<string>;
4975 // Specifies the weight of the border around a range. Possible values are: Hairline, Thin, Medium, Thick.
4976 weight?: NullableOption<string>;
4977}
4978export interface WorkbookRangeFill extends Entity {
4979 /**
4980 * HTML color code representing the color of the border line, of the form #RRGGBB (e.g. 'FFA500') or as a named HTML color
4981 * (e.g. 'orange')
4982 */
4983 color?: NullableOption<string>;
4984}
4985export interface WorkbookRangeFont extends Entity {
4986 // Represents the bold status of font.
4987 bold?: NullableOption<boolean>;
4988 // HTML color code representation of the text color. E.g. #FF0000 represents Red.
4989 color?: NullableOption<string>;
4990 // Represents the italic status of the font.
4991 italic?: NullableOption<boolean>;
4992 // Font name (e.g. 'Calibri')
4993 name?: NullableOption<string>;
4994 // Font size.
4995 size?: NullableOption<number>;
4996 // Type of underline applied to the font. Possible values are: None, Single, Double, SingleAccountant, DoubleAccountant.
4997 underline?: NullableOption<string>;
4998}
4999export interface WorkbookRangeView extends Entity {
5000 // Represents the cell addresses
5001 cellAddresses?: NullableOption<any>;
5002 // Returns the number of visible columns. Read-only.
5003 columnCount?: number;
5004 // Represents the formula in A1-style notation.
5005 formulas?: NullableOption<any>;
5006 /**
5007 * Represents the formula in A1-style notation, in the user's language and number-formatting locale. For example, the
5008 * English '=SUM(A1, 1.5)' formula would become '=SUMME(A1; 1,5)' in German.
5009 */
5010 formulasLocal?: NullableOption<any>;
5011 // Represents the formula in R1C1-style notation.
5012 formulasR1C1?: NullableOption<any>;
5013 // Index of the range.
5014 index?: number;
5015 // Represents Excel's number format code for the given cell. Read-only.
5016 numberFormat?: NullableOption<any>;
5017 // Returns the number of visible rows. Read-only.
5018 rowCount?: number;
5019 /**
5020 * Text values of the specified range. The Text value will not depend on the cell width. The # sign substitution that
5021 * happens in Excel UI will not affect the text value returned by the API. Read-only.
5022 */
5023 text?: NullableOption<any>;
5024 /**
5025 * Represents the raw values of the specified range view. The data returned could be of type string, number, or a boolean.
5026 * Cell that contain an error will return the error string.
5027 */
5028 values?: NullableOption<any>;
5029 /**
5030 * Represents the type of data of each cell. Read-only. Possible values are: Unknown, Empty, String, Integer, Double,
5031 * Boolean, Error.
5032 */
5033 valueTypes?: NullableOption<any>;
5034 // Represents a collection of range views associated with the range. Read-only. Read-only.
5035 rows?: NullableOption<WorkbookRangeView[]>;
5036}
5037export interface WorkbookTableColumn extends Entity {
5038 // Returns the index number of the column within the columns collection of the table. Zero-indexed. Read-only.
5039 index?: number;
5040 // Returns the name of the table column.
5041 name?: NullableOption<string>;
5042 /**
5043 * Represents the raw values of the specified range. The data returned could be of type string, number, or a boolean. Cell
5044 * that contain an error will return the error string.
5045 */
5046 values?: NullableOption<any>;
5047 // Retrieve the filter applied to the column. Read-only.
5048 filter?: NullableOption<WorkbookFilter>;
5049}
5050export interface WorkbookTableRow extends Entity {
5051 // Returns the index number of the row within the rows collection of the table. Zero-indexed. Read-only.
5052 index?: number;
5053 /**
5054 * Represents the raw values of the specified range. The data returned could be of type string, number, or a boolean. Cell
5055 * that contain an error will return the error string.
5056 */
5057 values?: NullableOption<any>;
5058}
5059export interface WorkbookTableSort extends Entity {
5060 // Represents the current conditions used to last sort the table. Read-only.
5061 fields?: NullableOption<WorkbookSortField[]>;
5062 // Represents whether the casing impacted the last sort of the table. Read-only.
5063 matchCase?: boolean;
5064 /**
5065 * Represents Chinese character ordering method last used to sort the table. Possible values are: PinYin, StrokeCount.
5066 * Read-only.
5067 */
5068 method?: string;
5069}
5070export interface WorkbookWorksheetProtection extends Entity {
5071 // Sheet protection options. Read-only.
5072 options?: NullableOption<WorkbookWorksheetProtectionOptions>;
5073 // Indicates if the worksheet is protected. Read-only.
5074 protected?: boolean;
5075}
5076export interface Place extends Entity {
5077 // The street address of the place.
5078 address?: NullableOption<PhysicalAddress>;
5079 // The name associated with the place.
5080 displayName?: string;
5081 // Specifies the place location in latitude, longitude and (optionally) altitude coordinates.
5082 geoCoordinates?: NullableOption<OutlookGeoCoordinates>;
5083 // The phone number of the place.
5084 phone?: NullableOption<string>;
5085}
5086export interface Room extends Place {
5087 // Specifies the name of the audio device in the room.
5088 audioDeviceName?: NullableOption<string>;
5089 // Type of room. Possible values are standard, and reserved.
5090 bookingType?: NullableOption<BookingType>;
5091 // Specifies the building name or building number that the room is in.
5092 building?: NullableOption<string>;
5093 // Specifies the capacity of the room.
5094 capacity?: NullableOption<number>;
5095 // Specifies the name of the display device in the room.
5096 displayDeviceName?: NullableOption<string>;
5097 // Email address of the room.
5098 emailAddress?: NullableOption<string>;
5099 // Specifies a descriptive label for the floor, for example, P.
5100 floorLabel?: NullableOption<string>;
5101 // Specifies the floor number that the room is on.
5102 floorNumber?: NullableOption<number>;
5103 // Specifies whether the room is wheelchair accessible.
5104 isWheelChairAccessible?: NullableOption<boolean>;
5105 // Specifies a descriptive label for the room, for example, a number or name.
5106 label?: NullableOption<string>;
5107 // Specifies a nickname for the room, for example, 'conf room'.
5108 nickname?: string;
5109 // Specifies additional features of the room, for example, details like the type of view or furniture type.
5110 tags?: NullableOption<string[]>;
5111 // Specifies the name of the video device in the room.
5112 videoDeviceName?: NullableOption<string>;
5113}
5114export interface RoomList extends Place {
5115 // The email address of the room list.
5116 emailAddress?: NullableOption<string>;
5117 // Read-only. Nullable.
5118 rooms?: NullableOption<Room[]>;
5119}
5120export interface Attachment extends Entity {
5121 // The MIME type.
5122 contentType?: NullableOption<string>;
5123 // true if the attachment is an inline attachment; otherwise, false.
5124 isInline?: boolean;
5125 /**
5126 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
5127 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
5128 */
5129 lastModifiedDateTime?: NullableOption<string>;
5130 // The display name of the attachment. This does not need to be the actual file name.
5131 name?: NullableOption<string>;
5132 // The length of the attachment in bytes.
5133 size?: number;
5134}
5135export interface CalendarPermission extends Entity {
5136 /**
5137 * List of allowed sharing or delegating permission levels for the calendar. Possible values are: none, freeBusyRead,
5138 * limitedRead, read, write, delegateWithoutPrivateEventAccess, delegateWithPrivateEventAccess, custom.
5139 */
5140 allowedRoles?: NullableOption<CalendarRoleType[]>;
5141 /**
5142 * Represents a sharee or delegate who has access to the calendar. For the 'My Organization' sharee, the address property
5143 * is null. Read-only.
5144 */
5145 emailAddress?: NullableOption<EmailAddress>;
5146 // True if the user in context (sharee or delegate) is inside the same organization as the calendar owner.
5147 isInsideOrganization?: NullableOption<boolean>;
5148 /**
5149 * True if the user can be removed from the list of sharees or delegates for the specified calendar, false otherwise. The
5150 * 'My organization' user determines the permissions other people within your organization have to the given calendar. You
5151 * cannot remove 'My organization' as a sharee to a calendar.
5152 */
5153 isRemovable?: NullableOption<boolean>;
5154 // Current permission level of the calendar sharee or delegate.
5155 role?: NullableOption<CalendarRoleType>;
5156}
5157export interface MultiValueLegacyExtendedProperty extends Entity {
5158 // A collection of property values.
5159 value?: NullableOption<string[]>;
5160}
5161export interface SingleValueLegacyExtendedProperty extends Entity {
5162 // A property value.
5163 value?: NullableOption<string>;
5164}
5165export interface CalendarSharingMessage extends Message {
5166 canAccept?: NullableOption<boolean>;
5167 sharingMessageAction?: NullableOption<CalendarSharingMessageAction>;
5168 sharingMessageActions?: NullableOption<CalendarSharingMessageAction[]>;
5169 suggestedCalendarName?: NullableOption<string>;
5170}
5171export interface Post extends OutlookItem {
5172 // The contents of the post. This is a default property. This property can be null.
5173 body?: NullableOption<ItemBody>;
5174 // Unique ID of the conversation. Read-only.
5175 conversationId?: NullableOption<string>;
5176 // Unique ID of the conversation thread. Read-only.
5177 conversationThreadId?: NullableOption<string>;
5178 /**
5179 * Used in delegate access scenarios. Indicates who posted the message on behalf of another user. This is a default
5180 * property.
5181 */
5182 from?: Recipient;
5183 // Indicates whether the post has at least one attachment. This is a default property.
5184 hasAttachments?: boolean;
5185 // Conversation participants that were added to the thread as part of this post.
5186 newParticipants?: Recipient[];
5187 /**
5188 * Specifies when the post was received. The DateTimeOffset type represents date and time information using ISO 8601
5189 * format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
5190 */
5191 receivedDateTime?: string;
5192 /**
5193 * Contains the address of the sender. The value of Sender is assumed to be the address of the authenticated user in the
5194 * case when Sender is not specified. This is a default property.
5195 */
5196 sender?: NullableOption<Recipient>;
5197 /**
5198 * The collection of fileAttachment, itemAttachment, and referenceAttachment attachments for the post. Read-only.
5199 * Nullable.
5200 */
5201 attachments?: NullableOption<Attachment[]>;
5202 // The collection of open extensions defined for the post. Read-only. Nullable.
5203 extensions?: NullableOption<Extension[]>;
5204 // The earlier post that this post is replying to in the conversationThread. Read-only.
5205 inReplyTo?: NullableOption<Post>;
5206 // The collection of multi-value extended properties defined for the post. Read-only. Nullable.
5207 multiValueExtendedProperties?: NullableOption<MultiValueLegacyExtendedProperty[]>;
5208 // The collection of single-value extended properties defined for the post. Read-only. Nullable.
5209 singleValueExtendedProperties?: NullableOption<SingleValueLegacyExtendedProperty[]>;
5210}
5211export interface EventMessage extends Message {
5212 // The end time of the requested meeting.
5213 endDateTime?: NullableOption<DateTimeTimeZone>;
5214 isAllDay?: NullableOption<boolean>;
5215 // True if this meeting request is accessible to a delegate, false otherwise. Default is false.
5216 isDelegated?: NullableOption<boolean>;
5217 isOutOfDate?: NullableOption<boolean>;
5218 location?: NullableOption<Location>;
5219 /**
5220 * The type of event message: none, meetingRequest, meetingCancelled, meetingAccepted, meetingTenativelyAccepted,
5221 * meetingDeclined.
5222 */
5223 meetingMessageType?: NullableOption<MeetingMessageType>;
5224 recurrence?: NullableOption<PatternedRecurrence>;
5225 startDateTime?: NullableOption<DateTimeTimeZone>;
5226 type?: NullableOption<EventType>;
5227 /**
5228 * The event associated with the event message. The assumption for attendees or room resources is that the Calendar
5229 * Attendant is set to automatically update the calendar with an event when meeting request event messages arrive.
5230 * Navigation property. Read-only.
5231 */
5232 event?: NullableOption<Event>;
5233}
5234export interface EventMessageRequest extends EventMessage {
5235 /**
5236 * True if the meeting organizer allows invitees to propose a new time when responding, false otherwise. Optional. Default
5237 * is true.
5238 */
5239 allowNewTimeProposals?: NullableOption<boolean>;
5240 meetingRequestType?: NullableOption<MeetingRequestType>;
5241 // If the meeting update changes the meeting end time, this property specifies the previous meeting end time.
5242 previousEndDateTime?: NullableOption<DateTimeTimeZone>;
5243 // If the meeting update changes the meeting location, this property specifies the previous meeting location.
5244 previousLocation?: NullableOption<Location>;
5245 // If the meeting update changes the meeting start time, this property specifies the previous meeting start time.
5246 previousStartDateTime?: NullableOption<DateTimeTimeZone>;
5247 // Set to true if the sender would like the invitee to send a response to the requested meeting.
5248 responseRequested?: NullableOption<boolean>;
5249}
5250export interface EventMessageResponse extends EventMessage {
5251 proposedNewTime?: NullableOption<TimeSlot>;
5252 responseType?: NullableOption<ResponseType>;
5253}
5254export interface FileAttachment extends Attachment {
5255 // The base64-encoded contents of the file.
5256 contentBytes?: NullableOption<number>;
5257 // The ID of the attachment in the Exchange store.
5258 contentId?: NullableOption<string>;
5259 // Do not use this property as it is not supported.
5260 contentLocation?: NullableOption<string>;
5261}
5262// tslint:disable-next-line: interface-name
5263export interface InferenceClassificationOverride extends Entity {
5264 /**
5265 * Specifies how incoming messages from a specific sender should always be classified as. Possible values are: focused,
5266 * other.
5267 */
5268 classifyAs?: NullableOption<InferenceClassificationType>;
5269 // The email address information of the sender for whom the override is created.
5270 senderEmailAddress?: NullableOption<EmailAddress>;
5271}
5272// tslint:disable-next-line: interface-name
5273export interface ItemAttachment extends Attachment {
5274 // The attached contact, message or event. Navigation property.
5275 item?: NullableOption<OutlookItem>;
5276}
5277export interface MessageRule extends Entity {
5278 // Actions to be taken on a message when the corresponding conditions are fulfilled.
5279 actions?: NullableOption<MessageRuleActions>;
5280 // Conditions that when fulfilled, will trigger the corresponding actions for that rule.
5281 conditions?: NullableOption<MessageRulePredicates>;
5282 // The display name of the rule.
5283 displayName?: NullableOption<string>;
5284 // Exception conditions for the rule.
5285 exceptions?: NullableOption<MessageRulePredicates>;
5286 // Indicates whether the rule is in an error condition. Read-only.
5287 hasError?: NullableOption<boolean>;
5288 // Indicates whether the rule is enabled to be applied to messages.
5289 isEnabled?: NullableOption<boolean>;
5290 // Indicates if the rule is read-only and cannot be modified or deleted by the rules REST API.
5291 isReadOnly?: NullableOption<boolean>;
5292 // Indicates the order in which the rule is executed, among other rules.
5293 sequence?: NullableOption<number>;
5294}
5295export interface MailSearchFolder extends MailFolder {
5296 // The OData query to filter the messages.
5297 filterQuery?: NullableOption<string>;
5298 /**
5299 * Indicates how the mailbox folder hierarchy should be traversed in the search. true means that a deep search should be
5300 * done to include child folders in the hierarchy of each folder explicitly specified in sourceFolderIds. false means a
5301 * shallow search of only each of the folders explicitly specified in sourceFolderIds.
5302 */
5303 includeNestedFolders?: NullableOption<boolean>;
5304 // Indicates whether a search folder is editable using REST APIs.
5305 isSupported?: NullableOption<boolean>;
5306 // The mailbox folders that should be mined.
5307 sourceFolderIds?: NullableOption<string[]>;
5308}
5309export interface OpenTypeExtension extends Extension {
5310 // A unique text identifier for an open type data extension. Required.
5311 extensionName?: string;
5312}
5313export interface OutlookCategory extends Entity {
5314 /**
5315 * A pre-set color constant that characterizes a category, and that is mapped to one of 25 predefined colors. See the note
5316 * below.
5317 */
5318 color?: NullableOption<CategoryColor>;
5319 /**
5320 * A unique name that identifies a category in the user's mailbox. After a category is created, the name cannot be
5321 * changed. Read-only.
5322 */
5323 displayName?: NullableOption<string>;
5324}
5325// tslint:disable-next-line: no-empty-interface
5326export interface ReferenceAttachment extends Attachment {}
5327export interface ColumnLink extends Entity {
5328 // The name of the column in this content type.
5329 name?: NullableOption<string>;
5330}
5331// tslint:disable-next-line: no-empty-interface
5332export interface FieldValueSet extends Entity {}
5333// tslint:disable-next-line: interface-name
5334export interface ItemActivity extends Entity {
5335 // An item was accessed.
5336 access?: NullableOption<AccessAction>;
5337 // Details about when the activity took place. Read-only.
5338 activityDateTime?: NullableOption<string>;
5339 // Identity of who performed the action. Read-only.
5340 actor?: NullableOption<IdentitySet>;
5341 // Exposes the driveItem that was the target of this activity.
5342 driveItem?: NullableOption<DriveItem>;
5343}
5344// tslint:disable-next-line: interface-name
5345export interface ItemActivityStat extends Entity {
5346 // Statistics about the access actions in this interval. Read-only.
5347 access?: NullableOption<ItemActionStat>;
5348 // Statistics about the create actions in this interval. Read-only.
5349 create?: NullableOption<ItemActionStat>;
5350 // Statistics about the delete actions in this interval. Read-only.
5351 delete?: NullableOption<ItemActionStat>;
5352 // Statistics about the edit actions in this interval. Read-only.
5353 edit?: NullableOption<ItemActionStat>;
5354 // When the interval ends. Read-only.
5355 endDateTime?: NullableOption<string>;
5356 // Indicates that the statistics in this interval are based on incomplete data. Read-only.
5357 incompleteData?: NullableOption<IncompleteData>;
5358 // Indicates whether the item is 'trending.' Read-only.
5359 isTrending?: NullableOption<boolean>;
5360 // Statistics about the move actions in this interval. Read-only.
5361 move?: NullableOption<ItemActionStat>;
5362 // When the interval starts. Read-only.
5363 startDateTime?: NullableOption<string>;
5364 // Exposes the itemActivities represented in this itemActivityStat resource.
5365 activities?: NullableOption<ItemActivity[]>;
5366}
5367export interface ListItemVersion extends BaseItemVersion {
5368 // A collection of the fields and values for this version of the list item.
5369 fields?: NullableOption<FieldValueSet>;
5370}
5371export interface SharedDriveItem extends BaseItem {
5372 // Information about the owner of the shared item being referenced.
5373 owner?: NullableOption<IdentitySet>;
5374 // Used to access the underlying driveItem
5375 driveItem?: NullableOption<DriveItem>;
5376 // All driveItems contained in the sharing root. This collection cannot be enumerated.
5377 items?: NullableOption<DriveItem[]>;
5378 // Used to access the underlying list
5379 list?: NullableOption<List>;
5380 // Used to access the underlying listItem
5381 listItem?: NullableOption<ListItem>;
5382 // Used to access the permission representing the underlying sharing link
5383 permission?: NullableOption<Permission>;
5384 // Used to access the underlying driveItem. Deprecated -- use driveItem instead.
5385 root?: NullableOption<DriveItem>;
5386 // Used to access the underlying site
5387 site?: NullableOption<Site>;
5388}
5389export interface SchemaExtension extends Entity {
5390 // Description for the schema extension.
5391 description?: NullableOption<string>;
5392 /**
5393 * The appId of the application that is the owner of the schema extension. This property can be supplied on creation, to
5394 * set the owner. If not supplied, then the calling application's appId will be set as the owner. In either case, the
5395 * signed-in user must be the owner of the application. So, for example, if creating a new schema extension definition
5396 * using Graph Explorer, you must supply the owner property. Once set, this property is read-only and cannot be changed.
5397 */
5398 owner?: string;
5399 // The collection of property names and types that make up the schema extension definition.
5400 properties?: ExtensionSchemaProperty[];
5401 /**
5402 * The lifecycle state of the schema extension. Possible states are InDevelopment, Available, and Deprecated.
5403 * Automatically set to InDevelopment on creation. Schema extensions provides more information on the possible state
5404 * transitions and behaviors.
5405 */
5406 status?: string;
5407 /**
5408 * Set of Microsoft Graph types (that can support extensions) that the schema extension can be applied to. Select from
5409 * administrativeUnit, contact, device, event, group, message, organization, post, or user.
5410 */
5411 targetTypes?: string[];
5412}
5413export interface CloudCommunications extends Entity {
5414 calls?: NullableOption<Call[]>;
5415 callRecords?: NullableOption<CallRecords.CallRecord[]>;
5416 onlineMeetings?: NullableOption<OnlineMeeting[]>;
5417 presences?: NullableOption<Presence[]>;
5418}
5419export interface Call extends Entity {
5420 // The callback URL on which callbacks will be delivered. Must be https.
5421 callbackUri?: string;
5422 /**
5423 * A unique identifier for all the participant calls in a conference or a unique identifier for two participant calls in a
5424 * P2P call. This needs to be copied over from Microsoft.Graph.Call.CallChainId.
5425 */
5426 callChainId?: NullableOption<string>;
5427 callOptions?: NullableOption<CallOptions>;
5428 // The routing information on how the call was retargeted. Read-only.
5429 callRoutes?: NullableOption<CallRoute[]>;
5430 // The chat information. Required information for meeting scenarios.
5431 chatInfo?: NullableOption<ChatInfo>;
5432 // The direction of the call. The possible value are incoming or outgoing. Read-only.
5433 direction?: NullableOption<CallDirection>;
5434 // The context associated with an incoming call. Read-only. Server generated.
5435 incomingContext?: NullableOption<IncomingContext>;
5436 // The media configuration. Required information for creating peer to peer calls or joining meetings.
5437 mediaConfig?: NullableOption<MediaConfig>;
5438 // Read-only. The call media state.
5439 mediaState?: NullableOption<CallMediaState>;
5440 // The meeting information. Required information for meeting scenarios.
5441 meetingInfo?: NullableOption<MeetingInfo>;
5442 myParticipantId?: NullableOption<string>;
5443 requestedModalities?: NullableOption<Modality[]>;
5444 resultInfo?: NullableOption<ResultInfo>;
5445 source?: NullableOption<ParticipantInfo>;
5446 state?: NullableOption<CallState>;
5447 subject?: NullableOption<string>;
5448 targets?: NullableOption<InvitationParticipantInfo[]>;
5449 tenantId?: NullableOption<string>;
5450 toneInfo?: NullableOption<ToneInfo>;
5451 // The transcription information for the call. Read-only.
5452 transcription?: NullableOption<CallTranscriptionInfo>;
5453 // Read-only. Nullable.
5454 operations?: NullableOption<CommsOperation[]>;
5455 // Read-only. Nullable.
5456 participants?: NullableOption<Participant[]>;
5457}
5458export interface NamedLocation extends Entity {
5459 /**
5460 * The Timestamp type represents creation date and time of the location using ISO 8601 format and is always in UTC time.
5461 * For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Read-only.
5462 */
5463 createdDateTime?: NullableOption<string>;
5464 // Human-readable name of the location.
5465 displayName?: string;
5466 /**
5467 * The Timestamp type represents last modified date and time of the location using ISO 8601 format and is always in UTC
5468 * time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Read-only.
5469 */
5470 modifiedDateTime?: NullableOption<string>;
5471}
5472export interface CountryNamedLocation extends NamedLocation {
5473 // List of countries and/or regions in two-letter format specified by ISO 3166-2.
5474 countriesAndRegions?: string[];
5475 // True if IP addresses that don't map to a country or region should be included in the named location.
5476 includeUnknownCountriesAndRegions?: boolean;
5477}
5478// tslint:disable-next-line: interface-name
5479export interface IpNamedLocation extends NamedLocation {
5480 // List of IP address ranges in IPv4 CIDR format (e.g. 1.2.3.4/32) or any allowable IPv6 format from IETF RFC596.
5481 ipRanges?: IpRange[];
5482 // True if this location is explicitly trusted.
5483 isTrusted?: boolean;
5484}
5485export interface MobileApp extends Entity {
5486 // The date and time the app was created.
5487 createdDateTime?: string;
5488 // The description of the app.
5489 description?: NullableOption<string>;
5490 // The developer of the app.
5491 developer?: NullableOption<string>;
5492 // The admin provided or imported title of the app.
5493 displayName?: NullableOption<string>;
5494 // The more information Url.
5495 informationUrl?: NullableOption<string>;
5496 // The value indicating whether the app is marked as featured by the admin.
5497 isFeatured?: boolean;
5498 // The large icon, to be displayed in the app details and used for upload of the icon.
5499 largeIcon?: NullableOption<MimeContent>;
5500 // The date and time the app was last modified.
5501 lastModifiedDateTime?: string;
5502 // Notes for the app.
5503 notes?: NullableOption<string>;
5504 // The owner of the app.
5505 owner?: NullableOption<string>;
5506 // The privacy statement Url.
5507 privacyInformationUrl?: NullableOption<string>;
5508 // The publisher of the app.
5509 publisher?: NullableOption<string>;
5510 /**
5511 * The publishing state for the app. The app cannot be assigned unless the app is published. Possible values are:
5512 * notPublished, processing, published.
5513 */
5514 publishingState?: MobileAppPublishingState;
5515 // The list of group assignments for this mobile app.
5516 assignments?: NullableOption<MobileAppAssignment[]>;
5517 // The list of categories for this app.
5518 categories?: NullableOption<MobileAppCategory[]>;
5519}
5520export interface MobileLobApp extends MobileApp {
5521 // The internal committed content version.
5522 committedContentVersion?: NullableOption<string>;
5523 // The name of the main Lob application file.
5524 fileName?: NullableOption<string>;
5525 // The total size, including all uploaded files.
5526 size?: number;
5527 // The list of content versions for this app.
5528 contentVersions?: NullableOption<MobileAppContent[]>;
5529}
5530export interface AndroidLobApp extends MobileLobApp {
5531 // The value for the minimum applicable operating system.
5532 minimumSupportedOperatingSystem?: NullableOption<AndroidMinimumOperatingSystem>;
5533 // The package identifier.
5534 packageId?: NullableOption<string>;
5535 // The version code of Android Line of Business (LoB) app.
5536 versionCode?: NullableOption<string>;
5537 // The version name of Android Line of Business (LoB) app.
5538 versionName?: NullableOption<string>;
5539}
5540export interface AndroidStoreApp extends MobileApp {
5541 // The Android app store URL.
5542 appStoreUrl?: NullableOption<string>;
5543 // The value for the minimum applicable operating system.
5544 minimumSupportedOperatingSystem?: NullableOption<AndroidMinimumOperatingSystem>;
5545 // The package identifier.
5546 packageId?: NullableOption<string>;
5547}
5548export interface DeviceAppManagement extends Entity {
5549 // Whether the account is enabled for syncing applications from the Microsoft Store for Business.
5550 isEnabledForMicrosoftStoreForBusiness?: boolean;
5551 /**
5552 * The locale information used to sync applications from the Microsoft Store for Business. Cultures that are specific to a
5553 * country/region. The names of these cultures follow RFC 4646 (Windows Vista and later). The format is
5554 * -&amp;lt;country/regioncode2&amp;gt;, where is a lowercase two-letter code derived from ISO 639-1 and
5555 * &amp;lt;country/regioncode2&amp;gt; is an uppercase two-letter code derived from ISO 3166. For example, en-US for
5556 * English (United States) is a specific culture.
5557 */
5558 microsoftStoreForBusinessLanguage?: NullableOption<string>;
5559 // The last time an application sync from the Microsoft Store for Business was completed.
5560 microsoftStoreForBusinessLastCompletedApplicationSyncTime?: string;
5561 // The last time the apps from the Microsoft Store for Business were synced successfully for the account.
5562 microsoftStoreForBusinessLastSuccessfulSyncDateTime?: string;
5563 // The Managed eBook.
5564 managedEBooks?: NullableOption<ManagedEBook[]>;
5565 // The mobile app categories.
5566 mobileAppCategories?: NullableOption<MobileAppCategory[]>;
5567 // The Managed Device Mobile Application Configurations.
5568 mobileAppConfigurations?: NullableOption<ManagedDeviceMobileAppConfiguration[]>;
5569 // The mobile apps.
5570 mobileApps?: NullableOption<MobileApp[]>;
5571 // List of Vpp tokens for this organization.
5572 vppTokens?: NullableOption<VppToken[]>;
5573 // Android managed app policies.
5574 androidManagedAppProtections?: NullableOption<AndroidManagedAppProtection[]>;
5575 // Default managed app policies.
5576 defaultManagedAppProtections?: NullableOption<DefaultManagedAppProtection[]>;
5577 // iOS managed app policies.
5578 iosManagedAppProtections?: NullableOption<IosManagedAppProtection[]>;
5579 // Managed app policies.
5580 managedAppPolicies?: NullableOption<ManagedAppPolicy[]>;
5581 // The managed app registrations.
5582 managedAppRegistrations?: NullableOption<ManagedAppRegistration[]>;
5583 // The managed app statuses.
5584 managedAppStatuses?: NullableOption<ManagedAppStatus[]>;
5585 // Windows information protection for apps running on devices which are MDM enrolled.
5586 mdmWindowsInformationProtectionPolicies?: NullableOption<MdmWindowsInformationProtectionPolicy[]>;
5587 // Targeted managed app configurations.
5588 targetedManagedAppConfigurations?: NullableOption<TargetedManagedAppConfiguration[]>;
5589 // Windows information protection for apps running on devices which are not MDM enrolled.
5590 windowsInformationProtectionPolicies?: NullableOption<WindowsInformationProtectionPolicy[]>;
5591}
5592export interface ManagedEBook extends Entity {
5593 // The date and time when the eBook file was created.
5594 createdDateTime?: string;
5595 // Description.
5596 description?: NullableOption<string>;
5597 // Name of the eBook.
5598 displayName?: string;
5599 // The more information Url.
5600 informationUrl?: NullableOption<string>;
5601 // Book cover.
5602 largeCover?: NullableOption<MimeContent>;
5603 // The date and time when the eBook was last modified.
5604 lastModifiedDateTime?: string;
5605 // The privacy statement Url.
5606 privacyInformationUrl?: NullableOption<string>;
5607 // The date and time when the eBook was published.
5608 publishedDateTime?: string;
5609 // Publisher.
5610 publisher?: NullableOption<string>;
5611 // The list of assignments for this eBook.
5612 assignments?: NullableOption<ManagedEBookAssignment[]>;
5613 // The list of installation states for this eBook.
5614 deviceStates?: NullableOption<DeviceInstallState[]>;
5615 // Mobile App Install Summary.
5616 installSummary?: NullableOption<EBookInstallSummary>;
5617 // The list of installation states for this eBook.
5618 userStateSummary?: NullableOption<UserInstallStateSummary[]>;
5619}
5620export interface MobileAppCategory extends Entity {
5621 // The name of the app category.
5622 displayName?: NullableOption<string>;
5623 // The date and time the mobileAppCategory was last modified.
5624 lastModifiedDateTime?: string;
5625}
5626export interface ManagedDeviceMobileAppConfiguration extends Entity {
5627 // DateTime the object was created.
5628 createdDateTime?: string;
5629 // Admin provided description of the Device Configuration.
5630 description?: NullableOption<string>;
5631 // Admin provided name of the device configuration.
5632 displayName?: string;
5633 // DateTime the object was last modified.
5634 lastModifiedDateTime?: string;
5635 // the associated app.
5636 targetedMobileApps?: NullableOption<string[]>;
5637 // Version of the device configuration.
5638 version?: number;
5639 // The list of group assignemenets for app configration.
5640 assignments?: NullableOption<ManagedDeviceMobileAppConfigurationAssignment[]>;
5641 // List of ManagedDeviceMobileAppConfigurationDeviceStatus.
5642 deviceStatuses?: NullableOption<ManagedDeviceMobileAppConfigurationDeviceStatus[]>;
5643 // App configuration device status summary.
5644 deviceStatusSummary?: NullableOption<ManagedDeviceMobileAppConfigurationDeviceSummary>;
5645 // List of ManagedDeviceMobileAppConfigurationUserStatus.
5646 userStatuses?: NullableOption<ManagedDeviceMobileAppConfigurationUserStatus[]>;
5647 // App configuration user status summary.
5648 userStatusSummary?: NullableOption<ManagedDeviceMobileAppConfigurationUserSummary>;
5649}
5650export interface VppToken extends Entity {
5651 // The apple Id associated with the given Apple Volume Purchase Program Token.
5652 appleId?: NullableOption<string>;
5653 // Whether or not apps for the VPP token will be automatically updated.
5654 automaticallyUpdateApps?: boolean;
5655 // Whether or not apps for the VPP token will be automatically updated.
5656 countryOrRegion?: NullableOption<string>;
5657 // The expiration date time of the Apple Volume Purchase Program Token.
5658 expirationDateTime?: string;
5659 // Last modification date time associated with the Apple Volume Purchase Program Token.
5660 lastModifiedDateTime?: string;
5661 /**
5662 * The last time when an application sync was done with the Apple volume purchase program service using the the Apple
5663 * Volume Purchase Program Token.
5664 */
5665 lastSyncDateTime?: string;
5666 /**
5667 * Current sync status of the last application sync which was triggered using the Apple Volume Purchase Program Token.
5668 * Possible values are: none, inProgress, completed, failed. Possible values are: none, inProgress, completed, failed.
5669 */
5670 lastSyncStatus?: VppTokenSyncStatus;
5671 // The organization associated with the Apple Volume Purchase Program Token
5672 organizationName?: NullableOption<string>;
5673 /**
5674 * Current state of the Apple Volume Purchase Program Token. Possible values are: unknown, valid, expired, invalid,
5675 * assignedToExternalMDM. Possible values are: unknown, valid, expired, invalid, assignedToExternalMDM,
5676 * duplicateLocationId.
5677 */
5678 state?: VppTokenState;
5679 // The Apple Volume Purchase Program Token string downloaded from the Apple Volume Purchase Program.
5680 token?: NullableOption<string>;
5681 /**
5682 * The type of volume purchase program which the given Apple Volume Purchase Program Token is associated with. Possible
5683 * values are: business, education. Possible values are: business, education.
5684 */
5685 vppTokenAccountType?: VppTokenAccountType;
5686}
5687export interface ManagedAppPolicy extends Entity {
5688 // The date and time the policy was created.
5689 createdDateTime?: string;
5690 // The policy's description.
5691 description?: NullableOption<string>;
5692 // Policy display name.
5693 displayName?: string;
5694 // Last time the policy was modified.
5695 lastModifiedDateTime?: string;
5696 // Version of the entity.
5697 version?: NullableOption<string>;
5698}
5699export interface ManagedAppProtection extends ManagedAppPolicy {
5700 // Data storage locations where a user may store managed data.
5701 allowedDataStorageLocations?: ManagedAppDataStorageLocation[];
5702 // Sources from which data is allowed to be transferred. Possible values are: allApps, managedApps, none.
5703 allowedInboundDataTransferSources?: ManagedAppDataTransferLevel;
5704 /**
5705 * The level to which the clipboard may be shared between apps on the managed device. Possible values are: allApps,
5706 * managedAppsWithPasteIn, managedApps, blocked.
5707 */
5708 allowedOutboundClipboardSharingLevel?: ManagedAppClipboardSharingLevel;
5709 // Destinations to which data is allowed to be transferred. Possible values are: allApps, managedApps, none.
5710 allowedOutboundDataTransferDestinations?: ManagedAppDataTransferLevel;
5711 // Indicates whether contacts can be synced to the user's device.
5712 contactSyncBlocked?: boolean;
5713 // Indicates whether the backup of a managed app's data is blocked.
5714 dataBackupBlocked?: boolean;
5715 // Indicates whether device compliance is required.
5716 deviceComplianceRequired?: boolean;
5717 // Indicates whether use of the app pin is required if the device pin is set.
5718 disableAppPinIfDevicePinIsSet?: boolean;
5719 // Indicates whether use of the fingerprint reader is allowed in place of a pin if PinRequired is set to True.
5720 fingerprintBlocked?: boolean;
5721 /**
5722 * Indicates in which managed browser(s) that internet links should be opened. When this property is configured,
5723 * ManagedBrowserToOpenLinksRequired should be true. Possible values are: notConfigured, microsoftEdge.
5724 */
5725 managedBrowser?: ManagedBrowserType;
5726 /**
5727 * Indicates whether internet links should be opened in the managed browser app, or any custom browser specified by
5728 * CustomBrowserProtocol (for iOS) or CustomBrowserPackageId/CustomBrowserDisplayName (for Android)
5729 */
5730 managedBrowserToOpenLinksRequired?: boolean;
5731 // Maximum number of incorrect pin retry attempts before the managed app is either blocked or wiped.
5732 maximumPinRetries?: number;
5733 // Minimum pin length required for an app-level pin if PinRequired is set to True
5734 minimumPinLength?: number;
5735 // Versions less than the specified version will block the managed app from accessing company data.
5736 minimumRequiredAppVersion?: NullableOption<string>;
5737 // Versions less than the specified version will block the managed app from accessing company data.
5738 minimumRequiredOsVersion?: NullableOption<string>;
5739 // Versions less than the specified version will result in warning message on the managed app.
5740 minimumWarningAppVersion?: NullableOption<string>;
5741 // Versions less than the specified version will result in warning message on the managed app from accessing company data.
5742 minimumWarningOsVersion?: NullableOption<string>;
5743 // Indicates whether organizational credentials are required for app use.
5744 organizationalCredentialsRequired?: boolean;
5745 // TimePeriod before the all-level pin must be reset if PinRequired is set to True.
5746 periodBeforePinReset?: string;
5747 // The period after which access is checked when the device is not connected to the internet.
5748 periodOfflineBeforeAccessCheck?: string;
5749 // The amount of time an app is allowed to remain disconnected from the internet before all managed data it is wiped.
5750 periodOfflineBeforeWipeIsEnforced?: string;
5751 // The period after which access is checked when the device is connected to the internet.
5752 periodOnlineBeforeAccessCheck?: string;
5753 /**
5754 * Character set which may be used for an app-level pin if PinRequired is set to True. Possible values are: numeric,
5755 * alphanumericAndSymbol.
5756 */
5757 pinCharacterSet?: ManagedAppPinCharacterSet;
5758 // Indicates whether an app-level pin is required.
5759 pinRequired?: boolean;
5760 // Indicates whether printing is allowed from managed apps.
5761 printBlocked?: boolean;
5762 // Indicates whether users may use the 'Save As' menu item to save a copy of protected files.
5763 saveAsBlocked?: boolean;
5764 // Indicates whether simplePin is blocked.
5765 simplePinBlocked?: boolean;
5766}
5767export interface TargetedManagedAppProtection extends ManagedAppProtection {
5768 // Indicates if the policy is deployed to any inclusion groups or not.
5769 isAssigned?: boolean;
5770 // Navigation property to list of inclusion and exclusion groups to which the policy is deployed.
5771 assignments?: NullableOption<TargetedManagedAppPolicyAssignment[]>;
5772}
5773export interface AndroidManagedAppProtection extends TargetedManagedAppProtection {
5774 // Friendly name of the preferred custom browser to open weblink on Android.
5775 customBrowserDisplayName?: NullableOption<string>;
5776 // Unique identifier of a custom browser to open weblink on Android.
5777 customBrowserPackageId?: NullableOption<string>;
5778 // Count of apps to which the current policy is deployed.
5779 deployedAppCount?: number;
5780 // When this setting is enabled, app level encryption is disabled if device level encryption is enabled
5781 disableAppEncryptionIfDeviceEncryptionIsEnabled?: boolean;
5782 // Indicates whether application data for managed apps should be encrypted
5783 encryptAppData?: boolean;
5784 // Define the oldest required Android security patch level a user can have to gain secure access to the app.
5785 minimumRequiredPatchVersion?: NullableOption<string>;
5786 // Define the oldest recommended Android security patch level a user can have for secure access to the app.
5787 minimumWarningPatchVersion?: NullableOption<string>;
5788 // Indicates whether a managed user can take screen captures of managed apps
5789 screenCaptureBlocked?: boolean;
5790 // List of apps to which the policy is deployed.
5791 apps?: NullableOption<ManagedMobileApp[]>;
5792 // Navigation property to deployment summary of the configuration.
5793 deploymentSummary?: NullableOption<ManagedAppPolicyDeploymentSummary>;
5794}
5795export interface DefaultManagedAppProtection extends ManagedAppProtection {
5796 /**
5797 * Type of encryption which should be used for data in a managed app. (iOS Only). Possible values are: useDeviceSettings,
5798 * afterDeviceRestart, whenDeviceLockedExceptOpenFiles, whenDeviceLocked.
5799 */
5800 appDataEncryptionType?: ManagedAppDataEncryptionType;
5801 // A set of string key and string value pairs to be sent to the affected users, unalterned by this service
5802 customSettings?: KeyValuePair[];
5803 // Count of apps to which the current policy is deployed.
5804 deployedAppCount?: number;
5805 // When this setting is enabled, app level encryption is disabled if device level encryption is enabled. (Android only)
5806 disableAppEncryptionIfDeviceEncryptionIsEnabled?: boolean;
5807 // Indicates whether managed-app data should be encrypted. (Android only)
5808 encryptAppData?: boolean;
5809 // Indicates whether use of the FaceID is allowed in place of a pin if PinRequired is set to True. (iOS Only)
5810 faceIdBlocked?: boolean;
5811 /**
5812 * Define the oldest required Android security patch level a user can have to gain secure access to the app. (Android
5813 * only)
5814 */
5815 minimumRequiredPatchVersion?: NullableOption<string>;
5816 // Versions less than the specified version will block the managed app from accessing company data. (iOS Only)
5817 minimumRequiredSdkVersion?: NullableOption<string>;
5818 // Define the oldest recommended Android security patch level a user can have for secure access to the app. (Android only)
5819 minimumWarningPatchVersion?: NullableOption<string>;
5820 // Indicates whether screen capture is blocked. (Android only)
5821 screenCaptureBlocked?: boolean;
5822 // List of apps to which the policy is deployed.
5823 apps?: NullableOption<ManagedMobileApp[]>;
5824 // Navigation property to deployment summary of the configuration.
5825 deploymentSummary?: NullableOption<ManagedAppPolicyDeploymentSummary>;
5826}
5827// tslint:disable-next-line: interface-name
5828export interface IosManagedAppProtection extends TargetedManagedAppProtection {
5829 /**
5830 * Type of encryption which should be used for data in a managed app. Possible values are: useDeviceSettings,
5831 * afterDeviceRestart, whenDeviceLockedExceptOpenFiles, whenDeviceLocked.
5832 */
5833 appDataEncryptionType?: ManagedAppDataEncryptionType;
5834 // A custom browser protocol to open weblink on iOS.
5835 customBrowserProtocol?: NullableOption<string>;
5836 // Count of apps to which the current policy is deployed.
5837 deployedAppCount?: number;
5838 // Indicates whether use of the FaceID is allowed in place of a pin if PinRequired is set to True.
5839 faceIdBlocked?: boolean;
5840 // Versions less than the specified version will block the managed app from accessing company data.
5841 minimumRequiredSdkVersion?: NullableOption<string>;
5842 // List of apps to which the policy is deployed.
5843 apps?: NullableOption<ManagedMobileApp[]>;
5844 // Navigation property to deployment summary of the configuration.
5845 deploymentSummary?: NullableOption<ManagedAppPolicyDeploymentSummary>;
5846}
5847export interface ManagedAppStatus extends Entity {
5848 // Friendly name of the status report.
5849 displayName?: NullableOption<string>;
5850 // Version of the entity.
5851 version?: NullableOption<string>;
5852}
5853export interface WindowsInformationProtection extends ManagedAppPolicy {
5854 // Specifies whether to allow Azure RMS encryption for WIP
5855 azureRightsManagementServicesAllowed?: boolean;
5856 /**
5857 * Specifies a recovery certificate that can be used for data recovery of encrypted files. This is the same as the data
5858 * recovery agent(DRA) certificate for encrypting file system(EFS)
5859 */
5860 dataRecoveryCertificate?: NullableOption<WindowsInformationProtectionDataRecoveryCertificate>;
5861 /**
5862 * WIP enforcement level.See the Enum definition for supported values. Possible values are: noProtection,
5863 * encryptAndAuditOnly, encryptAuditAndPrompt, encryptAuditAndBlock.
5864 */
5865 enforcementLevel?: WindowsInformationProtectionEnforcementLevel;
5866 // Primary enterprise domain
5867 enterpriseDomain?: NullableOption<string>;
5868 /**
5869 * This is the comma-separated list of internal proxy servers. For example, '157.54.14.28, 157.54.11.118, 10.202.14.167,
5870 * 157.53.14.163, 157.69.210.59'. These proxies have been configured by the admin to connect to specific resources on the
5871 * Internet. They are considered to be enterprise network locations. The proxies are only leveraged in configuring the
5872 * EnterpriseProxiedDomains policy to force traffic to the matched domains through these proxies
5873 */
5874 enterpriseInternalProxyServers?: NullableOption<WindowsInformationProtectionResourceCollection[]>;
5875 /**
5876 * Sets the enterprise IP ranges that define the computers in the enterprise network. Data that comes from those computers
5877 * will be considered part of the enterprise and protected. These locations will be considered a safe destination for
5878 * enterprise data to be shared to
5879 */
5880 enterpriseIPRanges?: NullableOption<WindowsInformationProtectionIPRangeCollection[]>;
5881 /**
5882 * Boolean value that tells the client to accept the configured list and not to use heuristics to attempt to find other
5883 * subnets. Default is false
5884 */
5885 enterpriseIPRangesAreAuthoritative?: boolean;
5886 /**
5887 * This is the list of domains that comprise the boundaries of the enterprise. Data from one of these domains that is sent
5888 * to a device will be considered enterprise data and protected These locations will be considered a safe destination for
5889 * enterprise data to be shared to
5890 */
5891 enterpriseNetworkDomainNames?: NullableOption<WindowsInformationProtectionResourceCollection[]>;
5892 // List of enterprise domains to be protected
5893 enterpriseProtectedDomainNames?: NullableOption<WindowsInformationProtectionResourceCollection[]>;
5894 /**
5895 * Contains a list of Enterprise resource domains hosted in the cloud that need to be protected. Connections to these
5896 * resources are considered enterprise data. If a proxy is paired with a cloud resource, traffic to the cloud resource
5897 * will be routed through the enterprise network via the denoted proxy server (on Port 80). A proxy server used for this
5898 * purpose must also be configured using the EnterpriseInternalProxyServers policy
5899 */
5900 enterpriseProxiedDomains?: NullableOption<WindowsInformationProtectionProxiedDomainCollection[]>;
5901 // This is a list of proxy servers. Any server not on this list is considered non-enterprise
5902 enterpriseProxyServers?: NullableOption<WindowsInformationProtectionResourceCollection[]>;
5903 /**
5904 * Boolean value that tells the client to accept the configured list of proxies and not try to detect other work proxies.
5905 * Default is false
5906 */
5907 enterpriseProxyServersAreAuthoritative?: boolean;
5908 /**
5909 * Exempt applications can also access enterprise data, but the data handled by those applications are not protected. This
5910 * is because some critical enterprise applications may have compatibility problems with encrypted data.
5911 */
5912 exemptApps?: NullableOption<WindowsInformationProtectionApp[]>;
5913 /**
5914 * Determines whether overlays are added to icons for WIP protected files in Explorer and enterprise only app tiles in the
5915 * Start menu. Starting in Windows 10, version 1703 this setting also configures the visibility of the WIP icon in the
5916 * title bar of a WIP-protected app
5917 */
5918 iconsVisible?: boolean;
5919 // This switch is for the Windows Search Indexer, to allow or disallow indexing of items
5920 indexingEncryptedStoresOrItemsBlocked?: boolean;
5921 // Indicates if the policy is deployed to any inclusion groups or not.
5922 isAssigned?: boolean;
5923 // List of domain names that can used for work or personal resource
5924 neutralDomainResources?: NullableOption<WindowsInformationProtectionResourceCollection[]>;
5925 /**
5926 * Protected applications can access enterprise data and the data handled by those applications are protected with
5927 * encryption
5928 */
5929 protectedApps?: NullableOption<WindowsInformationProtectionApp[]>;
5930 // Specifies whether the protection under lock feature (also known as encrypt under pin) should be configured
5931 protectionUnderLockConfigRequired?: boolean;
5932 /**
5933 * This policy controls whether to revoke the WIP keys when a device unenrolls from the management service. If set to 1
5934 * (Don't revoke keys), the keys will not be revoked and the user will continue to have access to protected files after
5935 * unenrollment. If the keys are not revoked, there will be no revoked file cleanup subsequently.
5936 */
5937 revokeOnUnenrollDisabled?: boolean;
5938 /**
5939 * TemplateID GUID to use for RMS encryption. The RMS template allows the IT admin to configure the details about who has
5940 * access to RMS-protected file and how long they have access
5941 */
5942 rightsManagementServicesTemplateId?: NullableOption<string>;
5943 /**
5944 * Specifies a list of file extensions, so that files with these extensions are encrypted when copying from an SMB share
5945 * within the corporate boundary
5946 */
5947 smbAutoEncryptedFileExtensions?: NullableOption<WindowsInformationProtectionResourceCollection[]>;
5948 // Navigation property to list of security groups targeted for policy.
5949 assignments?: NullableOption<TargetedManagedAppPolicyAssignment[]>;
5950 // Another way to input exempt apps through xml files
5951 exemptAppLockerFiles?: NullableOption<WindowsInformationProtectionAppLockerFile[]>;
5952 // Another way to input protected apps through xml files
5953 protectedAppLockerFiles?: NullableOption<WindowsInformationProtectionAppLockerFile[]>;
5954}
5955// tslint:disable-next-line: no-empty-interface
5956export interface MdmWindowsInformationProtectionPolicy extends WindowsInformationProtection {}
5957export interface ManagedAppConfiguration extends ManagedAppPolicy {
5958 /**
5959 * A set of string key and string value pairs to be sent to apps for users to whom the configuration is scoped, unalterned
5960 * by this service
5961 */
5962 customSettings?: KeyValuePair[];
5963}
5964export interface TargetedManagedAppConfiguration extends ManagedAppConfiguration {
5965 // Count of apps to which the current policy is deployed.
5966 deployedAppCount?: number;
5967 // Indicates if the policy is deployed to any inclusion groups or not.
5968 isAssigned?: boolean;
5969 // List of apps to which the policy is deployed.
5970 apps?: NullableOption<ManagedMobileApp[]>;
5971 // Navigation property to list of inclusion and exclusion groups to which the policy is deployed.
5972 assignments?: NullableOption<TargetedManagedAppPolicyAssignment[]>;
5973 // Navigation property to deployment summary of the configuration.
5974 deploymentSummary?: NullableOption<ManagedAppPolicyDeploymentSummary>;
5975}
5976export interface WindowsInformationProtectionPolicy extends WindowsInformationProtection {
5977 // Offline interval before app data is wiped (days)
5978 daysWithoutContactBeforeUnenroll?: number;
5979 // Enrollment url for the MDM
5980 mdmEnrollmentUrl?: NullableOption<string>;
5981 /**
5982 * Specifies the maximum amount of time (in minutes) allowed after the device is idle that will cause the device to become
5983 * PIN or password locked. Range is an integer X where 0 &amp;lt;= X &amp;lt;= 999.
5984 */
5985 minutesOfInactivityBeforeDeviceLock?: number;
5986 /**
5987 * Integer value that specifies the number of past PINs that can be associated to a user account that can't be reused. The
5988 * largest number you can configure for this policy setting is 50. The lowest number you can configure for this policy
5989 * setting is 0. If this policy is set to 0, then storage of previous PINs is not required. This node was added in Windows
5990 * 10, version 1511. Default is 0.
5991 */
5992 numberOfPastPinsRemembered?: number;
5993 /**
5994 * The number of authentication failures allowed before the device will be wiped. A value of 0 disables device wipe
5995 * functionality. Range is an integer X where 4 &amp;lt;= X &amp;lt;= 16 for desktop and 0 &amp;lt;= X &amp;lt;= 999 for
5996 * mobile devices.
5997 */
5998 passwordMaximumAttemptCount?: number;
5999 /**
6000 * Integer value specifies the period of time (in days) that a PIN can be used before the system requires the user to
6001 * change it. The largest number you can configure for this policy setting is 730. The lowest number you can configure for
6002 * this policy setting is 0. If this policy is set to 0, then the user's PIN will never expire. This node was added in
6003 * Windows 10, version 1511. Default is 0.
6004 */
6005 pinExpirationDays?: number;
6006 /**
6007 * Integer value that configures the use of lowercase letters in the Windows Hello for Business PIN. Default is NotAllow.
6008 * Possible values are: notAllow, requireAtLeastOne, allow.
6009 */
6010 pinLowercaseLetters?: WindowsInformationProtectionPinCharacterRequirements;
6011 /**
6012 * Integer value that sets the minimum number of characters required for the PIN. Default value is 4. The lowest number
6013 * you can configure for this policy setting is 4. The largest number you can configure must be less than the number
6014 * configured in the Maximum PIN length policy setting or the number 127, whichever is the lowest.
6015 */
6016 pinMinimumLength?: number;
6017 /**
6018 * Integer value that configures the use of special characters in the Windows Hello for Business PIN. Valid special
6019 * characters for Windows Hello for Business PIN gestures include: ! ' # $ % &amp; ' ( ) + , - . / : ; &amp;lt; = &amp;gt;
6020 * ? @ [ / ] ^ ` {
6021 */
6022 pinSpecialCharacters?: WindowsInformationProtectionPinCharacterRequirements;
6023 /**
6024 * Integer value that configures the use of uppercase letters in the Windows Hello for Business PIN. Default is NotAllow.
6025 * Possible values are: notAllow, requireAtLeastOne, allow.
6026 */
6027 pinUppercaseLetters?: WindowsInformationProtectionPinCharacterRequirements;
6028 // New property in RS2, pending documentation
6029 revokeOnMdmHandoffDisabled?: boolean;
6030 // Boolean value that sets Windows Hello for Business as a method for signing into Windows.
6031 windowsHelloForBusinessBlocked?: boolean;
6032}
6033// tslint:disable-next-line: interface-name
6034export interface IosLobApp extends MobileLobApp {
6035 // The iOS architecture for which this app can run on.
6036 applicableDeviceType?: IosDeviceType;
6037 // The build number of iOS Line of Business (LoB) app.
6038 buildNumber?: NullableOption<string>;
6039 // The Identity Name.
6040 bundleId?: NullableOption<string>;
6041 // The expiration time.
6042 expirationDateTime?: NullableOption<string>;
6043 // The value for the minimum applicable operating system.
6044 minimumSupportedOperatingSystem?: NullableOption<IosMinimumOperatingSystem>;
6045 // The version number of iOS Line of Business (LoB) app.
6046 versionNumber?: NullableOption<string>;
6047}
6048// tslint:disable-next-line: interface-name
6049export interface IosMobileAppConfiguration extends ManagedDeviceMobileAppConfiguration {
6050 // mdm app configuration Base64 binary.
6051 encodedSettingXml?: NullableOption<number>;
6052 // app configuration setting items.
6053 settings?: NullableOption<AppConfigurationSettingItem[]>;
6054}
6055// tslint:disable-next-line: interface-name
6056export interface IosStoreApp extends MobileApp {
6057 // The iOS architecture for which this app can run on.
6058 applicableDeviceType?: IosDeviceType;
6059 // The Apple App Store URL
6060 appStoreUrl?: NullableOption<string>;
6061 // The Identity Name.
6062 bundleId?: NullableOption<string>;
6063 // The value for the minimum applicable operating system.
6064 minimumSupportedOperatingSystem?: NullableOption<IosMinimumOperatingSystem>;
6065}
6066// tslint:disable-next-line: interface-name
6067export interface IosVppApp extends MobileApp {
6068 // The applicable iOS Device Type.
6069 applicableDeviceType?: NullableOption<IosDeviceType>;
6070 // The store URL.
6071 appStoreUrl?: NullableOption<string>;
6072 // The Identity Name.
6073 bundleId?: NullableOption<string>;
6074 // The supported License Type.
6075 licensingType?: NullableOption<VppLicensingType>;
6076 // The VPP application release date and time.
6077 releaseDateTime?: NullableOption<string>;
6078 // The total number of VPP licenses.
6079 totalLicenseCount?: number;
6080 // The number of VPP licenses in use.
6081 usedLicenseCount?: number;
6082 /**
6083 * The type of volume purchase program which the given Apple Volume Purchase Program Token is associated with. Possible
6084 * values are: business, education. Possible values are: business, education.
6085 */
6086 vppTokenAccountType?: VppTokenAccountType;
6087 // The Apple Id associated with the given Apple Volume Purchase Program Token.
6088 vppTokenAppleId?: NullableOption<string>;
6089 // The organization associated with the Apple Volume Purchase Program Token
6090 vppTokenOrganizationName?: NullableOption<string>;
6091}
6092// tslint:disable-next-line: no-empty-interface
6093export interface MacOSOfficeSuiteApp extends MobileApp {}
6094export interface ManagedApp extends MobileApp {
6095 // The Application's availability. Possible values are: global, lineOfBusiness.
6096 appAvailability?: ManagedAppAvailability;
6097 // The Application's version.
6098 version?: NullableOption<string>;
6099}
6100export interface ManagedMobileLobApp extends ManagedApp {
6101 // The internal committed content version.
6102 committedContentVersion?: NullableOption<string>;
6103 // The name of the main Lob application file.
6104 fileName?: NullableOption<string>;
6105 // The total size, including all uploaded files.
6106 size?: number;
6107 // The list of content versions for this app.
6108 contentVersions?: NullableOption<MobileAppContent[]>;
6109}
6110export interface ManagedAndroidLobApp extends ManagedMobileLobApp {
6111 // The value for the minimum applicable operating system.
6112 minimumSupportedOperatingSystem?: NullableOption<AndroidMinimumOperatingSystem>;
6113 // The package identifier.
6114 packageId?: NullableOption<string>;
6115 // The version code of managed Android Line of Business (LoB) app.
6116 versionCode?: NullableOption<string>;
6117 // The version name of managed Android Line of Business (LoB) app.
6118 versionName?: NullableOption<string>;
6119}
6120export interface ManagedAndroidStoreApp extends ManagedApp {
6121 // The Android AppStoreUrl.
6122 appStoreUrl?: string;
6123 // The value for the minimum supported operating system.
6124 minimumSupportedOperatingSystem?: AndroidMinimumOperatingSystem;
6125 // The app's package ID.
6126 packageId?: NullableOption<string>;
6127}
6128export interface ManagedDeviceMobileAppConfigurationAssignment extends Entity {
6129 // Assignment target that the T&amp;C policy is assigned to.
6130 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
6131}
6132export interface ManagedDeviceMobileAppConfigurationDeviceStatus extends Entity {
6133 // The DateTime when device compliance grace period expires
6134 complianceGracePeriodExpirationDateTime?: string;
6135 // Device name of the DevicePolicyStatus.
6136 deviceDisplayName?: NullableOption<string>;
6137 // The device model that is being reported
6138 deviceModel?: NullableOption<string>;
6139 // Last modified date time of the policy report.
6140 lastReportedDateTime?: string;
6141 /**
6142 * Compliance status of the policy report. Possible values are: unknown, notApplicable, compliant, remediated,
6143 * nonCompliant, error, conflict, notAssigned.
6144 */
6145 status?: ComplianceStatus;
6146 // The User Name that is being reported
6147 userName?: NullableOption<string>;
6148 // UserPrincipalName.
6149 userPrincipalName?: NullableOption<string>;
6150}
6151export interface ManagedDeviceMobileAppConfigurationDeviceSummary extends Entity {
6152 // Version of the policy for that overview
6153 configurationVersion?: number;
6154 // Number of error devices
6155 errorCount?: number;
6156 // Number of failed devices
6157 failedCount?: number;
6158 // Last update time
6159 lastUpdateDateTime?: string;
6160 // Number of not applicable devices
6161 notApplicableCount?: number;
6162 // Number of pending devices
6163 pendingCount?: number;
6164 // Number of succeeded devices
6165 successCount?: number;
6166}
6167export interface ManagedDeviceMobileAppConfigurationUserStatus extends Entity {
6168 // Devices count for that user.
6169 devicesCount?: number;
6170 // Last modified date time of the policy report.
6171 lastReportedDateTime?: string;
6172 /**
6173 * Compliance status of the policy report. Possible values are: unknown, notApplicable, compliant, remediated,
6174 * nonCompliant, error, conflict, notAssigned.
6175 */
6176 status?: ComplianceStatus;
6177 // User name of the DevicePolicyStatus.
6178 userDisplayName?: NullableOption<string>;
6179 // UserPrincipalName.
6180 userPrincipalName?: NullableOption<string>;
6181}
6182export interface ManagedDeviceMobileAppConfigurationUserSummary extends Entity {
6183 // Version of the policy for that overview
6184 configurationVersion?: number;
6185 // Number of error Users
6186 errorCount?: number;
6187 // Number of failed Users
6188 failedCount?: number;
6189 // Last update time
6190 lastUpdateDateTime?: string;
6191 // Number of not applicable users
6192 notApplicableCount?: number;
6193 // Number of pending Users
6194 pendingCount?: number;
6195 // Number of succeeded Users
6196 successCount?: number;
6197}
6198export interface ManagedIOSLobApp extends ManagedMobileLobApp {
6199 // The iOS architecture for which this app can run on.
6200 applicableDeviceType?: IosDeviceType;
6201 // The build number of managed iOS Line of Business (LoB) app.
6202 buildNumber?: NullableOption<string>;
6203 // The Identity Name.
6204 bundleId?: NullableOption<string>;
6205 // The expiration time.
6206 expirationDateTime?: NullableOption<string>;
6207 // The value for the minimum applicable operating system.
6208 minimumSupportedOperatingSystem?: NullableOption<IosMinimumOperatingSystem>;
6209 // The version number of managed iOS Line of Business (LoB) app.
6210 versionNumber?: NullableOption<string>;
6211}
6212export interface ManagedIOSStoreApp extends ManagedApp {
6213 // The iOS architecture for which this app can run on.
6214 applicableDeviceType?: IosDeviceType;
6215 // The Apple AppStoreUrl.
6216 appStoreUrl?: string;
6217 // The app's Bundle ID.
6218 bundleId?: NullableOption<string>;
6219 // The value for the minimum supported operating system.
6220 minimumSupportedOperatingSystem?: IosMinimumOperatingSystem;
6221}
6222export interface MobileAppContent extends Entity {
6223 // The list of files for this app content version.
6224 files?: NullableOption<MobileAppContentFile[]>;
6225}
6226export interface MicrosoftStoreForBusinessApp extends MobileApp {
6227 // The app license type. Possible values are: offline, online.
6228 licenseType?: MicrosoftStoreForBusinessLicenseType;
6229 // The app package identifier
6230 packageIdentityName?: NullableOption<string>;
6231 // The app product key
6232 productKey?: NullableOption<string>;
6233 // The total number of Microsoft Store for Business licenses.
6234 totalLicenseCount?: number;
6235 // The number of Microsoft Store for Business licenses in use.
6236 usedLicenseCount?: number;
6237}
6238export interface MobileAppAssignment extends Entity {
6239 /**
6240 * The install intent defined by the admin. Possible values are: available, required, uninstall,
6241 * availableWithoutEnrollment.
6242 */
6243 intent?: InstallIntent;
6244 // The settings for target assignment defined by the admin.
6245 settings?: NullableOption<MobileAppAssignmentSettings>;
6246 // The target group assignment defined by the admin.
6247 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
6248}
6249export interface MobileAppContentFile extends Entity {
6250 // The Azure Storage URI.
6251 azureStorageUri?: NullableOption<string>;
6252 // The time the Azure storage Uri expires.
6253 azureStorageUriExpirationDateTime?: NullableOption<string>;
6254 // The time the file was created.
6255 createdDateTime?: string;
6256 // A value indicating whether the file is committed.
6257 isCommitted?: boolean;
6258 // The manifest information.
6259 manifest?: NullableOption<number>;
6260 // the file name.
6261 name?: NullableOption<string>;
6262 // The size of the file prior to encryption.
6263 size?: number;
6264 // The size of the file after encryption.
6265 sizeEncrypted?: number;
6266 /**
6267 * The state of the current upload request. Possible values are: success, transientError, error, unknown,
6268 * azureStorageUriRequestSuccess, azureStorageUriRequestPending, azureStorageUriRequestFailed,
6269 * azureStorageUriRequestTimedOut, azureStorageUriRenewalSuccess, azureStorageUriRenewalPending,
6270 * azureStorageUriRenewalFailed, azureStorageUriRenewalTimedOut, commitFileSuccess, commitFilePending, commitFileFailed,
6271 * commitFileTimedOut.
6272 */
6273 uploadState?: MobileAppContentFileUploadState;
6274}
6275export interface WebApp extends MobileApp {
6276 // The web app URL.
6277 appUrl?: NullableOption<string>;
6278 // Whether or not to use managed browser. This property is only applicable for Android and IOS.
6279 useManagedBrowser?: boolean;
6280}
6281export interface Win32LobApp extends MobileLobApp {
6282 // The Windows architecture(s) for which this app can run on. Possible values are: none, x86, x64, arm, neutral, arm64.
6283 applicableArchitectures?: WindowsArchitecture;
6284 // The command line to install this app
6285 installCommandLine?: NullableOption<string>;
6286 // The install experience for this app.
6287 installExperience?: NullableOption<Win32LobAppInstallExperience>;
6288 // The value for the minimum CPU speed which is required to install this app.
6289 minimumCpuSpeedInMHz?: NullableOption<number>;
6290 // The value for the minimum free disk space which is required to install this app.
6291 minimumFreeDiskSpaceInMB?: NullableOption<number>;
6292 // The value for the minimum physical memory which is required to install this app.
6293 minimumMemoryInMB?: NullableOption<number>;
6294 // The value for the minimum number of processors which is required to install this app.
6295 minimumNumberOfProcessors?: NullableOption<number>;
6296 // The value for the minimum supported windows release.
6297 minimumSupportedWindowsRelease?: NullableOption<string>;
6298 // The MSI details if this Win32 app is an MSI app.
6299 msiInformation?: NullableOption<Win32LobAppMsiInformation>;
6300 // The return codes for post installation behavior.
6301 returnCodes?: NullableOption<Win32LobAppReturnCode[]>;
6302 // The detection and requirement rules for this app.
6303 rules?: NullableOption<Win32LobAppRule[]>;
6304 // The relative path of the setup file in the encrypted Win32LobApp package.
6305 setupFilePath?: NullableOption<string>;
6306 // The command line to uninstall this app
6307 uninstallCommandLine?: NullableOption<string>;
6308}
6309export interface WindowsMobileMSI extends MobileLobApp {
6310 // The command line.
6311 commandLine?: NullableOption<string>;
6312 /**
6313 * A boolean to control whether the app's version will be used to detect the app after it is installed on a device. Set
6314 * this to true for Windows Mobile MSI Line of Business (LoB) apps that use a self update feature.
6315 */
6316 ignoreVersionDetection?: boolean;
6317 // The product code.
6318 productCode?: NullableOption<string>;
6319 // The product version of Windows Mobile MSI Line of Business (LoB) app.
6320 productVersion?: NullableOption<string>;
6321}
6322export interface WindowsUniversalAppX extends MobileLobApp {
6323 // The Windows architecture(s) for which this app can run on. Possible values are: none, x86, x64, arm, neutral, arm64.
6324 applicableArchitectures?: WindowsArchitecture;
6325 /**
6326 * The Windows device type(s) for which this app can run on. Possible values are: none, desktop, mobile, holographic,
6327 * team.
6328 */
6329 applicableDeviceTypes?: WindowsDeviceType;
6330 // The Identity Name.
6331 identityName?: NullableOption<string>;
6332 // The Identity Publisher Hash.
6333 identityPublisherHash?: string;
6334 // The Identity Resource Identifier.
6335 identityResourceIdentifier?: NullableOption<string>;
6336 // The identity version.
6337 identityVersion?: NullableOption<string>;
6338 // Whether or not the app is a bundle.
6339 isBundle?: boolean;
6340 // The value for the minimum applicable operating system.
6341 minimumSupportedOperatingSystem?: WindowsMinimumOperatingSystem;
6342}
6343export interface DeviceInstallState extends Entity {
6344 // Device Id.
6345 deviceId?: NullableOption<string>;
6346 // Device name.
6347 deviceName?: NullableOption<string>;
6348 // The error code for install failures.
6349 errorCode?: NullableOption<string>;
6350 /**
6351 * The install state of the eBook. Possible values are: notApplicable, installed, failed, notInstalled, uninstallFailed,
6352 * unknown.
6353 */
6354 installState?: InstallState;
6355 // Last sync date and time.
6356 lastSyncDateTime?: string;
6357 // OS Description.
6358 osDescription?: NullableOption<string>;
6359 // OS Version.
6360 osVersion?: NullableOption<string>;
6361 // Device User Name.
6362 userName?: NullableOption<string>;
6363}
6364export interface EBookInstallSummary extends Entity {
6365 // Number of Devices that have failed to install this book.
6366 failedDeviceCount?: number;
6367 // Number of Users that have 1 or more device that failed to install this book.
6368 failedUserCount?: number;
6369 // Number of Devices that have successfully installed this book.
6370 installedDeviceCount?: number;
6371 // Number of Users whose devices have all succeeded to install this book.
6372 installedUserCount?: number;
6373 // Number of Devices that does not have this book installed.
6374 notInstalledDeviceCount?: number;
6375 // Number of Users that did not install this book.
6376 notInstalledUserCount?: number;
6377}
6378// tslint:disable-next-line: interface-name
6379export interface IosVppEBook extends ManagedEBook {
6380 // The Apple ID associated with Vpp token.
6381 appleId?: NullableOption<string>;
6382 // Genres.
6383 genres?: NullableOption<string[]>;
6384 // Language.
6385 language?: NullableOption<string>;
6386 // Seller.
6387 seller?: NullableOption<string>;
6388 // Total license count.
6389 totalLicenseCount?: number;
6390 // Used license count.
6391 usedLicenseCount?: number;
6392 // The Vpp token's organization name.
6393 vppOrganizationName?: NullableOption<string>;
6394 // The Vpp token ID.
6395 vppTokenId?: string;
6396}
6397export interface ManagedEBookAssignment extends Entity {
6398 // The install intent for eBook. Possible values are: available, required, uninstall, availableWithoutEnrollment.
6399 installIntent?: InstallIntent;
6400 // The assignment target for eBook.
6401 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
6402}
6403// tslint:disable-next-line: interface-name no-empty-interface
6404export interface IosVppEBookAssignment extends ManagedEBookAssignment {}
6405export interface UserInstallStateSummary extends Entity {
6406 // Failed Device Count.
6407 failedDeviceCount?: number;
6408 // Installed Device Count.
6409 installedDeviceCount?: number;
6410 // Not installed device count.
6411 notInstalledDeviceCount?: number;
6412 // User name.
6413 userName?: NullableOption<string>;
6414 // The install state of the eBook.
6415 deviceStates?: NullableOption<DeviceInstallState[]>;
6416}
6417export interface DeviceManagement extends Entity {
6418 // Intune Account ID for given tenant
6419 intuneAccountId?: string;
6420 // Account level settings.
6421 settings?: NullableOption<DeviceManagementSettings>;
6422 /**
6423 * intuneBrand contains data which is used in customizing the appearance of the Company Portal applications as well as the
6424 * end user web portal.
6425 */
6426 intuneBrand?: NullableOption<IntuneBrand>;
6427 /**
6428 * Tenant mobile device management subscription state. Possible values are: pending, active, warning, disabled, deleted,
6429 * blocked, lockedOut.
6430 */
6431 subscriptionState?: DeviceManagementSubscriptionState;
6432 // The terms and conditions associated with device management of the company.
6433 termsAndConditions?: NullableOption<TermsAndConditions[]>;
6434 // The device compliance policies.
6435 deviceCompliancePolicies?: NullableOption<DeviceCompliancePolicy[]>;
6436 // The device compliance state summary for this account.
6437 deviceCompliancePolicyDeviceStateSummary?: NullableOption<DeviceCompliancePolicyDeviceStateSummary>;
6438 // The summary states of compliance policy settings for this account.
6439 deviceCompliancePolicySettingStateSummaries?: NullableOption<DeviceCompliancePolicySettingStateSummary[]>;
6440 // The device configuration device state summary for this account.
6441 deviceConfigurationDeviceStateSummaries?: NullableOption<DeviceConfigurationDeviceStateSummary>;
6442 // The device configurations.
6443 deviceConfigurations?: NullableOption<DeviceConfiguration[]>;
6444 // The IOS software update installation statuses for this account.
6445 iosUpdateStatuses?: NullableOption<IosUpdateDeviceStatus[]>;
6446 // The software update status summary.
6447 softwareUpdateStatusSummary?: NullableOption<SoftwareUpdateStatusSummary>;
6448 // The list of Compliance Management Partners configured by the tenant.
6449 complianceManagementPartners?: NullableOption<ComplianceManagementPartner[]>;
6450 /**
6451 * The Exchange on premises conditional access settings. On premises conditional access will require devices to be both
6452 * enrolled and compliant for mail access
6453 */
6454 conditionalAccessSettings?: NullableOption<OnPremisesConditionalAccessSettings>;
6455 // The list of device categories with the tenant.
6456 deviceCategories?: NullableOption<DeviceCategory[]>;
6457 // The list of device enrollment configurations
6458 deviceEnrollmentConfigurations?: NullableOption<DeviceEnrollmentConfiguration[]>;
6459 // The list of Device Management Partners configured by the tenant.
6460 deviceManagementPartners?: NullableOption<DeviceManagementPartner[]>;
6461 // The list of Exchange Connectors configured by the tenant.
6462 exchangeConnectors?: NullableOption<DeviceManagementExchangeConnector[]>;
6463 // The list of Mobile threat Defense connectors configured by the tenant.
6464 mobileThreatDefenseConnectors?: NullableOption<MobileThreatDefenseConnector[]>;
6465 // Apple push notification certificate.
6466 applePushNotificationCertificate?: NullableOption<ApplePushNotificationCertificate>;
6467 // The list of detected apps associated with a device.
6468 detectedApps?: NullableOption<DetectedApp[]>;
6469 // Device overview
6470 managedDeviceOverview?: NullableOption<ManagedDeviceOverview>;
6471 // The list of managed devices.
6472 managedDevices?: NullableOption<ManagedDevice[]>;
6473 // The Notification Message Templates.
6474 notificationMessageTemplates?: NullableOption<NotificationMessageTemplate[]>;
6475 // The Resource Operations.
6476 resourceOperations?: NullableOption<ResourceOperation[]>;
6477 // The Role Assignments.
6478 roleAssignments?: NullableOption<DeviceAndAppManagementRoleAssignment[]>;
6479 // The Role Definitions.
6480 roleDefinitions?: NullableOption<RoleDefinition[]>;
6481 // The remote assist partners.
6482 remoteAssistancePartners?: NullableOption<RemoteAssistancePartner[]>;
6483 // The telecom expense management partners.
6484 telecomExpenseManagementPartners?: NullableOption<TelecomExpenseManagementPartner[]>;
6485 // The list of troubleshooting events for the tenant.
6486 troubleshootingEvents?: NullableOption<DeviceManagementTroubleshootingEvent[]>;
6487 // The windows information protection app learning summaries.
6488 windowsInformationProtectionAppLearningSummaries?: NullableOption<WindowsInformationProtectionAppLearningSummary[]>;
6489 // The windows information protection network learning summaries.
6490 windowsInformationProtectionNetworkLearningSummaries?: NullableOption<WindowsInformationProtectionNetworkLearningSummary[]>;
6491}
6492export interface TermsAndConditions extends Entity {
6493 /**
6494 * Administrator-supplied explanation of the terms and conditions, typically describing what it means to accept the terms
6495 * and conditions set out in the T&amp;C policy. This is shown to the user on prompts to accept the T&amp;C policy.
6496 */
6497 acceptanceStatement?: NullableOption<string>;
6498 /**
6499 * Administrator-supplied body text of the terms and conditions, typically the terms themselves. This is shown to the user
6500 * on prompts to accept the T&amp;C policy.
6501 */
6502 bodyText?: NullableOption<string>;
6503 // DateTime the object was created.
6504 createdDateTime?: string;
6505 // Administrator-supplied description of the T&amp;C policy.
6506 description?: NullableOption<string>;
6507 // Administrator-supplied name for the T&amp;C policy.
6508 displayName?: string;
6509 // DateTime the object was last modified.
6510 lastModifiedDateTime?: string;
6511 /**
6512 * Administrator-supplied title of the terms and conditions. This is shown to the user on prompts to accept the T&amp;C
6513 * policy.
6514 */
6515 title?: NullableOption<string>;
6516 /**
6517 * Integer indicating the current version of the terms. Incremented when an administrator makes a change to the terms and
6518 * wishes to require users to re-accept the modified T&amp;C policy.
6519 */
6520 version?: number;
6521 // The list of acceptance statuses for this T&amp;C policy.
6522 acceptanceStatuses?: NullableOption<TermsAndConditionsAcceptanceStatus[]>;
6523 // The list of assignments for this T&amp;C policy.
6524 assignments?: NullableOption<TermsAndConditionsAssignment[]>;
6525}
6526export interface DeviceCompliancePolicy extends Entity {
6527 // DateTime the object was created.
6528 createdDateTime?: string;
6529 // Admin provided description of the Device Configuration.
6530 description?: NullableOption<string>;
6531 // Admin provided name of the device configuration.
6532 displayName?: string;
6533 // DateTime the object was last modified.
6534 lastModifiedDateTime?: string;
6535 // Version of the device configuration.
6536 version?: number;
6537 // The collection of assignments for this compliance policy.
6538 assignments?: NullableOption<DeviceCompliancePolicyAssignment[]>;
6539 // Compliance Setting State Device Summary
6540 deviceSettingStateSummaries?: NullableOption<SettingStateDeviceSummary[]>;
6541 // List of DeviceComplianceDeviceStatus.
6542 deviceStatuses?: NullableOption<DeviceComplianceDeviceStatus[]>;
6543 // Device compliance devices status overview
6544 deviceStatusOverview?: NullableOption<DeviceComplianceDeviceOverview>;
6545 // The list of scheduled action for this rule
6546 scheduledActionsForRule?: NullableOption<DeviceComplianceScheduledActionForRule[]>;
6547 // List of DeviceComplianceUserStatus.
6548 userStatuses?: NullableOption<DeviceComplianceUserStatus[]>;
6549 // Device compliance users status overview
6550 userStatusOverview?: NullableOption<DeviceComplianceUserOverview>;
6551}
6552export interface DeviceCompliancePolicyDeviceStateSummary extends Entity {
6553 // Number of compliant devices
6554 compliantDeviceCount?: number;
6555 // Number of devices that have compliance managed by System Center Configuration Manager
6556 configManagerCount?: number;
6557 // Number of conflict devices
6558 conflictDeviceCount?: number;
6559 // Number of error devices
6560 errorDeviceCount?: number;
6561 // Number of devices that are in grace period
6562 inGracePeriodCount?: number;
6563 // Number of NonCompliant devices
6564 nonCompliantDeviceCount?: number;
6565 // Number of not applicable devices
6566 notApplicableDeviceCount?: number;
6567 // Number of remediated devices
6568 remediatedDeviceCount?: number;
6569 // Number of unknown devices
6570 unknownDeviceCount?: number;
6571}
6572export interface DeviceCompliancePolicySettingStateSummary extends Entity {
6573 // Number of compliant devices
6574 compliantDeviceCount?: number;
6575 // Number of conflict devices
6576 conflictDeviceCount?: number;
6577 // Number of error devices
6578 errorDeviceCount?: number;
6579 // Number of NonCompliant devices
6580 nonCompliantDeviceCount?: number;
6581 // Number of not applicable devices
6582 notApplicableDeviceCount?: number;
6583 /**
6584 * Setting platform. Possible values are: android, androidForWork, iOS, macOS, windowsPhone81, windows81AndLater,
6585 * windows10AndLater, androidWorkProfile, windows10XProfile, all.
6586 */
6587 platformType?: PolicyPlatformType;
6588 // Number of remediated devices
6589 remediatedDeviceCount?: number;
6590 // The setting class name and property name.
6591 setting?: NullableOption<string>;
6592 // Name of the setting.
6593 settingName?: NullableOption<string>;
6594 // Number of unknown devices
6595 unknownDeviceCount?: number;
6596 // Not yet documented
6597 deviceComplianceSettingStates?: NullableOption<DeviceComplianceSettingState[]>;
6598}
6599export interface DeviceConfigurationDeviceStateSummary extends Entity {
6600 // Number of compliant devices
6601 compliantDeviceCount?: number;
6602 // Number of conflict devices
6603 conflictDeviceCount?: number;
6604 // Number of error devices
6605 errorDeviceCount?: number;
6606 // Number of NonCompliant devices
6607 nonCompliantDeviceCount?: number;
6608 // Number of not applicable devices
6609 notApplicableDeviceCount?: number;
6610 // Number of remediated devices
6611 remediatedDeviceCount?: number;
6612 // Number of unknown devices
6613 unknownDeviceCount?: number;
6614}
6615export interface DeviceConfiguration extends Entity {
6616 // DateTime the object was created.
6617 createdDateTime?: string;
6618 // Admin provided description of the Device Configuration.
6619 description?: NullableOption<string>;
6620 // Admin provided name of the device configuration.
6621 displayName?: string;
6622 // DateTime the object was last modified.
6623 lastModifiedDateTime?: string;
6624 // Version of the device configuration.
6625 version?: number;
6626 // The list of assignments for the device configuration profile.
6627 assignments?: NullableOption<DeviceConfigurationAssignment[]>;
6628 // Device Configuration Setting State Device Summary
6629 deviceSettingStateSummaries?: NullableOption<SettingStateDeviceSummary[]>;
6630 // Device configuration installation status by device.
6631 deviceStatuses?: NullableOption<DeviceConfigurationDeviceStatus[]>;
6632 // Device Configuration devices status overview
6633 deviceStatusOverview?: NullableOption<DeviceConfigurationDeviceOverview>;
6634 // Device configuration installation status by user.
6635 userStatuses?: NullableOption<DeviceConfigurationUserStatus[]>;
6636 // Device Configuration users status overview
6637 userStatusOverview?: NullableOption<DeviceConfigurationUserOverview>;
6638}
6639// tslint:disable-next-line: interface-name
6640export interface IosUpdateDeviceStatus extends Entity {
6641 // The DateTime when device compliance grace period expires
6642 complianceGracePeriodExpirationDateTime?: string;
6643 // Device name of the DevicePolicyStatus.
6644 deviceDisplayName?: NullableOption<string>;
6645 // The device id that is being reported.
6646 deviceId?: NullableOption<string>;
6647 // The device model that is being reported
6648 deviceModel?: NullableOption<string>;
6649 /**
6650 * The installation status of the policy report. Possible values are: success, available, idle, unknown, mdmClientCrashed,
6651 * timeout, downloading, downloadFailed, downloadRequiresComputer, downloadInsufficientSpace, downloadInsufficientPower,
6652 * downloadInsufficientNetwork, installing, installInsufficientSpace, installInsufficientPower,
6653 * installPhoneCallInProgress, installFailed, notSupportedOperation, sharedDeviceUserLoggedInError, updateError,
6654 * deviceOsHigherThanDesiredOsVersion, updateScanFailed.
6655 */
6656 installStatus?: IosUpdatesInstallStatus;
6657 // Last modified date time of the policy report.
6658 lastReportedDateTime?: string;
6659 // The device version that is being reported.
6660 osVersion?: NullableOption<string>;
6661 /**
6662 * Compliance status of the policy report. Possible values are: unknown, notApplicable, compliant, remediated,
6663 * nonCompliant, error, conflict, notAssigned.
6664 */
6665 status?: ComplianceStatus;
6666 // The User id that is being reported.
6667 userId?: NullableOption<string>;
6668 // The User Name that is being reported
6669 userName?: NullableOption<string>;
6670 // UserPrincipalName.
6671 userPrincipalName?: NullableOption<string>;
6672}
6673export interface SoftwareUpdateStatusSummary extends Entity {
6674 // Number of compliant devices.
6675 compliantDeviceCount?: number;
6676 // Number of compliant users.
6677 compliantUserCount?: number;
6678 // Number of conflict devices.
6679 conflictDeviceCount?: number;
6680 // Number of conflict users.
6681 conflictUserCount?: number;
6682 // The name of the policy.
6683 displayName?: NullableOption<string>;
6684 // Number of devices had error.
6685 errorDeviceCount?: number;
6686 // Number of users had error.
6687 errorUserCount?: number;
6688 // Number of non compliant devices.
6689 nonCompliantDeviceCount?: number;
6690 // Number of non compliant users.
6691 nonCompliantUserCount?: number;
6692 // Number of not applicable devices.
6693 notApplicableDeviceCount?: number;
6694 // Number of not applicable users.
6695 notApplicableUserCount?: number;
6696 // Number of remediated devices.
6697 remediatedDeviceCount?: number;
6698 // Number of remediated users.
6699 remediatedUserCount?: number;
6700 // Number of unknown devices.
6701 unknownDeviceCount?: number;
6702 // Number of unknown users.
6703 unknownUserCount?: number;
6704}
6705export interface ComplianceManagementPartner extends Entity {
6706 // User groups which enroll Android devices through partner.
6707 androidEnrollmentAssignments?: NullableOption<ComplianceManagementPartnerAssignment[]>;
6708 // Partner onboarded for Android devices.
6709 androidOnboarded?: boolean;
6710 // Partner display name
6711 displayName?: NullableOption<string>;
6712 // User groups which enroll ios devices through partner.
6713 iosEnrollmentAssignments?: NullableOption<ComplianceManagementPartnerAssignment[]>;
6714 // Partner onboarded for ios devices.
6715 iosOnboarded?: boolean;
6716 // Timestamp of last heartbeat after admin onboarded to the compliance management partner
6717 lastHeartbeatDateTime?: string;
6718 // User groups which enroll Mac devices through partner.
6719 macOsEnrollmentAssignments?: NullableOption<ComplianceManagementPartnerAssignment[]>;
6720 // Partner onboarded for Mac devices.
6721 macOsOnboarded?: boolean;
6722 // Partner state of this tenant. Possible values are: unknown, unavailable, enabled, terminated, rejected, unresponsive.
6723 partnerState?: DeviceManagementPartnerTenantState;
6724}
6725export interface OnPremisesConditionalAccessSettings extends Entity {
6726 // Indicates if on premises conditional access is enabled for this organization
6727 enabled?: boolean;
6728 /**
6729 * User groups that will be exempt by on premises conditional access. All users in these groups will be exempt from the
6730 * conditional access policy.
6731 */
6732 excludedGroups?: string[];
6733 /**
6734 * User groups that will be targeted by on premises conditional access. All users in these groups will be required to have
6735 * mobile device managed and compliant for mail access.
6736 */
6737 includedGroups?: string[];
6738 // Override the default access rule when allowing a device to ensure access is granted.
6739 overrideDefaultRule?: boolean;
6740}
6741export interface DeviceCategory extends Entity {
6742 // Optional description for the device category.
6743 description?: NullableOption<string>;
6744 // Display name for the device category.
6745 displayName?: NullableOption<string>;
6746}
6747export interface DeviceEnrollmentConfiguration extends Entity {
6748 // Created date time in UTC of the device enrollment configuration
6749 createdDateTime?: string;
6750 // The description of the device enrollment configuration
6751 description?: NullableOption<string>;
6752 // The display name of the device enrollment configuration
6753 displayName?: NullableOption<string>;
6754 // Last modified date time in UTC of the device enrollment configuration
6755 lastModifiedDateTime?: string;
6756 /**
6757 * Priority is used when a user exists in multiple groups that are assigned enrollment configuration. Users are subject
6758 * only to the configuration with the lowest priority value.
6759 */
6760 priority?: number;
6761 // The version of the device enrollment configuration
6762 version?: number;
6763 // The list of group assignments for the device configuration profile
6764 assignments?: NullableOption<EnrollmentConfigurationAssignment[]>;
6765}
6766export interface DeviceManagementPartner extends Entity {
6767 // Partner display name
6768 displayName?: NullableOption<string>;
6769 // Whether device management partner is configured or not
6770 isConfigured?: boolean;
6771 // Timestamp of last heartbeat after admin enabled option Connect to Device management Partner
6772 lastHeartbeatDateTime?: string;
6773 // Partner App type. Possible values are: unknown, singleTenantApp, multiTenantApp.
6774 partnerAppType?: DeviceManagementPartnerAppType;
6775 // Partner state of this tenant. Possible values are: unknown, unavailable, enabled, terminated, rejected, unresponsive.
6776 partnerState?: DeviceManagementPartnerTenantState;
6777 // Partner Single tenant App id
6778 singleTenantAppId?: NullableOption<string>;
6779 // DateTime in UTC when PartnerDevices will be marked as NonCompliant
6780 whenPartnerDevicesWillBeMarkedAsNonCompliantDateTime?: NullableOption<string>;
6781 // DateTime in UTC when PartnerDevices will be removed
6782 whenPartnerDevicesWillBeRemovedDateTime?: NullableOption<string>;
6783}
6784export interface DeviceManagementExchangeConnector extends Entity {
6785 // The name of the server hosting the Exchange Connector.
6786 connectorServerName?: NullableOption<string>;
6787 // An alias assigned to the Exchange server
6788 exchangeAlias?: NullableOption<string>;
6789 // The type of Exchange Connector Configured. Possible values are: onPremises, hosted, serviceToService, dedicated.
6790 exchangeConnectorType?: DeviceManagementExchangeConnectorType;
6791 // Exchange Organization to the Exchange server
6792 exchangeOrganization?: NullableOption<string>;
6793 // Last sync time for the Exchange Connector
6794 lastSyncDateTime?: string;
6795 // Email address used to configure the Service To Service Exchange Connector.
6796 primarySmtpAddress?: NullableOption<string>;
6797 // The name of the Exchange server.
6798 serverName?: NullableOption<string>;
6799 // Exchange Connector Status. Possible values are: none, connectionPending, connected, disconnected.
6800 status?: DeviceManagementExchangeConnectorStatus;
6801 // The version of the ExchangeConnectorAgent
6802 version?: NullableOption<string>;
6803}
6804export interface MobileThreatDefenseConnector extends Entity {
6805 // For Android, set whether Intune must receive data from the data sync partner prior to marking a device compliant
6806 androidDeviceBlockedOnMissingPartnerData?: boolean;
6807 // For Android, set whether data from the data sync partner should be used during compliance evaluations
6808 androidEnabled?: boolean;
6809 // For IOS, set whether Intune must receive data from the data sync partner prior to marking a device compliant
6810 iosDeviceBlockedOnMissingPartnerData?: boolean;
6811 // For IOS, get or set whether data from the data sync partner should be used during compliance evaluations
6812 iosEnabled?: boolean;
6813 // DateTime of last Heartbeat recieved from the Data Sync Partner
6814 lastHeartbeatDateTime?: string;
6815 // Data Sync Partner state for this account. Possible values are: unavailable, available, enabled, unresponsive.
6816 partnerState?: MobileThreatPartnerTenantState;
6817 // Get or Set days the per tenant tolerance to unresponsiveness for this partner integration
6818 partnerUnresponsivenessThresholdInDays?: number;
6819 /**
6820 * Get or set whether to block devices on the enabled platforms that do not meet the minimum version requirements of the
6821 * Data Sync Partner
6822 */
6823 partnerUnsupportedOsVersionBlocked?: boolean;
6824}
6825export interface ApplePushNotificationCertificate extends Entity {
6826 // Apple Id of the account used to create the MDM push certificate.
6827 appleIdentifier?: NullableOption<string>;
6828 // Not yet documented
6829 certificate?: NullableOption<string>;
6830 // The expiration date and time for Apple push notification certificate.
6831 expirationDateTime?: string;
6832 // Last modified date and time for Apple push notification certificate.
6833 lastModifiedDateTime?: string;
6834 // Topic Id.
6835 topicIdentifier?: NullableOption<string>;
6836}
6837export interface DetectedApp extends Entity {
6838 // The number of devices that have installed this application
6839 deviceCount?: number;
6840 // Name of the discovered application. Read-only
6841 displayName?: NullableOption<string>;
6842 // Discovered application size in bytes. Read-only
6843 sizeInByte?: number;
6844 // Version of the discovered application. Read-only
6845 version?: NullableOption<string>;
6846 // The devices that have the discovered application installed
6847 managedDevices?: NullableOption<ManagedDevice[]>;
6848}
6849export interface ManagedDeviceOverview extends Entity {
6850 // Distribution of Exchange Access State in Intune
6851 deviceExchangeAccessStateSummary?: NullableOption<DeviceExchangeAccessStateSummary>;
6852 // Device operating system summary.
6853 deviceOperatingSystemSummary?: NullableOption<DeviceOperatingSystemSummary>;
6854 // The number of devices enrolled in both MDM and EAS
6855 dualEnrolledDeviceCount?: number;
6856 // Total enrolled device count. Does not include PC devices managed via Intune PC Agent
6857 enrolledDeviceCount?: number;
6858 // The number of devices enrolled in MDM
6859 mdmEnrolledCount?: number;
6860}
6861export interface NotificationMessageTemplate extends Entity {
6862 /**
6863 * The Message Template Branding Options. Branding is defined in the Intune Admin Console. Possible values are: none,
6864 * includeCompanyLogo, includeCompanyName, includeContactInformation, includeCompanyPortalLink.
6865 */
6866 brandingOptions?: NotificationTemplateBrandingOptions;
6867 // The default locale to fallback onto when the requested locale is not available.
6868 defaultLocale?: NullableOption<string>;
6869 // Display name for the Notification Message Template.
6870 displayName?: string;
6871 // DateTime the object was last modified.
6872 lastModifiedDateTime?: string;
6873 // The list of localized messages for this Notification Message Template.
6874 localizedNotificationMessages?: NullableOption<LocalizedNotificationMessage[]>;
6875}
6876export interface ResourceOperation extends Entity {
6877 /**
6878 * Type of action this operation is going to perform. The actionName should be concise and limited to as few words as
6879 * possible.
6880 */
6881 actionName?: NullableOption<string>;
6882 /**
6883 * Description of the resource operation. The description is used in mouse-over text for the operation when shown in the
6884 * Azure Portal.
6885 */
6886 description?: NullableOption<string>;
6887 // Name of the Resource this operation is performed on.
6888 resourceName?: NullableOption<string>;
6889}
6890export interface RoleAssignment extends Entity {
6891 // Description of the Role Assignment.
6892 description?: NullableOption<string>;
6893 // The display or friendly name of the role Assignment.
6894 displayName?: NullableOption<string>;
6895 // List of ids of role scope member security groups. These are IDs from Azure Active Directory.
6896 resourceScopes?: NullableOption<string[]>;
6897 // Role definition this assignment is part of.
6898 roleDefinition?: NullableOption<RoleDefinition>;
6899}
6900export interface DeviceAndAppManagementRoleAssignment extends RoleAssignment {
6901 // The list of ids of role member security groups. These are IDs from Azure Active Directory.
6902 members?: NullableOption<string[]>;
6903}
6904export interface RoleDefinition extends Entity {
6905 // Description of the Role definition.
6906 description?: NullableOption<string>;
6907 // Display Name of the Role definition.
6908 displayName?: NullableOption<string>;
6909 // Type of Role. Set to True if it is built-in, or set to False if it is a custom role definition.
6910 isBuiltIn?: boolean;
6911 /**
6912 * List of Role Permissions this role is allowed to perform. These must match the actionName that is defined as part of
6913 * the rolePermission.
6914 */
6915 rolePermissions?: NullableOption<RolePermission[]>;
6916 // List of Role assignments for this role definition.
6917 roleAssignments?: NullableOption<RoleAssignment[]>;
6918}
6919export interface RemoteAssistancePartner extends Entity {
6920 // Display name of the partner.
6921 displayName?: NullableOption<string>;
6922 // Timestamp of the last request sent to Intune by the TEM partner.
6923 lastConnectionDateTime?: string;
6924 /**
6925 * A friendly description of the current TeamViewer connector status. Possible values are: notOnboarded, onboarding,
6926 * onboarded.
6927 */
6928 onboardingStatus?: RemoteAssistanceOnboardingStatus;
6929 // URL of the partner's onboarding portal, where an administrator can configure their Remote Assistance service.
6930 onboardingUrl?: NullableOption<string>;
6931}
6932export interface TelecomExpenseManagementPartner extends Entity {
6933 // Whether the partner's AAD app has been authorized to access Intune.
6934 appAuthorized?: boolean;
6935 // Display name of the TEM partner.
6936 displayName?: NullableOption<string>;
6937 // Whether Intune's connection to the TEM service is currently enabled or disabled.
6938 enabled?: boolean;
6939 // Timestamp of the last request sent to Intune by the TEM partner.
6940 lastConnectionDateTime?: string;
6941 // URL of the TEM partner's administrative control panel, where an administrator can configure their TEM service.
6942 url?: NullableOption<string>;
6943}
6944export interface WindowsInformationProtectionAppLearningSummary extends Entity {
6945 // Application Name
6946 applicationName?: NullableOption<string>;
6947 // Application Type. Possible values are: universal, desktop.
6948 applicationType?: ApplicationType;
6949 // Device Count
6950 deviceCount?: number;
6951}
6952export interface WindowsInformationProtectionNetworkLearningSummary extends Entity {
6953 // Device Count
6954 deviceCount?: number;
6955 // Website url
6956 url?: NullableOption<string>;
6957}
6958export interface TermsAndConditionsAcceptanceStatus extends Entity {
6959 // DateTime when the terms were last accepted by the user.
6960 acceptedDateTime?: string;
6961 // Most recent version number of the T&amp;C accepted by the user.
6962 acceptedVersion?: number;
6963 // Display name of the user whose acceptance the entity represents.
6964 userDisplayName?: NullableOption<string>;
6965 // The userPrincipalName of the User that accepted the term.
6966 userPrincipalName?: NullableOption<string>;
6967 // Navigation link to the terms and conditions that are assigned.
6968 termsAndConditions?: NullableOption<TermsAndConditions>;
6969}
6970export interface TermsAndConditionsAssignment extends Entity {
6971 // Assignment target that the T&amp;C policy is assigned to.
6972 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
6973}
6974export interface AndroidCompliancePolicy extends DeviceCompliancePolicy {
6975 // Require that devices have enabled device threat protection.
6976 deviceThreatProtectionEnabled?: boolean;
6977 /**
6978 * Require Mobile Threat Protection minimum risk level to report noncompliance. Possible values are: unavailable, secured,
6979 * low, medium, high, notSet.
6980 */
6981 deviceThreatProtectionRequiredSecurityLevel?: DeviceThreatProtectionLevel;
6982 // Minimum Android security patch level.
6983 minAndroidSecurityPatchLevel?: NullableOption<string>;
6984 // Maximum Android version.
6985 osMaximumVersion?: NullableOption<string>;
6986 // Minimum Android version.
6987 osMinimumVersion?: NullableOption<string>;
6988 // Number of days before the password expires. Valid values 1 to 365
6989 passwordExpirationDays?: NullableOption<number>;
6990 // Minimum password length. Valid values 4 to 16
6991 passwordMinimumLength?: NullableOption<number>;
6992 // Minutes of inactivity before a password is required.
6993 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
6994 // Number of previous passwords to block. Valid values 1 to 24
6995 passwordPreviousPasswordBlockCount?: NullableOption<number>;
6996 // Require a password to unlock device.
6997 passwordRequired?: boolean;
6998 /**
6999 * Type of characters in password. Possible values are: deviceDefault, alphabetic, alphanumeric, alphanumericWithSymbols,
7000 * lowSecurityBiometric, numeric, numericComplex, any.
7001 */
7002 passwordRequiredType?: AndroidRequiredPasswordType;
7003 // Devices must not be jailbroken or rooted.
7004 securityBlockJailbrokenDevices?: boolean;
7005 // Disable USB debugging on Android devices.
7006 securityDisableUsbDebugging?: boolean;
7007 // Require that devices disallow installation of apps from unknown sources.
7008 securityPreventInstallAppsFromUnknownSources?: boolean;
7009 // Require the device to pass the Company Portal client app runtime integrity check.
7010 securityRequireCompanyPortalAppIntegrity?: boolean;
7011 // Require Google Play Services to be installed and enabled on the device.
7012 securityRequireGooglePlayServices?: boolean;
7013 // Require the device to pass the SafetyNet basic integrity check.
7014 securityRequireSafetyNetAttestationBasicIntegrity?: boolean;
7015 // Require the device to pass the SafetyNet certified device check.
7016 securityRequireSafetyNetAttestationCertifiedDevice?: boolean;
7017 /**
7018 * Require the device to have up to date security providers. The device will require Google Play Services to be enabled
7019 * and up to date.
7020 */
7021 securityRequireUpToDateSecurityProviders?: boolean;
7022 // Require the Android Verify apps feature is turned on.
7023 securityRequireVerifyApps?: boolean;
7024 // Require encryption on Android devices.
7025 storageRequireEncryption?: boolean;
7026}
7027export interface AndroidCustomConfiguration extends DeviceConfiguration {
7028 // OMA settings. This collection can contain a maximum of 1000 elements.
7029 omaSettings?: NullableOption<OmaSetting[]>;
7030}
7031export interface AndroidGeneralDeviceConfiguration extends DeviceConfiguration {
7032 // Indicates whether or not to block clipboard sharing to copy and paste between applications.
7033 appsBlockClipboardSharing?: boolean;
7034 // Indicates whether or not to block copy and paste within applications.
7035 appsBlockCopyPaste?: boolean;
7036 // Indicates whether or not to block the YouTube app.
7037 appsBlockYouTube?: boolean;
7038 // List of apps to be hidden on the KNOX device. This collection can contain a maximum of 500 elements.
7039 appsHideList?: NullableOption<AppListItem[]>;
7040 // List of apps which can be installed on the KNOX device. This collection can contain a maximum of 500 elements.
7041 appsInstallAllowList?: NullableOption<AppListItem[]>;
7042 /**
7043 * List of apps which are blocked from being launched on the KNOX device. This collection can contain a maximum of 500
7044 * elements.
7045 */
7046 appsLaunchBlockList?: NullableOption<AppListItem[]>;
7047 // Indicates whether or not to block Bluetooth.
7048 bluetoothBlocked?: boolean;
7049 // Indicates whether or not to block the use of the camera.
7050 cameraBlocked?: boolean;
7051 // Indicates whether or not to block data roaming.
7052 cellularBlockDataRoaming?: boolean;
7053 // Indicates whether or not to block SMS/MMS messaging.
7054 cellularBlockMessaging?: boolean;
7055 // Indicates whether or not to block voice roaming.
7056 cellularBlockVoiceRoaming?: boolean;
7057 // Indicates whether or not to block syncing Wi-Fi tethering.
7058 cellularBlockWiFiTethering?: boolean;
7059 // Type of list that is in the CompliantAppsList. Possible values are: none, appsInListCompliant, appsNotInListCompliant.
7060 compliantAppListType?: AppListType;
7061 /**
7062 * List of apps in the compliance (either allow list or block list, controlled by CompliantAppListType). This collection
7063 * can contain a maximum of 10000 elements.
7064 */
7065 compliantAppsList?: NullableOption<AppListItem[]>;
7066 // Indicates whether or not to allow device sharing mode.
7067 deviceSharingAllowed?: boolean;
7068 // Indicates whether or not to block diagnostic data submission.
7069 diagnosticDataBlockSubmission?: boolean;
7070 // Indicates whether or not to block user performing a factory reset.
7071 factoryResetBlocked?: boolean;
7072 // Indicates whether or not to block Google account auto sync.
7073 googleAccountBlockAutoSync?: boolean;
7074 // Indicates whether or not to block the Google Play store.
7075 googlePlayStoreBlocked?: boolean;
7076 /**
7077 * A list of apps that will be allowed to run when the device is in Kiosk Mode. This collection can contain a maximum of
7078 * 500 elements.
7079 */
7080 kioskModeApps?: NullableOption<AppListItem[]>;
7081 // Indicates whether or not to block the screen sleep button while in Kiosk Mode.
7082 kioskModeBlockSleepButton?: boolean;
7083 // Indicates whether or not to block the volume buttons while in Kiosk Mode.
7084 kioskModeBlockVolumeButtons?: boolean;
7085 // Indicates whether or not to block location services.
7086 locationServicesBlocked?: boolean;
7087 // Indicates whether or not to block Near-Field Communication.
7088 nfcBlocked?: boolean;
7089 // Indicates whether or not to block fingerprint unlock.
7090 passwordBlockFingerprintUnlock?: boolean;
7091 // Indicates whether or not to block Smart Lock and other trust agents.
7092 passwordBlockTrustAgents?: boolean;
7093 // Number of days before the password expires. Valid values 1 to 365
7094 passwordExpirationDays?: NullableOption<number>;
7095 // Minimum length of passwords. Valid values 4 to 16
7096 passwordMinimumLength?: NullableOption<number>;
7097 // Minutes of inactivity before the screen times out.
7098 passwordMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
7099 // Number of previous passwords to block. Valid values 0 to 24
7100 passwordPreviousPasswordBlockCount?: NullableOption<number>;
7101 // Indicates whether or not to require a password.
7102 passwordRequired?: boolean;
7103 /**
7104 * Type of password that is required. Possible values are: deviceDefault, alphabetic, alphanumeric,
7105 * alphanumericWithSymbols, lowSecurityBiometric, numeric, numericComplex, any.
7106 */
7107 passwordRequiredType?: AndroidRequiredPasswordType;
7108 // Number of sign in failures allowed before factory reset. Valid values 1 to 16
7109 passwordSignInFailureCountBeforeFactoryReset?: NullableOption<number>;
7110 // Indicates whether or not to block powering off the device.
7111 powerOffBlocked?: boolean;
7112 // Indicates whether or not to block screenshots.
7113 screenCaptureBlocked?: boolean;
7114 // Require the Android Verify apps feature is turned on.
7115 securityRequireVerifyApps?: boolean;
7116 // Indicates whether or not to block Google Backup.
7117 storageBlockGoogleBackup?: boolean;
7118 // Indicates whether or not to block removable storage usage.
7119 storageBlockRemovableStorage?: boolean;
7120 // Indicates whether or not to require device encryption.
7121 storageRequireDeviceEncryption?: boolean;
7122 // Indicates whether or not to require removable storage encryption.
7123 storageRequireRemovableStorageEncryption?: boolean;
7124 // Indicates whether or not to block the use of the Voice Assistant.
7125 voiceAssistantBlocked?: boolean;
7126 // Indicates whether or not to block voice dialing.
7127 voiceDialingBlocked?: boolean;
7128 // Indicates whether or not to block the web browser's auto fill feature.
7129 webBrowserBlockAutofill?: boolean;
7130 // Indicates whether or not to block the web browser.
7131 webBrowserBlocked?: boolean;
7132 // Indicates whether or not to block JavaScript within the web browser.
7133 webBrowserBlockJavaScript?: boolean;
7134 // Indicates whether or not to block popups within the web browser.
7135 webBrowserBlockPopups?: boolean;
7136 /**
7137 * Cookie settings within the web browser. Possible values are: browserDefault, blockAlways, allowCurrentWebSite,
7138 * allowFromWebsitesVisited, allowAlways.
7139 */
7140 webBrowserCookieSettings?: WebBrowserCookieSettings;
7141 // Indicates whether or not to block syncing Wi-Fi.
7142 wiFiBlocked?: boolean;
7143}
7144export interface AndroidWorkProfileCompliancePolicy extends DeviceCompliancePolicy {
7145 // Require that devices have enabled device threat protection.
7146 deviceThreatProtectionEnabled?: boolean;
7147 /**
7148 * Require Mobile Threat Protection minimum risk level to report noncompliance. Possible values are: unavailable, secured,
7149 * low, medium, high, notSet.
7150 */
7151 deviceThreatProtectionRequiredSecurityLevel?: DeviceThreatProtectionLevel;
7152 // Minimum Android security patch level.
7153 minAndroidSecurityPatchLevel?: NullableOption<string>;
7154 // Maximum Android version.
7155 osMaximumVersion?: NullableOption<string>;
7156 // Minimum Android version.
7157 osMinimumVersion?: NullableOption<string>;
7158 // Number of days before the password expires. Valid values 1 to 365
7159 passwordExpirationDays?: NullableOption<number>;
7160 // Minimum password length. Valid values 4 to 16
7161 passwordMinimumLength?: NullableOption<number>;
7162 // Minutes of inactivity before a password is required.
7163 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
7164 // Number of previous passwords to block. Valid values 1 to 24
7165 passwordPreviousPasswordBlockCount?: NullableOption<number>;
7166 // Require a password to unlock device.
7167 passwordRequired?: boolean;
7168 /**
7169 * Type of characters in password. Possible values are: deviceDefault, alphabetic, alphanumeric, alphanumericWithSymbols,
7170 * lowSecurityBiometric, numeric, numericComplex, any.
7171 */
7172 passwordRequiredType?: AndroidRequiredPasswordType;
7173 // Devices must not be jailbroken or rooted.
7174 securityBlockJailbrokenDevices?: boolean;
7175 // Disable USB debugging on Android devices.
7176 securityDisableUsbDebugging?: boolean;
7177 // Require that devices disallow installation of apps from unknown sources.
7178 securityPreventInstallAppsFromUnknownSources?: boolean;
7179 // Require the device to pass the Company Portal client app runtime integrity check.
7180 securityRequireCompanyPortalAppIntegrity?: boolean;
7181 // Require Google Play Services to be installed and enabled on the device.
7182 securityRequireGooglePlayServices?: boolean;
7183 // Require the device to pass the SafetyNet basic integrity check.
7184 securityRequireSafetyNetAttestationBasicIntegrity?: boolean;
7185 // Require the device to pass the SafetyNet certified device check.
7186 securityRequireSafetyNetAttestationCertifiedDevice?: boolean;
7187 /**
7188 * Require the device to have up to date security providers. The device will require Google Play Services to be enabled
7189 * and up to date.
7190 */
7191 securityRequireUpToDateSecurityProviders?: boolean;
7192 // Require the Android Verify apps feature is turned on.
7193 securityRequireVerifyApps?: boolean;
7194 // Require encryption on Android devices.
7195 storageRequireEncryption?: boolean;
7196}
7197export interface AndroidWorkProfileCustomConfiguration extends DeviceConfiguration {
7198 // OMA settings. This collection can contain a maximum of 500 elements.
7199 omaSettings?: NullableOption<OmaSetting[]>;
7200}
7201export interface AndroidWorkProfileGeneralDeviceConfiguration extends DeviceConfiguration {
7202 // Indicates whether or not to block fingerprint unlock.
7203 passwordBlockFingerprintUnlock?: boolean;
7204 // Indicates whether or not to block Smart Lock and other trust agents.
7205 passwordBlockTrustAgents?: boolean;
7206 // Number of days before the password expires. Valid values 1 to 365
7207 passwordExpirationDays?: NullableOption<number>;
7208 // Minimum length of passwords. Valid values 4 to 16
7209 passwordMinimumLength?: NullableOption<number>;
7210 // Minutes of inactivity before the screen times out.
7211 passwordMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
7212 // Number of previous passwords to block. Valid values 0 to 24
7213 passwordPreviousPasswordBlockCount?: NullableOption<number>;
7214 /**
7215 * Type of password that is required. Possible values are: deviceDefault, lowSecurityBiometric, required, atLeastNumeric,
7216 * numericComplex, atLeastAlphabetic, atLeastAlphanumeric, alphanumericWithSymbols.
7217 */
7218 passwordRequiredType?: AndroidWorkProfileRequiredPasswordType;
7219 // Number of sign in failures allowed before factory reset. Valid values 1 to 16
7220 passwordSignInFailureCountBeforeFactoryReset?: NullableOption<number>;
7221 // Require the Android Verify apps feature is turned on.
7222 securityRequireVerifyApps?: boolean;
7223 // Block users from adding/removing accounts in work profile.
7224 workProfileBlockAddingAccounts?: boolean;
7225 // Block work profile camera.
7226 workProfileBlockCamera?: boolean;
7227 // Block display work profile caller ID in personal profile.
7228 workProfileBlockCrossProfileCallerId?: boolean;
7229 // Block work profile contacts availability in personal profile.
7230 workProfileBlockCrossProfileContactsSearch?: boolean;
7231 // Boolean that indicates if the setting disallow cross profile copy/paste is enabled.
7232 workProfileBlockCrossProfileCopyPaste?: boolean;
7233 // Indicates whether or not to block notifications while device locked.
7234 workProfileBlockNotificationsWhileDeviceLocked?: boolean;
7235 // Block screen capture in work profile.
7236 workProfileBlockScreenCapture?: boolean;
7237 // Allow bluetooth devices to access enterprise contacts.
7238 workProfileBluetoothEnableContactSharing?: boolean;
7239 /**
7240 * Type of data sharing that is allowed. Possible values are: deviceDefault, preventAny, allowPersonalToWork,
7241 * noRestrictions.
7242 */
7243 workProfileDataSharingType?: AndroidWorkProfileCrossProfileDataSharingType;
7244 // Type of password that is required. Possible values are: deviceDefault, prompt, autoGrant, autoDeny.
7245 workProfileDefaultAppPermissionPolicy?: AndroidWorkProfileDefaultAppPermissionPolicyType;
7246 // Indicates whether or not to block fingerprint unlock for work profile.
7247 workProfilePasswordBlockFingerprintUnlock?: boolean;
7248 // Indicates whether or not to block Smart Lock and other trust agents for work profile.
7249 workProfilePasswordBlockTrustAgents?: boolean;
7250 // Number of days before the work profile password expires. Valid values 1 to 365
7251 workProfilePasswordExpirationDays?: NullableOption<number>;
7252 // Minimum length of work profile password. Valid values 4 to 16
7253 workProfilePasswordMinimumLength?: NullableOption<number>;
7254 // Minimum # of letter characters required in work profile password. Valid values 1 to 10
7255 workProfilePasswordMinLetterCharacters?: NullableOption<number>;
7256 // Minimum # of lower-case characters required in work profile password. Valid values 1 to 10
7257 workProfilePasswordMinLowerCaseCharacters?: NullableOption<number>;
7258 // Minimum # of non-letter characters required in work profile password. Valid values 1 to 10
7259 workProfilePasswordMinNonLetterCharacters?: NullableOption<number>;
7260 // Minimum # of numeric characters required in work profile password. Valid values 1 to 10
7261 workProfilePasswordMinNumericCharacters?: NullableOption<number>;
7262 // Minimum # of symbols required in work profile password. Valid values 1 to 10
7263 workProfilePasswordMinSymbolCharacters?: NullableOption<number>;
7264 // Minimum # of upper-case characters required in work profile password. Valid values 1 to 10
7265 workProfilePasswordMinUpperCaseCharacters?: NullableOption<number>;
7266 // Minutes of inactivity before the screen times out.
7267 workProfilePasswordMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
7268 // Number of previous work profile passwords to block. Valid values 0 to 24
7269 workProfilePasswordPreviousPasswordBlockCount?: NullableOption<number>;
7270 /**
7271 * Type of work profile password that is required. Possible values are: deviceDefault, lowSecurityBiometric, required,
7272 * atLeastNumeric, numericComplex, atLeastAlphabetic, atLeastAlphanumeric, alphanumericWithSymbols.
7273 */
7274 workProfilePasswordRequiredType?: AndroidWorkProfileRequiredPasswordType;
7275 // Number of sign in failures allowed before work profile is removed and all corporate data deleted. Valid values 1 to 16
7276 workProfilePasswordSignInFailureCountBeforeFactoryReset?: NullableOption<number>;
7277 // Password is required or not for work profile
7278 workProfileRequirePassword?: boolean;
7279}
7280// tslint:disable-next-line: no-empty-interface
7281export interface AppleDeviceFeaturesConfigurationBase extends DeviceConfiguration {}
7282export interface DeviceComplianceActionItem extends Entity {
7283 /**
7284 * What action to take. Possible values are: noAction, notification, block, retire, wipe, removeResourceAccessProfiles,
7285 * pushNotification, remoteLock.
7286 */
7287 actionType?: DeviceComplianceActionType;
7288 // Number of hours to wait till the action will be enforced. Valid values 0 to 8760
7289 gracePeriodHours?: number;
7290 // A list of group IDs to speicify who to CC this notification message to.
7291 notificationMessageCCList?: NullableOption<string[]>;
7292 // What notification Message template to use
7293 notificationTemplateId?: NullableOption<string>;
7294}
7295export interface DeviceComplianceDeviceOverview extends Entity {
7296 // Version of the policy for that overview
7297 configurationVersion?: number;
7298 // Number of error devices
7299 errorCount?: number;
7300 // Number of failed devices
7301 failedCount?: number;
7302 // Last update time
7303 lastUpdateDateTime?: string;
7304 // Number of not applicable devices
7305 notApplicableCount?: number;
7306 // Number of pending devices
7307 pendingCount?: number;
7308 // Number of succeeded devices
7309 successCount?: number;
7310}
7311export interface DeviceComplianceDeviceStatus extends Entity {
7312 // The DateTime when device compliance grace period expires
7313 complianceGracePeriodExpirationDateTime?: string;
7314 // Device name of the DevicePolicyStatus.
7315 deviceDisplayName?: NullableOption<string>;
7316 // The device model that is being reported
7317 deviceModel?: NullableOption<string>;
7318 // Last modified date time of the policy report.
7319 lastReportedDateTime?: string;
7320 /**
7321 * Compliance status of the policy report. Possible values are: unknown, notApplicable, compliant, remediated,
7322 * nonCompliant, error, conflict, notAssigned.
7323 */
7324 status?: ComplianceStatus;
7325 // The User Name that is being reported
7326 userName?: NullableOption<string>;
7327 // UserPrincipalName.
7328 userPrincipalName?: NullableOption<string>;
7329}
7330export interface DeviceCompliancePolicyAssignment extends Entity {
7331 // Target for the compliance policy assignment.
7332 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
7333}
7334export interface SettingStateDeviceSummary extends Entity {
7335 // Device Compliant count for the setting
7336 compliantDeviceCount?: number;
7337 // Device conflict error count for the setting
7338 conflictDeviceCount?: number;
7339 // Device error count for the setting
7340 errorDeviceCount?: number;
7341 // Name of the InstancePath for the setting
7342 instancePath?: NullableOption<string>;
7343 // Device NonCompliant count for the setting
7344 nonCompliantDeviceCount?: number;
7345 // Device Not Applicable count for the setting
7346 notApplicableDeviceCount?: number;
7347 // Device Compliant count for the setting
7348 remediatedDeviceCount?: number;
7349 // Name of the setting
7350 settingName?: NullableOption<string>;
7351 // Device Unkown count for the setting
7352 unknownDeviceCount?: number;
7353}
7354export interface DeviceComplianceScheduledActionForRule extends Entity {
7355 // Name of the rule which this scheduled action applies to.
7356 ruleName?: NullableOption<string>;
7357 // The list of scheduled action configurations for this compliance policy.
7358 scheduledActionConfigurations?: NullableOption<DeviceComplianceActionItem[]>;
7359}
7360export interface DeviceComplianceUserStatus extends Entity {
7361 // Devices count for that user.
7362 devicesCount?: number;
7363 // Last modified date time of the policy report.
7364 lastReportedDateTime?: string;
7365 /**
7366 * Compliance status of the policy report. Possible values are: unknown, notApplicable, compliant, remediated,
7367 * nonCompliant, error, conflict, notAssigned.
7368 */
7369 status?: ComplianceStatus;
7370 // User name of the DevicePolicyStatus.
7371 userDisplayName?: NullableOption<string>;
7372 // UserPrincipalName.
7373 userPrincipalName?: NullableOption<string>;
7374}
7375export interface DeviceComplianceUserOverview extends Entity {
7376 // Version of the policy for that overview
7377 configurationVersion?: number;
7378 // Number of error Users
7379 errorCount?: number;
7380 // Number of failed Users
7381 failedCount?: number;
7382 // Last update time
7383 lastUpdateDateTime?: string;
7384 // Number of not applicable users
7385 notApplicableCount?: number;
7386 // Number of pending Users
7387 pendingCount?: number;
7388 // Number of succeeded Users
7389 successCount?: number;
7390}
7391export interface DeviceComplianceSettingState extends Entity {
7392 // The DateTime when device compliance grace period expires
7393 complianceGracePeriodExpirationDateTime?: string;
7394 // The Device Id that is being reported
7395 deviceId?: NullableOption<string>;
7396 // The device model that is being reported
7397 deviceModel?: NullableOption<string>;
7398 // The Device Name that is being reported
7399 deviceName?: NullableOption<string>;
7400 // The setting class name and property name.
7401 setting?: NullableOption<string>;
7402 // The Setting Name that is being reported
7403 settingName?: NullableOption<string>;
7404 /**
7405 * The compliance state of the setting. Possible values are: unknown, notApplicable, compliant, remediated, nonCompliant,
7406 * error, conflict, notAssigned.
7407 */
7408 state?: ComplianceStatus;
7409 // The User email address that is being reported
7410 userEmail?: NullableOption<string>;
7411 // The user Id that is being reported
7412 userId?: NullableOption<string>;
7413 // The User Name that is being reported
7414 userName?: NullableOption<string>;
7415 // The User PrincipalName that is being reported
7416 userPrincipalName?: NullableOption<string>;
7417}
7418export interface DeviceCompliancePolicyState extends Entity {
7419 // The name of the policy for this policyBase
7420 displayName?: NullableOption<string>;
7421 // Platform type that the policy applies to
7422 platformType?: PolicyPlatformType;
7423 // Count of how many setting a policy holds
7424 settingCount?: number;
7425 settingStates?: NullableOption<DeviceCompliancePolicySettingState[]>;
7426 // The compliance state of the policy
7427 state?: ComplianceStatus;
7428 // The version of the policy
7429 version?: number;
7430}
7431export interface DeviceConfigurationAssignment extends Entity {
7432 // The assignment target for the device configuration.
7433 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
7434}
7435export interface DeviceConfigurationDeviceStatus extends Entity {
7436 // The DateTime when device compliance grace period expires
7437 complianceGracePeriodExpirationDateTime?: string;
7438 // Device name of the DevicePolicyStatus.
7439 deviceDisplayName?: NullableOption<string>;
7440 // The device model that is being reported
7441 deviceModel?: NullableOption<string>;
7442 // Last modified date time of the policy report.
7443 lastReportedDateTime?: string;
7444 /**
7445 * Compliance status of the policy report. Possible values are: unknown, notApplicable, compliant, remediated,
7446 * nonCompliant, error, conflict, notAssigned.
7447 */
7448 status?: ComplianceStatus;
7449 // The User Name that is being reported
7450 userName?: NullableOption<string>;
7451 // UserPrincipalName.
7452 userPrincipalName?: NullableOption<string>;
7453}
7454export interface DeviceConfigurationDeviceOverview extends Entity {
7455 // Version of the policy for that overview
7456 configurationVersion?: number;
7457 // Number of error devices
7458 errorCount?: number;
7459 // Number of failed devices
7460 failedCount?: number;
7461 // Last update time
7462 lastUpdateDateTime?: string;
7463 // Number of not applicable devices
7464 notApplicableCount?: number;
7465 // Number of pending devices
7466 pendingCount?: number;
7467 // Number of succeeded devices
7468 successCount?: number;
7469}
7470export interface DeviceConfigurationUserStatus extends Entity {
7471 // Devices count for that user.
7472 devicesCount?: number;
7473 // Last modified date time of the policy report.
7474 lastReportedDateTime?: string;
7475 /**
7476 * Compliance status of the policy report. Possible values are: unknown, notApplicable, compliant, remediated,
7477 * nonCompliant, error, conflict, notAssigned.
7478 */
7479 status?: ComplianceStatus;
7480 // User name of the DevicePolicyStatus.
7481 userDisplayName?: NullableOption<string>;
7482 // UserPrincipalName.
7483 userPrincipalName?: NullableOption<string>;
7484}
7485export interface DeviceConfigurationUserOverview extends Entity {
7486 // Version of the policy for that overview
7487 configurationVersion?: number;
7488 // Number of error Users
7489 errorCount?: number;
7490 // Number of failed Users
7491 failedCount?: number;
7492 // Last update time
7493 lastUpdateDateTime?: string;
7494 // Number of not applicable users
7495 notApplicableCount?: number;
7496 // Number of pending Users
7497 pendingCount?: number;
7498 // Number of succeeded Users
7499 successCount?: number;
7500}
7501export interface DeviceConfigurationState extends Entity {
7502 // The name of the policy for this policyBase
7503 displayName?: NullableOption<string>;
7504 // Platform type that the policy applies to
7505 platformType?: PolicyPlatformType;
7506 // Count of how many setting a policy holds
7507 settingCount?: number;
7508 settingStates?: NullableOption<DeviceConfigurationSettingState[]>;
7509 // The compliance state of the policy
7510 state?: ComplianceStatus;
7511 // The version of the policy
7512 version?: number;
7513}
7514export interface EditionUpgradeConfiguration extends DeviceConfiguration {
7515 // Edition Upgrade License File Content.
7516 license?: NullableOption<string>;
7517 // Edition Upgrade License Type. Possible values are: productKey, licenseFile, notConfigured.
7518 licenseType?: EditionUpgradeLicenseType;
7519 // Edition Upgrade Product Key.
7520 productKey?: NullableOption<string>;
7521 /**
7522 * Edition Upgrade Target Edition. Possible values are: windows10Enterprise, windows10EnterpriseN, windows10Education,
7523 * windows10EducationN, windows10MobileEnterprise, windows10HolographicEnterprise, windows10Professional,
7524 * windows10ProfessionalN, windows10ProfessionalEducation, windows10ProfessionalEducationN,
7525 * windows10ProfessionalWorkstation, windows10ProfessionalWorkstationN, notConfigured, windows10Home, windows10HomeChina,
7526 * windows10HomeN, windows10HomeSingleLanguage, windows10Mobile, windows10IoTCore, windows10IoTCoreCommercial.
7527 */
7528 targetEdition?: Windows10EditionType;
7529}
7530// tslint:disable-next-line: interface-name no-empty-interface
7531export interface IosCertificateProfile extends DeviceConfiguration {}
7532// tslint:disable-next-line: interface-name
7533export interface IosCompliancePolicy extends DeviceCompliancePolicy {
7534 // Require that devices have enabled device threat protection .
7535 deviceThreatProtectionEnabled?: boolean;
7536 /**
7537 * Require Mobile Threat Protection minimum risk level to report noncompliance. Possible values are: unavailable, secured,
7538 * low, medium, high, notSet.
7539 */
7540 deviceThreatProtectionRequiredSecurityLevel?: DeviceThreatProtectionLevel;
7541 // Indicates whether or not to require a managed email profile.
7542 managedEmailProfileRequired?: boolean;
7543 // Maximum IOS version.
7544 osMaximumVersion?: NullableOption<string>;
7545 // Minimum IOS version.
7546 osMinimumVersion?: NullableOption<string>;
7547 // Indicates whether or not to block simple passcodes.
7548 passcodeBlockSimple?: boolean;
7549 // Number of days before the passcode expires. Valid values 1 to 65535
7550 passcodeExpirationDays?: NullableOption<number>;
7551 // The number of character sets required in the password.
7552 passcodeMinimumCharacterSetCount?: NullableOption<number>;
7553 // Minimum length of passcode. Valid values 4 to 14
7554 passcodeMinimumLength?: NullableOption<number>;
7555 // Minutes of inactivity before a passcode is required.
7556 passcodeMinutesOfInactivityBeforeLock?: NullableOption<number>;
7557 // Number of previous passcodes to block. Valid values 1 to 24
7558 passcodePreviousPasscodeBlockCount?: NullableOption<number>;
7559 // Indicates whether or not to require a passcode.
7560 passcodeRequired?: boolean;
7561 // The required passcode type. Possible values are: deviceDefault, alphanumeric, numeric.
7562 passcodeRequiredType?: RequiredPasswordType;
7563 // Devices must not be jailbroken or rooted.
7564 securityBlockJailbrokenDevices?: boolean;
7565}
7566// tslint:disable-next-line: interface-name
7567export interface IosCustomConfiguration extends DeviceConfiguration {
7568 // Payload. (UTF8 encoded byte array)
7569 payload?: number;
7570 // Payload file name (.mobileconfig
7571 payloadFileName?: NullableOption<string>;
7572 // Name that is displayed to the user.
7573 payloadName?: string;
7574}
7575// tslint:disable-next-line: interface-name
7576export interface IosDeviceFeaturesConfiguration extends AppleDeviceFeaturesConfigurationBase {
7577 // Asset tag information for the device, displayed on the login window and lock screen.
7578 assetTagTemplate?: NullableOption<string>;
7579 // A list of app and folders to appear on the Home Screen Dock. This collection can contain a maximum of 500 elements.
7580 homeScreenDockIcons?: NullableOption<IosHomeScreenItem[]>;
7581 // A list of pages on the Home Screen. This collection can contain a maximum of 500 elements.
7582 homeScreenPages?: NullableOption<IosHomeScreenPage[]>;
7583 // A footnote displayed on the login window and lock screen. Available in iOS 9.3.1 and later.
7584 lockScreenFootnote?: NullableOption<string>;
7585 /**
7586 * Notification settings for each bundle id. Applicable to devices in supervised mode only (iOS 9.3 and later). This
7587 * collection can contain a maximum of 500 elements.
7588 */
7589 notificationSettings?: NullableOption<IosNotificationSettings[]>;
7590}
7591// tslint:disable-next-line: interface-name
7592export interface IosGeneralDeviceConfiguration extends DeviceConfiguration {
7593 // Indicates whether or not to allow account modification when the device is in supervised mode.
7594 accountBlockModification?: boolean;
7595 // Indicates whether or not to allow activation lock when the device is in the supervised mode.
7596 activationLockAllowWhenSupervised?: boolean;
7597 // Indicates whether or not to allow AirDrop when the device is in supervised mode.
7598 airDropBlocked?: boolean;
7599 // Indicates whether or not to cause AirDrop to be considered an unmanaged drop target (iOS 9.0 and later).
7600 airDropForceUnmanagedDropTarget?: boolean;
7601 // Indicates whether or not to enforce all devices receiving AirPlay requests from this device to use a pairing password.
7602 airPlayForcePairingPasswordForOutgoingRequests?: boolean;
7603 // Indicates whether or not to block the user from using News when the device is in supervised mode (iOS 9.0 and later).
7604 appleNewsBlocked?: boolean;
7605 // Indicates whether or not to allow Apple Watch pairing when the device is in supervised mode (iOS 9.0 and later).
7606 appleWatchBlockPairing?: boolean;
7607 // Indicates whether or not to force a paired Apple Watch to use Wrist Detection (iOS 8.2 and later).
7608 appleWatchForceWristDetection?: boolean;
7609 /**
7610 * Gets or sets the list of iOS apps allowed to autonomously enter Single App Mode. Supervised only. iOS 7.0 and later.
7611 * This collection can contain a maximum of 500 elements.
7612 */
7613 appsSingleAppModeList?: NullableOption<AppListItem[]>;
7614 /**
7615 * Indicates whether or not to block the automatic downloading of apps purchased on other devices when the device is in
7616 * supervised mode (iOS 9.0 and later).
7617 */
7618 appStoreBlockAutomaticDownloads?: boolean;
7619 // Indicates whether or not to block the user from using the App Store. Requires a supervised device for iOS 13 and later.
7620 appStoreBlocked?: boolean;
7621 // Indicates whether or not to block the user from making in app purchases.
7622 appStoreBlockInAppPurchases?: boolean;
7623 /**
7624 * Indicates whether or not to block the App Store app, not restricting installation through Host apps. Applies to
7625 * supervised mode only (iOS 9.0 and later).
7626 */
7627 appStoreBlockUIAppInstallation?: boolean;
7628 // Indicates whether or not to require a password when using the app store.
7629 appStoreRequirePassword?: boolean;
7630 /**
7631 * List of apps in the visibility list (either visible/launchable apps list or hidden/unlaunchable apps list, controlled
7632 * by AppsVisibilityListType) (iOS 9.3 and later). This collection can contain a maximum of 10000 elements.
7633 */
7634 appsVisibilityList?: NullableOption<AppListItem[]>;
7635 // Type of list that is in the AppsVisibilityList. Possible values are: none, appsInListCompliant, appsNotInListCompliant.
7636 appsVisibilityListType?: AppListType;
7637 /**
7638 * Indicates whether or not to allow modification of Bluetooth settings when the device is in supervised mode (iOS 10.0
7639 * and later).
7640 */
7641 bluetoothBlockModification?: boolean;
7642 /**
7643 * Indicates whether or not to block the user from accessing the camera of the device. Requires a supervised device for
7644 * iOS 13 and later.
7645 */
7646 cameraBlocked?: boolean;
7647 // Indicates whether or not to block data roaming.
7648 cellularBlockDataRoaming?: boolean;
7649 // Indicates whether or not to block global background fetch while roaming.
7650 cellularBlockGlobalBackgroundFetchWhileRoaming?: boolean;
7651 // Indicates whether or not to allow changes to cellular app data usage settings when the device is in supervised mode.
7652 cellularBlockPerAppDataModification?: boolean;
7653 // Indicates whether or not to block Personal Hotspot.
7654 cellularBlockPersonalHotspot?: boolean;
7655 // Indicates whether or not to block voice roaming.
7656 cellularBlockVoiceRoaming?: boolean;
7657 // Indicates whether or not to block untrusted TLS certificates.
7658 certificatesBlockUntrustedTlsCertificates?: boolean;
7659 /**
7660 * Indicates whether or not to allow remote screen observation by Classroom app when the device is in supervised mode (iOS
7661 * 9.3 and later).
7662 */
7663 classroomAppBlockRemoteScreenObservation?: boolean;
7664 /**
7665 * Indicates whether or not to automatically give permission to the teacher of a managed course on the Classroom app to
7666 * view a student's screen without prompting when the device is in supervised mode.
7667 */
7668 classroomAppForceUnpromptedScreenObservation?: boolean;
7669 // List that is in the AppComplianceList. Possible values are: none, appsInListCompliant, appsNotInListCompliant.
7670 compliantAppListType?: AppListType;
7671 /**
7672 * List of apps in the compliance (either allow list or block list, controlled by CompliantAppListType). This collection
7673 * can contain a maximum of 10000 elements.
7674 */
7675 compliantAppsList?: NullableOption<AppListItem[]>;
7676 /**
7677 * Indicates whether or not to block the user from installing configuration profiles and certificates interactively when
7678 * the device is in supervised mode.
7679 */
7680 configurationProfileBlockChanges?: boolean;
7681 // Indicates whether or not to block definition lookup when the device is in supervised mode (iOS 8.1.3 and later ).
7682 definitionLookupBlocked?: boolean;
7683 /**
7684 * Indicates whether or not to allow the user to enables restrictions in the device settings when the device is in
7685 * supervised mode.
7686 */
7687 deviceBlockEnableRestrictions?: boolean;
7688 /**
7689 * Indicates whether or not to allow the use of the 'Erase all content and settings' option on the device when the device
7690 * is in supervised mode.
7691 */
7692 deviceBlockEraseContentAndSettings?: boolean;
7693 // Indicates whether or not to allow device name modification when the device is in supervised mode (iOS 9.0 and later).
7694 deviceBlockNameModification?: boolean;
7695 // Indicates whether or not to block diagnostic data submission.
7696 diagnosticDataBlockSubmission?: boolean;
7697 /**
7698 * Indicates whether or not to allow diagnostics submission settings modification when the device is in supervised mode
7699 * (iOS 9.3.2 and later).
7700 */
7701 diagnosticDataBlockSubmissionModification?: boolean;
7702 // Indicates whether or not to block the user from viewing managed documents in unmanaged apps.
7703 documentsBlockManagedDocumentsInUnmanagedApps?: boolean;
7704 // Indicates whether or not to block the user from viewing unmanaged documents in managed apps.
7705 documentsBlockUnmanagedDocumentsInManagedApps?: boolean;
7706 // An email address lacking a suffix that matches any of these strings will be considered out-of-domain.
7707 emailInDomainSuffixes?: NullableOption<string[]>;
7708 // Indicates whether or not to block the user from trusting an enterprise app.
7709 enterpriseAppBlockTrust?: boolean;
7710 // [Deprecated] Configuring this setting and setting the value to 'true' has no effect on the device.
7711 enterpriseAppBlockTrustModification?: boolean;
7712 // Indicates whether or not to block the user from using FaceTime. Requires a supervised device for iOS 13 and later.
7713 faceTimeBlocked?: boolean;
7714 // Indicates whether or not to block changes to Find My Friends when the device is in supervised mode.
7715 findMyFriendsBlocked?: boolean;
7716 // Indicates whether or not to block the user from using Game Center when the device is in supervised mode.
7717 gameCenterBlocked?: boolean;
7718 /**
7719 * Indicates whether or not to block the user from having friends in Game Center. Requires a supervised device for iOS 13
7720 * and later.
7721 */
7722 gamingBlockGameCenterFriends?: boolean;
7723 /**
7724 * Indicates whether or not to block the user from using multiplayer gaming. Requires a supervised device for iOS 13 and
7725 * later.
7726 */
7727 gamingBlockMultiplayer?: boolean;
7728 /**
7729 * indicates whether or not to allow host pairing to control the devices an iOS device can pair with when the iOS device
7730 * is in supervised mode.
7731 */
7732 hostPairingBlocked?: boolean;
7733 // Indicates whether or not to block the user from using the iBooks Store when the device is in supervised mode.
7734 iBooksStoreBlocked?: boolean;
7735 // Indicates whether or not to block the user from downloading media from the iBookstore that has been tagged as erotica.
7736 iBooksStoreBlockErotica?: boolean;
7737 /**
7738 * Indicates whether or not to block the user from continuing work they started on iOS device to another iOS or macOS
7739 * device.
7740 */
7741 iCloudBlockActivityContinuation?: boolean;
7742 // Indicates whether or not to block iCloud backup. Requires a supervised device for iOS 13 and later.
7743 iCloudBlockBackup?: boolean;
7744 // Indicates whether or not to block iCloud document sync. Requires a supervised device for iOS 13 and later.
7745 iCloudBlockDocumentSync?: boolean;
7746 // Indicates whether or not to block Managed Apps Cloud Sync.
7747 iCloudBlockManagedAppsSync?: boolean;
7748 // Indicates whether or not to block iCloud Photo Library.
7749 iCloudBlockPhotoLibrary?: boolean;
7750 // Indicates whether or not to block iCloud Photo Stream Sync.
7751 iCloudBlockPhotoStreamSync?: boolean;
7752 // Indicates whether or not to block Shared Photo Stream.
7753 iCloudBlockSharedPhotoStream?: boolean;
7754 // Indicates whether or not to require backups to iCloud be encrypted.
7755 iCloudRequireEncryptedBackup?: boolean;
7756 /**
7757 * Indicates whether or not to block the user from accessing explicit content in iTunes and the App Store. Requires a
7758 * supervised device for iOS 13 and later.
7759 */
7760 iTunesBlockExplicitContent?: boolean;
7761 /**
7762 * Indicates whether or not to block Music service and revert Music app to classic mode when the device is in supervised
7763 * mode (iOS 9.3 and later and macOS 10.12 and later).
7764 */
7765 iTunesBlockMusicService?: boolean;
7766 /**
7767 * Indicates whether or not to block the user from using iTunes Radio when the device is in supervised mode (iOS 9.3 and
7768 * later).
7769 */
7770 iTunesBlockRadio?: boolean;
7771 // Indicates whether or not to block keyboard auto-correction when the device is in supervised mode (iOS 8.1.3 and later).
7772 keyboardBlockAutoCorrect?: boolean;
7773 // Indicates whether or not to block the user from using dictation input when the device is in supervised mode.
7774 keyboardBlockDictation?: boolean;
7775 // Indicates whether or not to block predictive keyboards when device is in supervised mode (iOS 8.1.3 and later).
7776 keyboardBlockPredictive?: boolean;
7777 // Indicates whether or not to block keyboard shortcuts when the device is in supervised mode (iOS 9.0 and later).
7778 keyboardBlockShortcuts?: boolean;
7779 // Indicates whether or not to block keyboard spell-checking when the device is in supervised mode (iOS 8.1.3 and later).
7780 keyboardBlockSpellCheck?: boolean;
7781 // Indicates whether or not to allow assistive speak while in kiosk mode.
7782 kioskModeAllowAssistiveSpeak?: boolean;
7783 // Indicates whether or not to allow access to the Assistive Touch Settings while in kiosk mode.
7784 kioskModeAllowAssistiveTouchSettings?: boolean;
7785 /**
7786 * Indicates whether or not to allow device auto lock while in kiosk mode. This property's functionality is redundant with
7787 * the OS default and is deprecated. Use KioskModeBlockAutoLock instead.
7788 */
7789 kioskModeAllowAutoLock?: boolean;
7790 // Indicates whether or not to allow access to the Color Inversion Settings while in kiosk mode.
7791 kioskModeAllowColorInversionSettings?: boolean;
7792 /**
7793 * Indicates whether or not to allow use of the ringer switch while in kiosk mode. This property's functionality is
7794 * redundant with the OS default and is deprecated. Use KioskModeBlockRingerSwitch instead.
7795 */
7796 kioskModeAllowRingerSwitch?: boolean;
7797 /**
7798 * Indicates whether or not to allow screen rotation while in kiosk mode. This property's functionality is redundant with
7799 * the OS default and is deprecated. Use KioskModeBlockScreenRotation instead.
7800 */
7801 kioskModeAllowScreenRotation?: boolean;
7802 /**
7803 * Indicates whether or not to allow use of the sleep button while in kiosk mode. This property's functionality is
7804 * redundant with the OS default and is deprecated. Use KioskModeBlockSleepButton instead.
7805 */
7806 kioskModeAllowSleepButton?: boolean;
7807 /**
7808 * Indicates whether or not to allow use of the touchscreen while in kiosk mode. This property's functionality is
7809 * redundant with the OS default and is deprecated. Use KioskModeBlockTouchscreen instead.
7810 */
7811 kioskModeAllowTouchscreen?: boolean;
7812 // Indicates whether or not to allow access to the voice over settings while in kiosk mode.
7813 kioskModeAllowVoiceOverSettings?: boolean;
7814 /**
7815 * Indicates whether or not to allow use of the volume buttons while in kiosk mode. This property's functionality is
7816 * redundant with the OS default and is deprecated. Use KioskModeBlockVolumeButtons instead.
7817 */
7818 kioskModeAllowVolumeButtons?: boolean;
7819 // Indicates whether or not to allow access to the zoom settings while in kiosk mode.
7820 kioskModeAllowZoomSettings?: boolean;
7821 // URL in the app store to the app to use for kiosk mode. Use if KioskModeManagedAppId is not known.
7822 kioskModeAppStoreUrl?: NullableOption<string>;
7823 // ID for built-in apps to use for kiosk mode. Used when KioskModeManagedAppId and KioskModeAppStoreUrl are not set.
7824 kioskModeBuiltInAppId?: NullableOption<string>;
7825 /**
7826 * Managed app id of the app to use for kiosk mode. If KioskModeManagedAppId is specified then KioskModeAppStoreUrl will
7827 * be ignored.
7828 */
7829 kioskModeManagedAppId?: NullableOption<string>;
7830 // Indicates whether or not to require assistive touch while in kiosk mode.
7831 kioskModeRequireAssistiveTouch?: boolean;
7832 // Indicates whether or not to require color inversion while in kiosk mode.
7833 kioskModeRequireColorInversion?: boolean;
7834 // Indicates whether or not to require mono audio while in kiosk mode.
7835 kioskModeRequireMonoAudio?: boolean;
7836 // Indicates whether or not to require voice over while in kiosk mode.
7837 kioskModeRequireVoiceOver?: boolean;
7838 // Indicates whether or not to require zoom while in kiosk mode.
7839 kioskModeRequireZoom?: boolean;
7840 // Indicates whether or not to block the user from using control center on the lock screen.
7841 lockScreenBlockControlCenter?: boolean;
7842 // Indicates whether or not to block the user from using the notification view on the lock screen.
7843 lockScreenBlockNotificationView?: boolean;
7844 // Indicates whether or not to block the user from using passbook when the device is locked.
7845 lockScreenBlockPassbook?: boolean;
7846 // Indicates whether or not to block the user from using the Today View on the lock screen.
7847 lockScreenBlockTodayView?: boolean;
7848 /**
7849 * Media content rating settings for Apps. Possible values are: allAllowed, allBlocked, agesAbove4, agesAbove9,
7850 * agesAbove12, agesAbove17.
7851 */
7852 mediaContentRatingApps?: RatingAppsType;
7853 // Media content rating settings for Australia
7854 mediaContentRatingAustralia?: NullableOption<MediaContentRatingAustralia>;
7855 // Media content rating settings for Canada
7856 mediaContentRatingCanada?: NullableOption<MediaContentRatingCanada>;
7857 // Media content rating settings for France
7858 mediaContentRatingFrance?: NullableOption<MediaContentRatingFrance>;
7859 // Media content rating settings for Germany
7860 mediaContentRatingGermany?: NullableOption<MediaContentRatingGermany>;
7861 // Media content rating settings for Ireland
7862 mediaContentRatingIreland?: NullableOption<MediaContentRatingIreland>;
7863 // Media content rating settings for Japan
7864 mediaContentRatingJapan?: NullableOption<MediaContentRatingJapan>;
7865 // Media content rating settings for New Zealand
7866 mediaContentRatingNewZealand?: NullableOption<MediaContentRatingNewZealand>;
7867 // Media content rating settings for United Kingdom
7868 mediaContentRatingUnitedKingdom?: NullableOption<MediaContentRatingUnitedKingdom>;
7869 // Media content rating settings for United States
7870 mediaContentRatingUnitedStates?: NullableOption<MediaContentRatingUnitedStates>;
7871 // Indicates whether or not to block the user from using the Messages app on the supervised device.
7872 messagesBlocked?: boolean;
7873 /**
7874 * List of managed apps and the network rules that applies to them. This collection can contain a maximum of 1000
7875 * elements.
7876 */
7877 networkUsageRules?: NullableOption<IosNetworkUsageRule[]>;
7878 // Indicates whether or not to allow notifications settings modification (iOS 9.3 and later).
7879 notificationsBlockSettingsModification?: boolean;
7880 // Block modification of registered Touch ID fingerprints when in supervised mode.
7881 passcodeBlockFingerprintModification?: boolean;
7882 // Indicates whether or not to block fingerprint unlock.
7883 passcodeBlockFingerprintUnlock?: boolean;
7884 // Indicates whether or not to allow passcode modification on the supervised device (iOS 9.0 and later).
7885 passcodeBlockModification?: boolean;
7886 // Indicates whether or not to block simple passcodes.
7887 passcodeBlockSimple?: boolean;
7888 // Number of days before the passcode expires. Valid values 1 to 65535
7889 passcodeExpirationDays?: NullableOption<number>;
7890 // Number of character sets a passcode must contain. Valid values 0 to 4
7891 passcodeMinimumCharacterSetCount?: NullableOption<number>;
7892 // Minimum length of passcode. Valid values 4 to 14
7893 passcodeMinimumLength?: NullableOption<number>;
7894 // Minutes of inactivity before a passcode is required.
7895 passcodeMinutesOfInactivityBeforeLock?: NullableOption<number>;
7896 // Minutes of inactivity before the screen times out.
7897 passcodeMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
7898 // Number of previous passcodes to block. Valid values 1 to 24
7899 passcodePreviousPasscodeBlockCount?: NullableOption<number>;
7900 // Indicates whether or not to require a passcode.
7901 passcodeRequired?: boolean;
7902 // Type of passcode that is required. Possible values are: deviceDefault, alphanumeric, numeric.
7903 passcodeRequiredType?: RequiredPasswordType;
7904 // Number of sign in failures allowed before wiping the device. Valid values 2 to 11
7905 passcodeSignInFailureCountBeforeWipe?: NullableOption<number>;
7906 // Indicates whether or not to block the user from using podcasts on the supervised device (iOS 8.0 and later).
7907 podcastsBlocked?: boolean;
7908 /**
7909 * Indicates whether or not to block the user from using Auto fill in Safari. Requires a supervised device for iOS 13 and
7910 * later.
7911 */
7912 safariBlockAutofill?: boolean;
7913 // Indicates whether or not to block the user from using Safari. Requires a supervised device for iOS 13 and later.
7914 safariBlocked?: boolean;
7915 // Indicates whether or not to block JavaScript in Safari.
7916 safariBlockJavaScript?: boolean;
7917 // Indicates whether or not to block popups in Safari.
7918 safariBlockPopups?: boolean;
7919 /**
7920 * Cookie settings for Safari. Possible values are: browserDefault, blockAlways, allowCurrentWebSite,
7921 * allowFromWebsitesVisited, allowAlways.
7922 */
7923 safariCookieSettings?: WebBrowserCookieSettings;
7924 // URLs matching the patterns listed here will be considered managed.
7925 safariManagedDomains?: NullableOption<string[]>;
7926 /**
7927 * Users can save passwords in Safari only from URLs matching the patterns listed here. Applies to devices in supervised
7928 * mode (iOS 9.3 and later).
7929 */
7930 safariPasswordAutoFillDomains?: NullableOption<string[]>;
7931 // Indicates whether or not to require fraud warning in Safari.
7932 safariRequireFraudWarning?: boolean;
7933 // Indicates whether or not to block the user from taking Screenshots.
7934 screenCaptureBlocked?: boolean;
7935 // Indicates whether or not to block the user from using Siri.
7936 siriBlocked?: boolean;
7937 // Indicates whether or not to block the user from using Siri when locked.
7938 siriBlockedWhenLocked?: boolean;
7939 // Indicates whether or not to block Siri from querying user-generated content when used on a supervised device.
7940 siriBlockUserGeneratedContent?: boolean;
7941 // Indicates whether or not to prevent Siri from dictating, or speaking profane language on supervised device.
7942 siriRequireProfanityFilter?: boolean;
7943 // Indicates whether or not to block Spotlight search from returning internet results on supervised device.
7944 spotlightBlockInternetResults?: boolean;
7945 // Indicates whether or not to block voice dialing.
7946 voiceDialingBlocked?: boolean;
7947 // Indicates whether or not to allow wallpaper modification on supervised device (iOS 9.0 and later) .
7948 wallpaperBlockModification?: boolean;
7949 /**
7950 * Indicates whether or not to force the device to use only Wi-Fi networks from configuration profiles when the device is
7951 * in supervised mode.
7952 */
7953 wiFiConnectOnlyToConfiguredNetworks?: boolean;
7954}
7955// tslint:disable-next-line: interface-name
7956export interface IosUpdateConfiguration extends DeviceConfiguration {
7957 // Active Hours End (active hours mean the time window when updates install should not happen)
7958 activeHoursEnd?: string;
7959 // Active Hours Start (active hours mean the time window when updates install should not happen)
7960 activeHoursStart?: string;
7961 // Days in week for which active hours are configured. This collection can contain a maximum of 7 elements.
7962 scheduledInstallDays?: DayOfWeek[];
7963 // UTC Time Offset indicated in minutes
7964 utcTimeOffsetInMinutes?: NullableOption<number>;
7965}
7966export interface MacOSCompliancePolicy extends DeviceCompliancePolicy {
7967 // Require that devices have enabled device threat protection.
7968 deviceThreatProtectionEnabled?: boolean;
7969 /**
7970 * Require Mobile Threat Protection minimum risk level to report noncompliance. Possible values are: unavailable, secured,
7971 * low, medium, high, notSet.
7972 */
7973 deviceThreatProtectionRequiredSecurityLevel?: DeviceThreatProtectionLevel;
7974 // Corresponds to the 'Block all incoming connections' option.
7975 firewallBlockAllIncoming?: boolean;
7976 // Whether the firewall should be enabled or not.
7977 firewallEnabled?: boolean;
7978 // Corresponds to 'Enable stealth mode.'
7979 firewallEnableStealthMode?: boolean;
7980 // Maximum MacOS version.
7981 osMaximumVersion?: NullableOption<string>;
7982 // Minimum MacOS version.
7983 osMinimumVersion?: NullableOption<string>;
7984 // Indicates whether or not to block simple passwords.
7985 passwordBlockSimple?: boolean;
7986 // Number of days before the password expires. Valid values 1 to 65535
7987 passwordExpirationDays?: NullableOption<number>;
7988 // The number of character sets required in the password.
7989 passwordMinimumCharacterSetCount?: NullableOption<number>;
7990 // Minimum length of password. Valid values 4 to 14
7991 passwordMinimumLength?: NullableOption<number>;
7992 // Minutes of inactivity before a password is required.
7993 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
7994 // Number of previous passwords to block. Valid values 1 to 24
7995 passwordPreviousPasswordBlockCount?: NullableOption<number>;
7996 // Whether or not to require a password.
7997 passwordRequired?: boolean;
7998 // The required password type. Possible values are: deviceDefault, alphanumeric, numeric.
7999 passwordRequiredType?: RequiredPasswordType;
8000 // Require encryption on Mac OS devices.
8001 storageRequireEncryption?: boolean;
8002 // Require that devices have enabled system integrity protection.
8003 systemIntegrityProtectionEnabled?: boolean;
8004}
8005export interface MacOSCustomConfiguration extends DeviceConfiguration {
8006 // Payload. (UTF8 encoded byte array)
8007 payload?: number;
8008 // Payload file name (.mobileconfig
8009 payloadFileName?: NullableOption<string>;
8010 // Name that is displayed to the user.
8011 payloadName?: string;
8012}
8013// tslint:disable-next-line: no-empty-interface
8014export interface MacOSDeviceFeaturesConfiguration extends AppleDeviceFeaturesConfigurationBase {}
8015export interface MacOSGeneralDeviceConfiguration extends DeviceConfiguration {
8016 // List that is in the CompliantAppsList. Possible values are: none, appsInListCompliant, appsNotInListCompliant.
8017 compliantAppListType?: AppListType;
8018 /**
8019 * List of apps in the compliance (either allow list or block list, controlled by CompliantAppListType). This collection
8020 * can contain a maximum of 10000 elements.
8021 */
8022 compliantAppsList?: NullableOption<AppListItem[]>;
8023 // An email address lacking a suffix that matches any of these strings will be considered out-of-domain.
8024 emailInDomainSuffixes?: NullableOption<string[]>;
8025 // Block simple passwords.
8026 passwordBlockSimple?: boolean;
8027 // Number of days before the password expires.
8028 passwordExpirationDays?: NullableOption<number>;
8029 // Number of character sets a password must contain. Valid values 0 to 4
8030 passwordMinimumCharacterSetCount?: NullableOption<number>;
8031 // Minimum length of passwords.
8032 passwordMinimumLength?: NullableOption<number>;
8033 // Minutes of inactivity required before a password is required.
8034 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
8035 // Minutes of inactivity required before the screen times out.
8036 passwordMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
8037 // Number of previous passwords to block.
8038 passwordPreviousPasswordBlockCount?: NullableOption<number>;
8039 // Whether or not to require a password.
8040 passwordRequired?: boolean;
8041 // Type of password that is required. Possible values are: deviceDefault, alphanumeric, numeric.
8042 passwordRequiredType?: RequiredPasswordType;
8043}
8044// tslint:disable-next-line: no-empty-interface
8045export interface ReportRoot extends Entity {}
8046export interface SharedPCConfiguration extends DeviceConfiguration {
8047 // Specifies how accounts are managed on a shared PC. Only applies when disableAccountManager is false.
8048 accountManagerPolicy?: NullableOption<SharedPCAccountManagerPolicy>;
8049 // Indicates which type of accounts are allowed to use on a shared PC. Possible values are: notConfigured, guest, domain.
8050 allowedAccounts?: SharedPCAllowedAccountType;
8051 // Specifies whether local storage is allowed on a shared PC.
8052 allowLocalStorage?: boolean;
8053 // Disables the account manager for shared PC mode.
8054 disableAccountManager?: boolean;
8055 /**
8056 * Specifies whether the default shared PC education environment policies should be disabled. For Windows 10 RS2 and
8057 * later, this policy will be applied without setting Enabled to true.
8058 */
8059 disableEduPolicies?: boolean;
8060 // Specifies whether the default shared PC power policies should be disabled.
8061 disablePowerPolicies?: boolean;
8062 // Disables the requirement to sign in whenever the device wakes up from sleep mode.
8063 disableSignInOnResume?: boolean;
8064 // Enables shared PC mode and applies the shared pc policies.
8065 enabled?: boolean;
8066 /**
8067 * Specifies the time in seconds that a device must sit idle before the PC goes to sleep. Setting this value to 0 prevents
8068 * the sleep timeout from occurring.
8069 */
8070 idleTimeBeforeSleepInSeconds?: NullableOption<number>;
8071 /**
8072 * Specifies the display text for the account shown on the sign-in screen which launches the app specified by
8073 * SetKioskAppUserModelId. Only applies when KioskAppUserModelId is set.
8074 */
8075 kioskAppDisplayName?: NullableOption<string>;
8076 // Specifies the application user model ID of the app to use with assigned access.
8077 kioskAppUserModelId?: NullableOption<string>;
8078 // Specifies the daily start time of maintenance hour.
8079 maintenanceStartTime?: NullableOption<string>;
8080}
8081export interface Windows10CompliancePolicy extends DeviceCompliancePolicy {
8082 // Require devices to be reported healthy by Windows Device Health Attestation - bit locker is enabled
8083 bitLockerEnabled?: boolean;
8084 // Require devices to be reported as healthy by Windows Device Health Attestation.
8085 codeIntegrityEnabled?: boolean;
8086 /**
8087 * Require devices to be reported as healthy by Windows Device Health Attestation - early launch antimalware driver is
8088 * enabled.
8089 */
8090 earlyLaunchAntiMalwareDriverEnabled?: boolean;
8091 // Maximum Windows Phone version.
8092 mobileOsMaximumVersion?: NullableOption<string>;
8093 // Minimum Windows Phone version.
8094 mobileOsMinimumVersion?: NullableOption<string>;
8095 // Maximum Windows 10 version.
8096 osMaximumVersion?: NullableOption<string>;
8097 // Minimum Windows 10 version.
8098 osMinimumVersion?: NullableOption<string>;
8099 // Indicates whether or not to block simple password.
8100 passwordBlockSimple?: boolean;
8101 // The password expiration in days.
8102 passwordExpirationDays?: NullableOption<number>;
8103 // The number of character sets required in the password.
8104 passwordMinimumCharacterSetCount?: NullableOption<number>;
8105 // The minimum password length.
8106 passwordMinimumLength?: NullableOption<number>;
8107 // Minutes of inactivity before a password is required.
8108 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
8109 // The number of previous passwords to prevent re-use of.
8110 passwordPreviousPasswordBlockCount?: NullableOption<number>;
8111 // Require a password to unlock Windows device.
8112 passwordRequired?: boolean;
8113 // Require a password to unlock an idle device.
8114 passwordRequiredToUnlockFromIdle?: boolean;
8115 // The required password type. Possible values are: deviceDefault, alphanumeric, numeric.
8116 passwordRequiredType?: RequiredPasswordType;
8117 // Require devices to be reported as healthy by Windows Device Health Attestation.
8118 requireHealthyDeviceReport?: boolean;
8119 // Require devices to be reported as healthy by Windows Device Health Attestation - secure boot is enabled.
8120 secureBootEnabled?: boolean;
8121 // Require encryption on windows devices.
8122 storageRequireEncryption?: boolean;
8123}
8124export interface Windows10CustomConfiguration extends DeviceConfiguration {
8125 // OMA settings. This collection can contain a maximum of 1000 elements.
8126 omaSettings?: NullableOption<OmaSetting[]>;
8127}
8128export interface Windows10EndpointProtectionConfiguration extends DeviceConfiguration {
8129 // Allow persisting user generated data inside the App Guard Containter (favorites, cookies, web passwords, etc.)
8130 applicationGuardAllowPersistence?: boolean;
8131 // Allow printing to Local Printers from Container
8132 applicationGuardAllowPrintToLocalPrinters?: boolean;
8133 // Allow printing to Network Printers from Container
8134 applicationGuardAllowPrintToNetworkPrinters?: boolean;
8135 // Allow printing to PDF from Container
8136 applicationGuardAllowPrintToPDF?: boolean;
8137 // Allow printing to XPS from Container
8138 applicationGuardAllowPrintToXPS?: boolean;
8139 /**
8140 * Block clipboard to share data from Host to Container, or from Container to Host, or both ways, or neither ways.
8141 * Possible values are: notConfigured, blockBoth, blockHostToContainer, blockContainerToHost, blockNone.
8142 */
8143 applicationGuardBlockClipboardSharing?: ApplicationGuardBlockClipboardSharingType;
8144 /**
8145 * Block clipboard to transfer image file, text file or neither of them. Possible values are: notConfigured,
8146 * blockImageAndTextFile, blockImageFile, blockNone, blockTextFile.
8147 */
8148 applicationGuardBlockFileTransfer?: ApplicationGuardBlockFileTransferType;
8149 // Block enterprise sites to load non-enterprise content, such as third party plug-ins
8150 applicationGuardBlockNonEnterpriseContent?: boolean;
8151 // Enable Windows Defender Application Guard
8152 applicationGuardEnabled?: boolean;
8153 /**
8154 * Force auditing will persist Windows logs and events to meet security/compliance criteria (sample events are user
8155 * login-logoff, use of privilege rights, software installation, system changes, etc.)
8156 */
8157 applicationGuardForceAuditing?: boolean;
8158 /**
8159 * Enables the Admin to choose what types of app to allow on devices. Possible values are: notConfigured,
8160 * enforceComponentsAndStoreApps, auditComponentsAndStoreApps, enforceComponentsStoreAppsAndSmartlocker,
8161 * auditComponentsStoreAppsAndSmartlocker.
8162 */
8163 appLockerApplicationControl?: AppLockerApplicationControlType;
8164 // Allows the Admin to disable the warning prompt for other disk encryption on the user machines.
8165 bitLockerDisableWarningForOtherDiskEncryption?: boolean;
8166 // Allows the admin to require encryption to be turned on using BitLocker. This policy is valid only for a mobile SKU.
8167 bitLockerEnableStorageCardEncryptionOnMobile?: boolean;
8168 // Allows the admin to require encryption to be turned on using BitLocker.
8169 bitLockerEncryptDevice?: boolean;
8170 // BitLocker Removable Drive Policy.
8171 bitLockerRemovableDrivePolicy?: NullableOption<BitLockerRemovableDrivePolicy>;
8172 // List of folder paths to be added to the list of protected folders
8173 defenderAdditionalGuardedFolders?: NullableOption<string[]>;
8174 // List of exe files and folders to be excluded from attack surface reduction rules
8175 defenderAttackSurfaceReductionExcludedPaths?: NullableOption<string[]>;
8176 // Xml content containing information regarding exploit protection details.
8177 defenderExploitProtectionXml?: NullableOption<number>;
8178 // Name of the file from which DefenderExploitProtectionXml was obtained.
8179 defenderExploitProtectionXmlFileName?: NullableOption<string>;
8180 // List of paths to exe that are allowed to access protected folders
8181 defenderGuardedFoldersAllowedAppPaths?: NullableOption<string[]>;
8182 // Indicates whether or not to block user from overriding Exploit Protection settings.
8183 defenderSecurityCenterBlockExploitProtectionOverride?: boolean;
8184 // Blocks stateful FTP connections to the device
8185 firewallBlockStatefulFTP?: NullableOption<boolean>;
8186 /**
8187 * Specify how the certificate revocation list is to be enforced. Possible values are: deviceDefault, none, attempt,
8188 * require.
8189 */
8190 firewallCertificateRevocationListCheckMethod?: FirewallCertificateRevocationListCheckMethodType;
8191 /**
8192 * Configures the idle timeout for security associations, in seconds, from 300 to 3600 inclusive. This is the period after
8193 * which security associations will expire and be deleted. Valid values 300 to 3600
8194 */
8195 firewallIdleTimeoutForSecurityAssociationInSeconds?: NullableOption<number>;
8196 // Configures IPSec exemptions to allow both IPv4 and IPv6 DHCP traffic
8197 firewallIPSecExemptionsAllowDHCP?: boolean;
8198 // Configures IPSec exemptions to allow ICMP
8199 firewallIPSecExemptionsAllowICMP?: boolean;
8200 // Configures IPSec exemptions to allow neighbor discovery IPv6 ICMP type-codes
8201 firewallIPSecExemptionsAllowNeighborDiscovery?: boolean;
8202 // Configures IPSec exemptions to allow router discovery IPv6 ICMP type-codes
8203 firewallIPSecExemptionsAllowRouterDiscovery?: boolean;
8204 /**
8205 * If an authentication set is not fully supported by a keying module, direct the module to ignore only unsupported
8206 * authentication suites rather than the entire set
8207 */
8208 firewallMergeKeyingModuleSettings?: NullableOption<boolean>;
8209 /**
8210 * Configures how packet queueing should be applied in the tunnel gateway scenario. Possible values are: deviceDefault,
8211 * disabled, queueInbound, queueOutbound, queueBoth.
8212 */
8213 firewallPacketQueueingMethod?: FirewallPacketQueueingMethodType;
8214 // Select the preshared key encoding to be used. Possible values are: deviceDefault, none, utF8.
8215 firewallPreSharedKeyEncodingMethod?: FirewallPreSharedKeyEncodingMethodType;
8216 // Configures the firewall profile settings for domain networks
8217 firewallProfileDomain?: NullableOption<WindowsFirewallNetworkProfile>;
8218 // Configures the firewall profile settings for private networks
8219 firewallProfilePrivate?: NullableOption<WindowsFirewallNetworkProfile>;
8220 // Configures the firewall profile settings for public networks
8221 firewallProfilePublic?: NullableOption<WindowsFirewallNetworkProfile>;
8222 // Allows IT Admins to control whether users can can ignore SmartScreen warnings and run malicious files.
8223 smartScreenBlockOverrideForFiles?: boolean;
8224 // Allows IT Admins to configure SmartScreen for Windows.
8225 smartScreenEnableInShell?: boolean;
8226}
8227export interface Windows10EnterpriseModernAppManagementConfiguration extends DeviceConfiguration {
8228 // Indicates whether or not to uninstall a fixed list of built-in Windows apps.
8229 uninstallBuiltInApps?: boolean;
8230}
8231export interface Windows10GeneralConfiguration extends DeviceConfiguration {
8232 /**
8233 * Indicates whether or not to Block the user from adding email accounts to the device that are not associated with a
8234 * Microsoft account.
8235 */
8236 accountsBlockAddingNonMicrosoftAccountEmail?: boolean;
8237 // Indicates whether or not to block the user from selecting an AntiTheft mode preference (Windows 10 Mobile only).
8238 antiTheftModeBlocked?: boolean;
8239 /**
8240 * Indicates whether apps from AppX packages signed with a trusted certificate can be side loaded. Possible values are:
8241 * notConfigured, blocked, allowed.
8242 */
8243 appsAllowTrustedAppsSideloading?: StateManagementSetting;
8244 /**
8245 * Indicates whether or not to disable the launch of all apps from Windows Store that came pre-installed or were
8246 * downloaded.
8247 */
8248 appsBlockWindowsStoreOriginatedApps?: boolean;
8249 // Specify a list of allowed Bluetooth services and profiles in hex formatted strings.
8250 bluetoothAllowedServices?: NullableOption<string[]>;
8251 // Whether or not to Block the user from using bluetooth advertising.
8252 bluetoothBlockAdvertising?: boolean;
8253 // Whether or not to Block the user from using bluetooth discoverable mode.
8254 bluetoothBlockDiscoverableMode?: boolean;
8255 // Whether or not to Block the user from using bluetooth.
8256 bluetoothBlocked?: boolean;
8257 // Whether or not to block specific bundled Bluetooth peripherals to automatically pair with the host device.
8258 bluetoothBlockPrePairing?: boolean;
8259 // Whether or not to Block the user from accessing the camera of the device.
8260 cameraBlocked?: boolean;
8261 // Whether or not to Block the user from using data over cellular while roaming.
8262 cellularBlockDataWhenRoaming?: boolean;
8263 // Whether or not to Block the user from using VPN over cellular.
8264 cellularBlockVpn?: boolean;
8265 // Whether or not to Block the user from using VPN when roaming over cellular.
8266 cellularBlockVpnWhenRoaming?: boolean;
8267 // Whether or not to Block the user from doing manual root certificate installation.
8268 certificatesBlockManualRootCertificateInstallation?: boolean;
8269 /**
8270 * Whether or not to block Connected Devices Service which enables discovery and connection to other devices, remote
8271 * messaging, remote app sessions and other cross-device experiences.
8272 */
8273 connectedDevicesServiceBlocked?: boolean;
8274 // Whether or not to Block the user from using copy paste.
8275 copyPasteBlocked?: boolean;
8276 // Whether or not to Block the user from using Cortana.
8277 cortanaBlocked?: boolean;
8278 // Whether or not to block end user access to Defender.
8279 defenderBlockEndUserAccess?: boolean;
8280 // Specifies the level of cloud-delivered protection. Possible values are: notConfigured, high, highPlus, zeroTolerance.
8281 defenderCloudBlockLevel?: DefenderCloudBlockLevelType;
8282 // Number of days before deleting quarantined malware. Valid values 0 to 90
8283 defenderDaysBeforeDeletingQuarantinedMalware?: NullableOption<number>;
8284 // Gets or sets Defender’s actions to take on detected Malware per threat level.
8285 defenderDetectedMalwareActions?: NullableOption<DefenderDetectedMalwareActions>;
8286 // File extensions to exclude from scans and real time protection.
8287 defenderFileExtensionsToExclude?: NullableOption<string[]>;
8288 // Files and folder to exclude from scans and real time protection.
8289 defenderFilesAndFoldersToExclude?: NullableOption<string[]>;
8290 /**
8291 * Value for monitoring file activity. Possible values are: userDefined, disable, monitorAllFiles,
8292 * monitorIncomingFilesOnly, monitorOutgoingFilesOnly.
8293 */
8294 defenderMonitorFileActivity?: DefenderMonitorFileActivity;
8295 // Processes to exclude from scans and real time protection.
8296 defenderProcessesToExclude?: NullableOption<string[]>;
8297 /**
8298 * The configuration for how to prompt user for sample submission. Possible values are: userDefined, alwaysPrompt,
8299 * promptBeforeSendingPersonalData, neverSendData, sendAllDataWithoutPrompting.
8300 */
8301 defenderPromptForSampleSubmission?: DefenderPromptForSampleSubmission;
8302 // Indicates whether or not to require behavior monitoring.
8303 defenderRequireBehaviorMonitoring?: boolean;
8304 // Indicates whether or not to require cloud protection.
8305 defenderRequireCloudProtection?: boolean;
8306 // Indicates whether or not to require network inspection system.
8307 defenderRequireNetworkInspectionSystem?: boolean;
8308 // Indicates whether or not to require real time monitoring.
8309 defenderRequireRealTimeMonitoring?: boolean;
8310 // Indicates whether or not to scan archive files.
8311 defenderScanArchiveFiles?: boolean;
8312 // Indicates whether or not to scan downloads.
8313 defenderScanDownloads?: boolean;
8314 // Indicates whether or not to scan incoming mail messages.
8315 defenderScanIncomingMail?: boolean;
8316 // Indicates whether or not to scan mapped network drives during full scan.
8317 defenderScanMappedNetworkDrivesDuringFullScan?: boolean;
8318 // Max CPU usage percentage during scan. Valid values 0 to 100
8319 defenderScanMaxCpu?: NullableOption<number>;
8320 // Indicates whether or not to scan files opened from a network folder.
8321 defenderScanNetworkFiles?: boolean;
8322 // Indicates whether or not to scan removable drives during full scan.
8323 defenderScanRemovableDrivesDuringFullScan?: boolean;
8324 // Indicates whether or not to scan scripts loaded in Internet Explorer browser.
8325 defenderScanScriptsLoadedInInternetExplorer?: boolean;
8326 // The defender system scan type. Possible values are: userDefined, disabled, quick, full.
8327 defenderScanType?: DefenderScanType;
8328 // The time to perform a daily quick scan.
8329 defenderScheduledQuickScanTime?: NullableOption<string>;
8330 // The defender time for the system scan.
8331 defenderScheduledScanTime?: NullableOption<string>;
8332 // The signature update interval in hours. Specify 0 not to check. Valid values 0 to 24
8333 defenderSignatureUpdateIntervalInHours?: NullableOption<number>;
8334 /**
8335 * Defender day of the week for the system scan. Possible values are: userDefined, everyday, sunday, monday, tuesday,
8336 * wednesday, thursday, friday, saturday, noScheduledScan.
8337 */
8338 defenderSystemScanSchedule?: WeeklySchedule;
8339 // Indicates whether or not to allow developer unlock. Possible values are: notConfigured, blocked, allowed.
8340 developerUnlockSetting?: StateManagementSetting;
8341 // Indicates whether or not to Block the user from resetting their phone.
8342 deviceManagementBlockFactoryResetOnMobile?: boolean;
8343 // Indicates whether or not to Block the user from doing manual un-enrollment from device management.
8344 deviceManagementBlockManualUnenroll?: boolean;
8345 /**
8346 * Gets or sets a value allowing the device to send diagnostic and usage telemetry data, such as Watson. Possible values
8347 * are: userDefined, none, basic, enhanced, full.
8348 */
8349 diagnosticsDataSubmissionMode?: DiagnosticDataSubmissionMode;
8350 /**
8351 * Allow users to change Start pages on Edge. Use the EdgeHomepageUrls to specify the Start pages that the user would see
8352 * by default when they open Edge.
8353 */
8354 edgeAllowStartPagesModification?: boolean;
8355 // Indicates whether or not to prevent access to about flags on Edge browser.
8356 edgeBlockAccessToAboutFlags?: boolean;
8357 /**
8358 * Block the address bar dropdown functionality in Microsoft Edge. Disable this settings to minimize network connections
8359 * from Microsoft Edge to Microsoft services.
8360 */
8361 edgeBlockAddressBarDropdown?: boolean;
8362 // Indicates whether or not to block auto fill.
8363 edgeBlockAutofill?: boolean;
8364 /**
8365 * Block Microsoft compatibility list in Microsoft Edge. This list from Microsoft helps Edge properly display sites with
8366 * known compatibility issues.
8367 */
8368 edgeBlockCompatibilityList?: boolean;
8369 // Indicates whether or not to block developer tools in the Edge browser.
8370 edgeBlockDeveloperTools?: boolean;
8371 // Indicates whether or not to Block the user from using the Edge browser.
8372 edgeBlocked?: boolean;
8373 // Indicates whether or not to block extensions in the Edge browser.
8374 edgeBlockExtensions?: boolean;
8375 // Indicates whether or not to block InPrivate browsing on corporate networks, in the Edge browser.
8376 edgeBlockInPrivateBrowsing?: boolean;
8377 // Indicates whether or not to Block the user from using JavaScript.
8378 edgeBlockJavaScript?: boolean;
8379 /**
8380 * Block the collection of information by Microsoft for live tile creation when users pin a site to Start from Microsoft
8381 * Edge.
8382 */
8383 edgeBlockLiveTileDataCollection?: boolean;
8384 // Indicates whether or not to Block password manager.
8385 edgeBlockPasswordManager?: boolean;
8386 // Indicates whether or not to block popups.
8387 edgeBlockPopups?: boolean;
8388 // Indicates whether or not to block the user from using the search suggestions in the address bar.
8389 edgeBlockSearchSuggestions?: boolean;
8390 // Indicates whether or not to Block the user from sending the do not track header.
8391 edgeBlockSendingDoNotTrackHeader?: boolean;
8392 /**
8393 * Indicates whether or not to switch the intranet traffic from Edge to Internet Explorer. Note: the name of this property
8394 * is misleading; the property is obsolete, use EdgeSendIntranetTrafficToInternetExplorer instead.
8395 */
8396 edgeBlockSendingIntranetTrafficToInternetExplorer?: boolean;
8397 // Clear browsing data on exiting Microsoft Edge.
8398 edgeClearBrowsingDataOnExit?: boolean;
8399 /**
8400 * Indicates which cookies to block in the Edge browser. Possible values are: userDefined, allow, blockThirdParty,
8401 * blockAll.
8402 */
8403 edgeCookiePolicy?: EdgeCookiePolicy;
8404 /**
8405 * Block the Microsoft web page that opens on the first use of Microsoft Edge. This policy allows enterprises, like those
8406 * enrolled in zero emissions configurations, to block this page.
8407 */
8408 edgeDisableFirstRunPage?: boolean;
8409 // Indicates the enterprise mode site list location. Could be a local file, local network or http location.
8410 edgeEnterpriseModeSiteListLocation?: NullableOption<string>;
8411 // The first run URL for when Edge browser is opened for the first time.
8412 edgeFirstRunUrl?: NullableOption<string>;
8413 // The list of URLs for homepages shodwn on MDM-enrolled devices on Edge browser.
8414 edgeHomepageUrls?: NullableOption<string[]>;
8415 // Indicates whether or not to Require the user to use the smart screen filter.
8416 edgeRequireSmartScreen?: boolean;
8417 /**
8418 * Allows IT admins to set a default search engine for MDM-Controlled devices. Users can override this and change their
8419 * default search engine provided the AllowSearchEngineCustomization policy is not set.
8420 */
8421 edgeSearchEngine?: NullableOption<EdgeSearchEngineBase>;
8422 // Indicates whether or not to switch the intranet traffic from Edge to Internet Explorer.
8423 edgeSendIntranetTrafficToInternetExplorer?: boolean;
8424 /**
8425 * Enable favorites sync between Internet Explorer and Microsoft Edge. Additions, deletions, modifications and order
8426 * changes to favorites are shared between browsers.
8427 */
8428 edgeSyncFavoritesWithInternetExplorer?: boolean;
8429 // Endpoint for discovering cloud printers.
8430 enterpriseCloudPrintDiscoveryEndPoint?: NullableOption<string>;
8431 /**
8432 * Maximum number of printers that should be queried from a discovery endpoint. This is a mobile only setting. Valid
8433 * values 1 to 65535
8434 */
8435 enterpriseCloudPrintDiscoveryMaxLimit?: NullableOption<number>;
8436 // OAuth resource URI for printer discovery service as configured in Azure portal.
8437 enterpriseCloudPrintMopriaDiscoveryResourceIdentifier?: NullableOption<string>;
8438 // Authentication endpoint for acquiring OAuth tokens.
8439 enterpriseCloudPrintOAuthAuthority?: NullableOption<string>;
8440 // GUID of a client application authorized to retrieve OAuth tokens from the OAuth Authority.
8441 enterpriseCloudPrintOAuthClientIdentifier?: NullableOption<string>;
8442 // OAuth resource URI for print service as configured in the Azure portal.
8443 enterpriseCloudPrintResourceIdentifier?: NullableOption<string>;
8444 // Indicates whether or not to enable device discovery UX.
8445 experienceBlockDeviceDiscovery?: boolean;
8446 // Indicates whether or not to allow the error dialog from displaying if no SIM card is detected.
8447 experienceBlockErrorDialogWhenNoSIM?: boolean;
8448 // Indicates whether or not to enable task switching on the device.
8449 experienceBlockTaskSwitcher?: boolean;
8450 // Indicates whether or not to block DVR and broadcasting.
8451 gameDvrBlocked?: boolean;
8452 // Indicates whether or not to Block the user from using internet sharing.
8453 internetSharingBlocked?: boolean;
8454 // Indicates whether or not to Block the user from location services.
8455 locationServicesBlocked?: boolean;
8456 /**
8457 * Specify whether to show a user-configurable setting to control the screen timeout while on the lock screen of Windows
8458 * 10 Mobile devices. If this policy is set to Allow, the value set by lockScreenTimeoutInSeconds is ignored.
8459 */
8460 lockScreenAllowTimeoutConfiguration?: boolean;
8461 // Indicates whether or not to block action center notifications over lock screen.
8462 lockScreenBlockActionCenterNotifications?: boolean;
8463 // Indicates whether or not the user can interact with Cortana using speech while the system is locked.
8464 lockScreenBlockCortana?: boolean;
8465 // Indicates whether to allow toast notifications above the device lock screen.
8466 lockScreenBlockToastNotifications?: boolean;
8467 /**
8468 * Set the duration (in seconds) from the screen locking to the screen turning off for Windows 10 Mobile devices.
8469 * Supported values are 11-1800. Valid values 11 to 1800
8470 */
8471 lockScreenTimeoutInSeconds?: NullableOption<number>;
8472 // Disables the ability to quickly switch between users that are logged on simultaneously without logging off.
8473 logonBlockFastUserSwitching?: boolean;
8474 // Indicates whether or not to Block a Microsoft account.
8475 microsoftAccountBlocked?: boolean;
8476 // Indicates whether or not to Block Microsoft account settings sync.
8477 microsoftAccountBlockSettingsSync?: boolean;
8478 /**
8479 * If set, proxy settings will be applied to all processes and accounts in the device. Otherwise, it will be applied to
8480 * the user account that’s enrolled into MDM.
8481 */
8482 networkProxyApplySettingsDeviceWide?: boolean;
8483 // Address to the proxy auto-config (PAC) script you want to use.
8484 networkProxyAutomaticConfigurationUrl?: NullableOption<string>;
8485 /**
8486 * Disable automatic detection of settings. If enabled, the system will try to find the path to a proxy auto-config (PAC)
8487 * script.
8488 */
8489 networkProxyDisableAutoDetect?: boolean;
8490 // Specifies manual proxy server settings.
8491 networkProxyServer?: NullableOption<Windows10NetworkProxyServer>;
8492 // Indicates whether or not to Block the user from using near field communication.
8493 nfcBlocked?: boolean;
8494 // Gets or sets a value allowing IT admins to prevent apps and features from working with files on OneDrive.
8495 oneDriveDisableFileSync?: boolean;
8496 /**
8497 * Specify whether PINs or passwords such as '1111' or '1234' are allowed. For Windows 10 desktops, it also controls the
8498 * use of picture passwords.
8499 */
8500 passwordBlockSimple?: boolean;
8501 // The password expiration in days. Valid values 0 to 730
8502 passwordExpirationDays?: NullableOption<number>;
8503 // The number of character sets required in the password.
8504 passwordMinimumCharacterSetCount?: NullableOption<number>;
8505 // The minimum password length. Valid values 4 to 16
8506 passwordMinimumLength?: NullableOption<number>;
8507 // The minutes of inactivity before the screen times out.
8508 passwordMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
8509 // The number of previous passwords to prevent reuse of. Valid values 0 to 50
8510 passwordPreviousPasswordBlockCount?: NullableOption<number>;
8511 // Indicates whether or not to require the user to have a password.
8512 passwordRequired?: boolean;
8513 // The required password type. Possible values are: deviceDefault, alphanumeric, numeric.
8514 passwordRequiredType?: RequiredPasswordType;
8515 // Indicates whether or not to require a password upon resuming from an idle state.
8516 passwordRequireWhenResumeFromIdleState?: boolean;
8517 // The number of sign in failures before factory reset. Valid values 0 to 999
8518 passwordSignInFailureCountBeforeFactoryReset?: NullableOption<number>;
8519 /**
8520 * A http or https Url to a jpg, jpeg or png image that needs to be downloaded and used as the Desktop Image or a file Url
8521 * to a local image on the file system that needs to used as the Desktop Image.
8522 */
8523 personalizationDesktopImageUrl?: NullableOption<string>;
8524 /**
8525 * A http or https Url to a jpg, jpeg or png image that neeeds to be downloaded and used as the Lock Screen Image or a
8526 * file Url to a local image on the file system that needs to be used as the Lock Screen Image.
8527 */
8528 personalizationLockScreenImageUrl?: NullableOption<string>;
8529 /**
8530 * Enables or disables the use of advertising ID. Added in Windows 10, version 1607. Possible values are: notConfigured,
8531 * blocked, allowed.
8532 */
8533 privacyAdvertisingId?: StateManagementSetting;
8534 /**
8535 * Indicates whether or not to allow the automatic acceptance of the pairing and privacy user consent dialog when
8536 * launching apps.
8537 */
8538 privacyAutoAcceptPairingAndConsentPrompts?: boolean;
8539 /**
8540 * Indicates whether or not to block the usage of cloud based speech services for Cortana, Dictation, or Store
8541 * applications.
8542 */
8543 privacyBlockInputPersonalization?: boolean;
8544 // Indicates whether or not to Block the user from reset protection mode.
8545 resetProtectionModeBlocked?: boolean;
8546 // Specifies what filter level of safe search is required. Possible values are: userDefined, strict, moderate.
8547 safeSearchFilter?: SafeSearchFilterType;
8548 // Indicates whether or not to Block the user from taking Screenshots.
8549 screenCaptureBlocked?: boolean;
8550 // Specifies if search can use diacritics.
8551 searchBlockDiacritics?: boolean;
8552 // Specifies whether to use automatic language detection when indexing content and properties.
8553 searchDisableAutoLanguageDetection?: boolean;
8554 // Indicates whether or not to disable the search indexer backoff feature.
8555 searchDisableIndexerBackoff?: boolean;
8556 /**
8557 * Indicates whether or not to block indexing of WIP-protected items to prevent them from appearing in search results for
8558 * Cortana or Explorer.
8559 */
8560 searchDisableIndexingEncryptedItems?: boolean;
8561 // Indicates whether or not to allow users to add locations on removable drives to libraries and to be indexed.
8562 searchDisableIndexingRemovableDrive?: boolean;
8563 // Specifies minimum amount of hard drive space on the same drive as the index location before indexing stops.
8564 searchEnableAutomaticIndexSizeManangement?: boolean;
8565 // Indicates whether or not to block remote queries of this computer’s index.
8566 searchEnableRemoteQueries?: boolean;
8567 // Indicates whether or not to block access to Accounts in Settings app.
8568 settingsBlockAccountsPage?: boolean;
8569 // Indicates whether or not to block the user from installing provisioning packages.
8570 settingsBlockAddProvisioningPackage?: boolean;
8571 // Indicates whether or not to block access to Apps in Settings app.
8572 settingsBlockAppsPage?: boolean;
8573 // Indicates whether or not to block the user from changing the language settings.
8574 settingsBlockChangeLanguage?: boolean;
8575 // Indicates whether or not to block the user from changing power and sleep settings.
8576 settingsBlockChangePowerSleep?: boolean;
8577 // Indicates whether or not to block the user from changing the region settings.
8578 settingsBlockChangeRegion?: boolean;
8579 // Indicates whether or not to block the user from changing date and time settings.
8580 settingsBlockChangeSystemTime?: boolean;
8581 // Indicates whether or not to block access to Devices in Settings app.
8582 settingsBlockDevicesPage?: boolean;
8583 // Indicates whether or not to block access to Ease of Access in Settings app.
8584 settingsBlockEaseOfAccessPage?: boolean;
8585 // Indicates whether or not to block the user from editing the device name.
8586 settingsBlockEditDeviceName?: boolean;
8587 // Indicates whether or not to block access to Gaming in Settings app.
8588 settingsBlockGamingPage?: boolean;
8589 // Indicates whether or not to block access to Network &amp; Internet in Settings app.
8590 settingsBlockNetworkInternetPage?: boolean;
8591 // Indicates whether or not to block access to Personalization in Settings app.
8592 settingsBlockPersonalizationPage?: boolean;
8593 // Indicates whether or not to block access to Privacy in Settings app.
8594 settingsBlockPrivacyPage?: boolean;
8595 // Indicates whether or not to block the runtime configuration agent from removing provisioning packages.
8596 settingsBlockRemoveProvisioningPackage?: boolean;
8597 // Indicates whether or not to block access to Settings app.
8598 settingsBlockSettingsApp?: boolean;
8599 // Indicates whether or not to block access to System in Settings app.
8600 settingsBlockSystemPage?: boolean;
8601 // Indicates whether or not to block access to Time &amp; Language in Settings app.
8602 settingsBlockTimeLanguagePage?: boolean;
8603 // Indicates whether or not to block access to Update &amp; Security in Settings app.
8604 settingsBlockUpdateSecurityPage?: boolean;
8605 // Indicates whether or not to block multiple users of the same app to share data.
8606 sharedUserAppDataAllowed?: boolean;
8607 // Indicates whether or not users can override SmartScreen Filter warnings about potentially malicious websites.
8608 smartScreenBlockPromptOverride?: boolean;
8609 // Indicates whether or not users can override the SmartScreen Filter warnings about downloading unverified files
8610 smartScreenBlockPromptOverrideForFiles?: boolean;
8611 /**
8612 * This property will be deprecated in July 2019 and will be replaced by property SmartScreenAppInstallControl. Allows IT
8613 * Admins to control whether users are allowed to install apps from places other than the Store.
8614 */
8615 smartScreenEnableAppInstallControl?: boolean;
8616 // Indicates whether or not to block the user from unpinning apps from taskbar.
8617 startBlockUnpinningAppsFromTaskbar?: boolean;
8618 /**
8619 * Setting the value of this collapses the app list, removes the app list entirely, or disables the corresponding toggle
8620 * in the Settings app. Possible values are: userDefined, collapse, remove, disableSettingsApp.
8621 */
8622 startMenuAppListVisibility?: WindowsStartMenuAppListVisibilityType;
8623 // Enabling this policy hides the change account setting from appearing in the user tile in the start menu.
8624 startMenuHideChangeAccountSettings?: boolean;
8625 /**
8626 * Enabling this policy hides the most used apps from appearing on the start menu and disables the corresponding toggle in
8627 * the Settings app.
8628 */
8629 startMenuHideFrequentlyUsedApps?: boolean;
8630 // Enabling this policy hides hibernate from appearing in the power button in the start menu.
8631 startMenuHideHibernate?: boolean;
8632 // Enabling this policy hides lock from appearing in the user tile in the start menu.
8633 startMenuHideLock?: boolean;
8634 // Enabling this policy hides the power button from appearing in the start menu.
8635 startMenuHidePowerButton?: boolean;
8636 /**
8637 * Enabling this policy hides recent jump lists from appearing on the start menu/taskbar and disables the corresponding
8638 * toggle in the Settings app.
8639 */
8640 startMenuHideRecentJumpLists?: boolean;
8641 /**
8642 * Enabling this policy hides recently added apps from appearing on the start menu and disables the corresponding toggle
8643 * in the Settings app.
8644 */
8645 startMenuHideRecentlyAddedApps?: boolean;
8646 // Enabling this policy hides 'Restart/Update and Restart' from appearing in the power button in the start menu.
8647 startMenuHideRestartOptions?: boolean;
8648 // Enabling this policy hides shut down/update and shut down from appearing in the power button in the start menu.
8649 startMenuHideShutDown?: boolean;
8650 // Enabling this policy hides sign out from appearing in the user tile in the start menu.
8651 startMenuHideSignOut?: boolean;
8652 // Enabling this policy hides sleep from appearing in the power button in the start menu.
8653 startMenuHideSleep?: boolean;
8654 // Enabling this policy hides switch account from appearing in the user tile in the start menu.
8655 startMenuHideSwitchAccount?: boolean;
8656 // Enabling this policy hides the user tile from appearing in the start menu.
8657 startMenuHideUserTile?: boolean;
8658 /**
8659 * This policy setting allows you to import Edge assets to be used with startMenuLayoutXml policy. Start layout can
8660 * contain secondary tile from Edge app which looks for Edge local asset file. Edge local asset would not exist and cause
8661 * Edge secondary tile to appear empty in this case. This policy only gets applied when startMenuLayoutXml policy is
8662 * modified. The value should be a UTF-8 Base64 encoded byte array.
8663 */
8664 startMenuLayoutEdgeAssetsXml?: NullableOption<number>;
8665 /**
8666 * Allows admins to override the default Start menu layout and prevents the user from changing it. The layout is modified
8667 * by specifying an XML file based on a layout modification schema. XML needs to be in a UTF8 encoded byte array format.
8668 */
8669 startMenuLayoutXml?: NullableOption<number>;
8670 // Allows admins to decide how the Start menu is displayed. Possible values are: userDefined, fullScreen, nonFullScreen.
8671 startMenuMode?: WindowsStartMenuModeType;
8672 /**
8673 * Enforces the visibility (Show/Hide) of the Documents folder shortcut on the Start menu. Possible values are:
8674 * notConfigured, hide, show.
8675 */
8676 startMenuPinnedFolderDocuments?: VisibilitySetting;
8677 /**
8678 * Enforces the visibility (Show/Hide) of the Downloads folder shortcut on the Start menu. Possible values are:
8679 * notConfigured, hide, show.
8680 */
8681 startMenuPinnedFolderDownloads?: VisibilitySetting;
8682 /**
8683 * Enforces the visibility (Show/Hide) of the FileExplorer shortcut on the Start menu. Possible values are: notConfigured,
8684 * hide, show.
8685 */
8686 startMenuPinnedFolderFileExplorer?: VisibilitySetting;
8687 /**
8688 * Enforces the visibility (Show/Hide) of the HomeGroup folder shortcut on the Start menu. Possible values are:
8689 * notConfigured, hide, show.
8690 */
8691 startMenuPinnedFolderHomeGroup?: VisibilitySetting;
8692 /**
8693 * Enforces the visibility (Show/Hide) of the Music folder shortcut on the Start menu. Possible values are: notConfigured,
8694 * hide, show.
8695 */
8696 startMenuPinnedFolderMusic?: VisibilitySetting;
8697 /**
8698 * Enforces the visibility (Show/Hide) of the Network folder shortcut on the Start menu. Possible values are:
8699 * notConfigured, hide, show.
8700 */
8701 startMenuPinnedFolderNetwork?: VisibilitySetting;
8702 /**
8703 * Enforces the visibility (Show/Hide) of the PersonalFolder shortcut on the Start menu. Possible values are:
8704 * notConfigured, hide, show.
8705 */
8706 startMenuPinnedFolderPersonalFolder?: VisibilitySetting;
8707 /**
8708 * Enforces the visibility (Show/Hide) of the Pictures folder shortcut on the Start menu. Possible values are:
8709 * notConfigured, hide, show.
8710 */
8711 startMenuPinnedFolderPictures?: VisibilitySetting;
8712 /**
8713 * Enforces the visibility (Show/Hide) of the Settings folder shortcut on the Start menu. Possible values are:
8714 * notConfigured, hide, show.
8715 */
8716 startMenuPinnedFolderSettings?: VisibilitySetting;
8717 /**
8718 * Enforces the visibility (Show/Hide) of the Videos folder shortcut on the Start menu. Possible values are:
8719 * notConfigured, hide, show.
8720 */
8721 startMenuPinnedFolderVideos?: VisibilitySetting;
8722 // Indicates whether or not to Block the user from using removable storage.
8723 storageBlockRemovableStorage?: boolean;
8724 // Indicating whether or not to require encryption on a mobile device.
8725 storageRequireMobileDeviceEncryption?: boolean;
8726 // Indicates whether application data is restricted to the system drive.
8727 storageRestrictAppDataToSystemVolume?: boolean;
8728 // Indicates whether the installation of applications is restricted to the system drive.
8729 storageRestrictAppInstallToSystemVolume?: boolean;
8730 // Whether the device is required to connect to the network.
8731 tenantLockdownRequireNetworkDuringOutOfBoxExperience?: boolean;
8732 // Indicates whether or not to Block the user from USB connection.
8733 usbBlocked?: boolean;
8734 // Indicates whether or not to Block the user from voice recording.
8735 voiceRecordingBlocked?: boolean;
8736 // Indicates whether or not user's localhost IP address is displayed while making phone calls using the WebRTC
8737 webRtcBlockLocalhostIpAddress?: boolean;
8738 // Indicating whether or not to block automatically connecting to Wi-Fi hotspots. Has no impact if Wi-Fi is blocked.
8739 wiFiBlockAutomaticConnectHotspots?: boolean;
8740 // Indicates whether or not to Block the user from using Wi-Fi.
8741 wiFiBlocked?: boolean;
8742 // Indicates whether or not to Block the user from using Wi-Fi manual configuration.
8743 wiFiBlockManualConfiguration?: boolean;
8744 /**
8745 * Specify how often devices scan for Wi-Fi networks. Supported values are 1-500, where 100 = default, and 500 = low
8746 * frequency. Valid values 1 to 500
8747 */
8748 wiFiScanInterval?: NullableOption<number>;
8749 /**
8750 * Allows IT admins to block experiences that are typically for consumers only, such as Start suggestions, Membership
8751 * notifications, Post-OOBE app install and redirect tiles.
8752 */
8753 windowsSpotlightBlockConsumerSpecificFeatures?: boolean;
8754 // Allows IT admins to turn off all Windows Spotlight features
8755 windowsSpotlightBlocked?: boolean;
8756 /**
8757 * Block suggestions from Microsoft that show after each OS clean install, upgrade or in an on-going basis to introduce
8758 * users to what is new or changed
8759 */
8760 windowsSpotlightBlockOnActionCenter?: boolean;
8761 // Block personalized content in Windows spotlight based on user’s device usage.
8762 windowsSpotlightBlockTailoredExperiences?: boolean;
8763 // Block third party content delivered via Windows Spotlight
8764 windowsSpotlightBlockThirdPartyNotifications?: boolean;
8765 // Block Windows Spotlight Windows welcome experience
8766 windowsSpotlightBlockWelcomeExperience?: boolean;
8767 // Allows IT admins to turn off the popup of Windows Tips.
8768 windowsSpotlightBlockWindowsTips?: boolean;
8769 // Specifies the type of Spotlight. Possible values are: notConfigured, disabled, enabled.
8770 windowsSpotlightConfigureOnLockScreen?: WindowsSpotlightEnablementSettings;
8771 // Indicates whether or not to block automatic update of apps from Windows Store.
8772 windowsStoreBlockAutoUpdate?: boolean;
8773 // Indicates whether or not to Block the user from using the Windows store.
8774 windowsStoreBlocked?: boolean;
8775 // Indicates whether or not to enable Private Store Only.
8776 windowsStoreEnablePrivateStoreOnly?: boolean;
8777 // Indicates whether or not to allow other devices from discovering this PC for projection.
8778 wirelessDisplayBlockProjectionToThisDevice?: boolean;
8779 // Indicates whether or not to allow user input from wireless display receiver.
8780 wirelessDisplayBlockUserInputFromReceiver?: boolean;
8781 // Indicates whether or not to require a PIN for new devices to initiate pairing.
8782 wirelessDisplayRequirePinForPairing?: boolean;
8783}
8784export interface Windows10MobileCompliancePolicy extends DeviceCompliancePolicy {
8785 // Require devices to be reported healthy by Windows Device Health Attestation - bit locker is enabled
8786 bitLockerEnabled?: boolean;
8787 // Require devices to be reported as healthy by Windows Device Health Attestation.
8788 codeIntegrityEnabled?: boolean;
8789 /**
8790 * Require devices to be reported as healthy by Windows Device Health Attestation - early launch antimalware driver is
8791 * enabled.
8792 */
8793 earlyLaunchAntiMalwareDriverEnabled?: boolean;
8794 // Maximum Windows Phone version.
8795 osMaximumVersion?: NullableOption<string>;
8796 // Minimum Windows Phone version.
8797 osMinimumVersion?: NullableOption<string>;
8798 // Whether or not to block syncing the calendar.
8799 passwordBlockSimple?: boolean;
8800 // Number of days before password expiration. Valid values 1 to 255
8801 passwordExpirationDays?: NullableOption<number>;
8802 // The number of character sets required in the password.
8803 passwordMinimumCharacterSetCount?: NullableOption<number>;
8804 // Minimum password length. Valid values 4 to 16
8805 passwordMinimumLength?: NullableOption<number>;
8806 // Minutes of inactivity before a password is required.
8807 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
8808 // The number of previous passwords to prevent re-use of.
8809 passwordPreviousPasswordBlockCount?: NullableOption<number>;
8810 // Require a password to unlock Windows Phone device.
8811 passwordRequired?: boolean;
8812 // The required password type. Possible values are: deviceDefault, alphanumeric, numeric.
8813 passwordRequiredType?: RequiredPasswordType;
8814 // Require a password to unlock an idle device.
8815 passwordRequireToUnlockFromIdle?: boolean;
8816 // Require devices to be reported as healthy by Windows Device Health Attestation - secure boot is enabled.
8817 secureBootEnabled?: boolean;
8818 // Require encryption on windows devices.
8819 storageRequireEncryption?: boolean;
8820}
8821export interface Windows10SecureAssessmentConfiguration extends DeviceConfiguration {
8822 // Indicates whether or not to allow the app from printing during the test.
8823 allowPrinting?: boolean;
8824 // Indicates whether or not to allow screen capture capability during a test.
8825 allowScreenCapture?: boolean;
8826 // Indicates whether or not to allow text suggestions during the test.
8827 allowTextSuggestion?: boolean;
8828 /**
8829 * The account used to configure the Windows device for taking the test. The user can be a domain account (domain/user),
8830 * an AAD account (username@tenant.com) or a local account (username).
8831 */
8832 configurationAccount?: NullableOption<string>;
8833 /**
8834 * Url link to an assessment that's automatically loaded when the secure assessment browser is launched. It has to be a
8835 * valid Url (http[s]://msdn.microsoft.com/).
8836 */
8837 launchUri?: NullableOption<string>;
8838}
8839export interface Windows10TeamGeneralConfiguration extends DeviceConfiguration {
8840 // Indicates whether or not to Block Azure Operational Insights.
8841 azureOperationalInsightsBlockTelemetry?: boolean;
8842 // The Azure Operational Insights workspace id.
8843 azureOperationalInsightsWorkspaceId?: NullableOption<string>;
8844 // The Azure Operational Insights Workspace key.
8845 azureOperationalInsightsWorkspaceKey?: NullableOption<string>;
8846 // Specifies whether to automatically launch the Connect app whenever a projection is initiated.
8847 connectAppBlockAutoLaunch?: boolean;
8848 // Indicates whether or not to Block setting a maintenance window for device updates.
8849 maintenanceWindowBlocked?: boolean;
8850 // Maintenance window duration for device updates. Valid values 0 to 5
8851 maintenanceWindowDurationInHours?: NullableOption<number>;
8852 // Maintenance window start time for device updates.
8853 maintenanceWindowStartTime?: NullableOption<string>;
8854 // Indicates whether or not to Block wireless projection.
8855 miracastBlocked?: boolean;
8856 /**
8857 * The channel. Possible values are: userDefined, one, two, three, four, five, six, seven, eight, nine, ten, eleven,
8858 * thirtySix, forty, fortyFour, fortyEight, oneHundredFortyNine, oneHundredFiftyThree, oneHundredFiftySeven,
8859 * oneHundredSixtyOne, oneHundredSixtyFive.
8860 */
8861 miracastChannel?: MiracastChannel;
8862 // Indicates whether or not to require a pin for wireless projection.
8863 miracastRequirePin?: boolean;
8864 /**
8865 * Specifies whether to disable the 'My meetings and files' feature in the Start menu, which shows the signed-in user's
8866 * meetings and files from Office 365.
8867 */
8868 settingsBlockMyMeetingsAndFiles?: boolean;
8869 // Specifies whether to allow the ability to resume a session when the session times out.
8870 settingsBlockSessionResume?: boolean;
8871 // Specifies whether to disable auto-populating of the sign-in dialog with invitees from scheduled meetings.
8872 settingsBlockSigninSuggestions?: boolean;
8873 /**
8874 * Specifies the default volume value for a new session. Permitted values are 0-100. The default is 45. Valid values 0 to
8875 * 100
8876 */
8877 settingsDefaultVolume?: NullableOption<number>;
8878 // Specifies the number of minutes until the Hub screen turns off.
8879 settingsScreenTimeoutInMinutes?: NullableOption<number>;
8880 // Specifies the number of minutes until the session times out.
8881 settingsSessionTimeoutInMinutes?: NullableOption<number>;
8882 // Specifies the number of minutes until the Hub enters sleep mode.
8883 settingsSleepTimeoutInMinutes?: NullableOption<number>;
8884 // The welcome screen background image URL. The URL must use the HTTPS protocol and return a PNG image.
8885 welcomeScreenBackgroundImageUrl?: NullableOption<string>;
8886 // Indicates whether or not to Block the welcome screen from waking up automatically when someone enters the room.
8887 welcomeScreenBlockAutomaticWakeUp?: boolean;
8888 /**
8889 * The welcome screen meeting information shown. Possible values are: userDefined, showOrganizerAndTimeOnly,
8890 * showOrganizerAndTimeAndSubject.
8891 */
8892 welcomeScreenMeetingInformation?: WelcomeScreenMeetingInformation;
8893}
8894export interface Windows81CompliancePolicy extends DeviceCompliancePolicy {
8895 // Maximum Windows 8.1 version.
8896 osMaximumVersion?: NullableOption<string>;
8897 // Minimum Windows 8.1 version.
8898 osMinimumVersion?: NullableOption<string>;
8899 // Indicates whether or not to block simple password.
8900 passwordBlockSimple?: boolean;
8901 // Password expiration in days.
8902 passwordExpirationDays?: NullableOption<number>;
8903 // The number of character sets required in the password.
8904 passwordMinimumCharacterSetCount?: NullableOption<number>;
8905 // The minimum password length.
8906 passwordMinimumLength?: NullableOption<number>;
8907 // Minutes of inactivity before a password is required.
8908 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
8909 // The number of previous passwords to prevent re-use of. Valid values 0 to 24
8910 passwordPreviousPasswordBlockCount?: NullableOption<number>;
8911 // Require a password to unlock Windows device.
8912 passwordRequired?: boolean;
8913 // The required password type. Possible values are: deviceDefault, alphanumeric, numeric.
8914 passwordRequiredType?: RequiredPasswordType;
8915 // Indicates whether or not to require encryption on a windows 8.1 device.
8916 storageRequireEncryption?: boolean;
8917}
8918export interface Windows81GeneralConfiguration extends DeviceConfiguration {
8919 /**
8920 * Indicates whether or not to Block the user from adding email accounts to the device that are not associated with a
8921 * Microsoft account.
8922 */
8923 accountsBlockAddingNonMicrosoftAccountEmail?: boolean;
8924 // Value indicating whether this policy only applies to Windows 8.1. This property is read-only.
8925 applyOnlyToWindows81?: boolean;
8926 // Indicates whether or not to block auto fill.
8927 browserBlockAutofill?: boolean;
8928 // Indicates whether or not to block automatic detection of Intranet sites.
8929 browserBlockAutomaticDetectionOfIntranetSites?: boolean;
8930 // Indicates whether or not to block enterprise mode access.
8931 browserBlockEnterpriseModeAccess?: boolean;
8932 // Indicates whether or not to Block the user from using JavaScript.
8933 browserBlockJavaScript?: boolean;
8934 // Indicates whether or not to block plug-ins.
8935 browserBlockPlugins?: boolean;
8936 // Indicates whether or not to block popups.
8937 browserBlockPopups?: boolean;
8938 // Indicates whether or not to Block the user from sending the do not track header.
8939 browserBlockSendingDoNotTrackHeader?: boolean;
8940 // Indicates whether or not to block a single word entry on Intranet sites.
8941 browserBlockSingleWordEntryOnIntranetSites?: boolean;
8942 // The enterprise mode site list location. Could be a local file, local network or http location.
8943 browserEnterpriseModeSiteListLocation?: NullableOption<string>;
8944 // The internet security level. Possible values are: userDefined, medium, mediumHigh, high.
8945 browserInternetSecurityLevel?: InternetSiteSecurityLevel;
8946 // The Intranet security level. Possible values are: userDefined, low, mediumLow, medium, mediumHigh, high.
8947 browserIntranetSecurityLevel?: SiteSecurityLevel;
8948 // The logging report location.
8949 browserLoggingReportLocation?: NullableOption<string>;
8950 // Indicates whether or not to require a firewall.
8951 browserRequireFirewall?: boolean;
8952 // Indicates whether or not to require fraud warning.
8953 browserRequireFraudWarning?: boolean;
8954 // Indicates whether or not to require high security for restricted sites.
8955 browserRequireHighSecurityForRestrictedSites?: boolean;
8956 // Indicates whether or not to require the user to use the smart screen filter.
8957 browserRequireSmartScreen?: boolean;
8958 // The trusted sites security level. Possible values are: userDefined, low, mediumLow, medium, mediumHigh, high.
8959 browserTrustedSitesSecurityLevel?: SiteSecurityLevel;
8960 // Indicates whether or not to block data roaming.
8961 cellularBlockDataRoaming?: boolean;
8962 // Indicates whether or not to block diagnostic data submission.
8963 diagnosticsBlockDataSubmission?: boolean;
8964 // Indicates whether or not to Block the user from using a pictures password and pin.
8965 passwordBlockPicturePasswordAndPin?: boolean;
8966 // Password expiration in days.
8967 passwordExpirationDays?: NullableOption<number>;
8968 // The number of character sets required in the password.
8969 passwordMinimumCharacterSetCount?: NullableOption<number>;
8970 // The minimum password length.
8971 passwordMinimumLength?: NullableOption<number>;
8972 // The minutes of inactivity before the screen times out.
8973 passwordMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
8974 // The number of previous passwords to prevent re-use of. Valid values 0 to 24
8975 passwordPreviousPasswordBlockCount?: NullableOption<number>;
8976 // The required password type. Possible values are: deviceDefault, alphanumeric, numeric.
8977 passwordRequiredType?: RequiredPasswordType;
8978 // The number of sign in failures before factory reset.
8979 passwordSignInFailureCountBeforeFactoryReset?: NullableOption<number>;
8980 // Indicates whether or not to require encryption on a mobile device.
8981 storageRequireDeviceEncryption?: boolean;
8982 // Indicates whether or not to require automatic updates.
8983 updatesRequireAutomaticUpdates?: boolean;
8984 /**
8985 * The user account control settings. Possible values are: userDefined, alwaysNotify, notifyOnAppChanges,
8986 * notifyOnAppChangesWithoutDimming, neverNotify.
8987 */
8988 userAccountControlSettings?: WindowsUserAccountControlSettings;
8989 // The work folders url.
8990 workFoldersUrl?: NullableOption<string>;
8991}
8992export interface WindowsDefenderAdvancedThreatProtectionConfiguration extends DeviceConfiguration {
8993 // Windows Defender AdvancedThreatProtection 'Allow Sample Sharing' Rule
8994 allowSampleSharing?: boolean;
8995 // Expedite Windows Defender Advanced Threat Protection telemetry reporting frequency.
8996 enableExpeditedTelemetryReporting?: boolean;
8997}
8998export interface WindowsPhone81CompliancePolicy extends DeviceCompliancePolicy {
8999 // Maximum Windows Phone version.
9000 osMaximumVersion?: NullableOption<string>;
9001 // Minimum Windows Phone version.
9002 osMinimumVersion?: NullableOption<string>;
9003 // Whether or not to block syncing the calendar.
9004 passwordBlockSimple?: boolean;
9005 // Number of days before the password expires.
9006 passwordExpirationDays?: NullableOption<number>;
9007 // The number of character sets required in the password.
9008 passwordMinimumCharacterSetCount?: NullableOption<number>;
9009 // Minimum length of passwords.
9010 passwordMinimumLength?: NullableOption<number>;
9011 // Minutes of inactivity before a password is required.
9012 passwordMinutesOfInactivityBeforeLock?: NullableOption<number>;
9013 // Number of previous passwords to block. Valid values 0 to 24
9014 passwordPreviousPasswordBlockCount?: NullableOption<number>;
9015 // Whether or not to require a password.
9016 passwordRequired?: boolean;
9017 // The required password type. Possible values are: deviceDefault, alphanumeric, numeric.
9018 passwordRequiredType?: RequiredPasswordType;
9019 // Require encryption on windows phone devices.
9020 storageRequireEncryption?: boolean;
9021}
9022export interface WindowsPhone81CustomConfiguration extends DeviceConfiguration {
9023 // OMA settings. This collection can contain a maximum of 1000 elements.
9024 omaSettings?: NullableOption<OmaSetting[]>;
9025}
9026export interface WindowsPhone81GeneralConfiguration extends DeviceConfiguration {
9027 // Value indicating whether this policy only applies to Windows Phone 8.1. This property is read-only.
9028 applyOnlyToWindowsPhone81?: boolean;
9029 // Indicates whether or not to block copy paste.
9030 appsBlockCopyPaste?: boolean;
9031 // Indicates whether or not to block bluetooth.
9032 bluetoothBlocked?: boolean;
9033 // Indicates whether or not to block camera.
9034 cameraBlocked?: boolean;
9035 // Indicates whether or not to block Wi-Fi tethering. Has no impact if Wi-Fi is blocked.
9036 cellularBlockWifiTethering?: boolean;
9037 // List that is in the AppComplianceList. Possible values are: none, appsInListCompliant, appsNotInListCompliant.
9038 compliantAppListType?: AppListType;
9039 /**
9040 * List of apps in the compliance (either allow list or block list, controlled by CompliantAppListType). This collection
9041 * can contain a maximum of 10000 elements.
9042 */
9043 compliantAppsList?: NullableOption<AppListItem[]>;
9044 // Indicates whether or not to block diagnostic data submission.
9045 diagnosticDataBlockSubmission?: boolean;
9046 // Indicates whether or not to block custom email accounts.
9047 emailBlockAddingAccounts?: boolean;
9048 // Indicates whether or not to block location services.
9049 locationServicesBlocked?: boolean;
9050 // Indicates whether or not to block using a Microsoft Account.
9051 microsoftAccountBlocked?: boolean;
9052 // Indicates whether or not to block Near-Field Communication.
9053 nfcBlocked?: boolean;
9054 // Indicates whether or not to block syncing the calendar.
9055 passwordBlockSimple?: boolean;
9056 // Number of days before the password expires.
9057 passwordExpirationDays?: NullableOption<number>;
9058 // Number of character sets a password must contain.
9059 passwordMinimumCharacterSetCount?: NullableOption<number>;
9060 // Minimum length of passwords.
9061 passwordMinimumLength?: NullableOption<number>;
9062 // Minutes of inactivity before screen timeout.
9063 passwordMinutesOfInactivityBeforeScreenTimeout?: NullableOption<number>;
9064 // Number of previous passwords to block. Valid values 0 to 24
9065 passwordPreviousPasswordBlockCount?: NullableOption<number>;
9066 // Indicates whether or not to require a password.
9067 passwordRequired?: boolean;
9068 // Password type that is required. Possible values are: deviceDefault, alphanumeric, numeric.
9069 passwordRequiredType?: RequiredPasswordType;
9070 // Number of sign in failures allowed before factory reset.
9071 passwordSignInFailureCountBeforeFactoryReset?: NullableOption<number>;
9072 // Indicates whether or not to block screenshots.
9073 screenCaptureBlocked?: boolean;
9074 // Indicates whether or not to block removable storage.
9075 storageBlockRemovableStorage?: boolean;
9076 // Indicates whether or not to require encryption.
9077 storageRequireEncryption?: boolean;
9078 // Indicates whether or not to block the web browser.
9079 webBrowserBlocked?: boolean;
9080 // Indicates whether or not to block automatically connecting to Wi-Fi hotspots. Has no impact if Wi-Fi is blocked.
9081 wifiBlockAutomaticConnectHotspots?: boolean;
9082 // Indicates whether or not to block Wi-Fi.
9083 wifiBlocked?: boolean;
9084 // Indicates whether or not to block Wi-Fi hotspot reporting. Has no impact if Wi-Fi is blocked.
9085 wifiBlockHotspotReporting?: boolean;
9086 // Indicates whether or not to block the Windows Store.
9087 windowsStoreBlocked?: boolean;
9088}
9089export interface WindowsUpdateForBusinessConfiguration extends DeviceConfiguration {
9090 /**
9091 * Automatic update mode. Possible values are: userDefined, notifyDownload, autoInstallAtMaintenanceTime,
9092 * autoInstallAndRebootAtMaintenanceTime, autoInstallAndRebootAtScheduledTime, autoInstallAndRebootWithoutEndUserControl,
9093 * windowsDefault.
9094 */
9095 automaticUpdateMode?: AutomaticUpdateMode;
9096 /**
9097 * Determines which branch devices will receive their updates from. Possible values are: userDefined, all,
9098 * businessReadyOnly, windowsInsiderBuildFast, windowsInsiderBuildSlow, windowsInsiderBuildRelease.
9099 */
9100 businessReadyUpdatesOnly?: WindowsUpdateType;
9101 /**
9102 * Delivery Optimization Mode. Possible values are: userDefined, httpOnly, httpWithPeeringNat,
9103 * httpWithPeeringPrivateGroup, httpWithInternetPeering, simpleDownload, bypassMode.
9104 */
9105 deliveryOptimizationMode?: WindowsDeliveryOptimizationMode;
9106 // Exclude Windows update Drivers
9107 driversExcluded?: boolean;
9108 // Defer Feature Updates by these many days
9109 featureUpdatesDeferralPeriodInDays?: number;
9110 // Pause Feature Updates
9111 featureUpdatesPaused?: boolean;
9112 // Feature Updates Pause Expiry datetime
9113 featureUpdatesPauseExpiryDateTime?: string;
9114 // Installation schedule
9115 installationSchedule?: NullableOption<WindowsUpdateInstallScheduleType>;
9116 // Allow Microsoft Update Service
9117 microsoftUpdateServiceAllowed?: boolean;
9118 // The pre-release features. Possible values are: userDefined, settingsOnly, settingsAndExperimentations, notAllowed.
9119 prereleaseFeatures?: PrereleaseFeatures;
9120 // Defer Quality Updates by these many days
9121 qualityUpdatesDeferralPeriodInDays?: number;
9122 // Pause Quality Updates
9123 qualityUpdatesPaused?: boolean;
9124 // Quality Updates Pause Expiry datetime
9125 qualityUpdatesPauseExpiryDateTime?: string;
9126}
9127export interface EnrollmentConfigurationAssignment extends Entity {
9128 // Represents an assignment to managed devices in the tenant
9129 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
9130}
9131export interface DeviceEnrollmentLimitConfiguration extends DeviceEnrollmentConfiguration {
9132 // The maximum number of devices that a user can enroll
9133 limit?: number;
9134}
9135export interface DeviceEnrollmentPlatformRestrictionsConfiguration extends DeviceEnrollmentConfiguration {
9136 // Android restrictions based on platform, platform operating system version, and device ownership
9137 androidRestriction?: NullableOption<DeviceEnrollmentPlatformRestriction>;
9138 // Ios restrictions based on platform, platform operating system version, and device ownership
9139 iosRestriction?: NullableOption<DeviceEnrollmentPlatformRestriction>;
9140 // Mac restrictions based on platform, platform operating system version, and device ownership
9141 macOSRestriction?: NullableOption<DeviceEnrollmentPlatformRestriction>;
9142 // Windows mobile restrictions based on platform, platform operating system version, and device ownership
9143 windowsMobileRestriction?: NullableOption<DeviceEnrollmentPlatformRestriction>;
9144 // Windows restrictions based on platform, platform operating system version, and device ownership
9145 windowsRestriction?: NullableOption<DeviceEnrollmentPlatformRestriction>;
9146}
9147export interface DeviceEnrollmentWindowsHelloForBusinessConfiguration extends DeviceEnrollmentConfiguration {
9148 /**
9149 * Controls the ability to use the anti-spoofing features for facial recognition on devices which support it. If set to
9150 * disabled, anti-spoofing features are not allowed. If set to Not Configured, the user can choose whether they want to
9151 * use anti-spoofing. Possible values are: notConfigured, enabled, disabled.
9152 */
9153 enhancedBiometricsState?: Enablement;
9154 /**
9155 * Controls the period of time (in days) that a PIN can be used before the system requires the user to change it. This
9156 * must be set between 0 and 730, inclusive. If set to 0, the user's PIN will never expire
9157 */
9158 pinExpirationInDays?: number;
9159 /**
9160 * Controls the ability to use lowercase letters in the Windows Hello for Business PIN. Allowed permits the use of
9161 * lowercase letter(s), whereas Required ensures they are present. If set to Not Allowed, lowercase letters will not be
9162 * permitted. Possible values are: allowed, required, disallowed.
9163 */
9164 pinLowercaseCharactersUsage?: WindowsHelloForBusinessPinUsage;
9165 /**
9166 * Controls the maximum number of characters allowed for the Windows Hello for Business PIN. This value must be between 4
9167 * and 127, inclusive. This value must be greater than or equal to the value set for the minimum PIN.
9168 */
9169 pinMaximumLength?: number;
9170 /**
9171 * Controls the minimum number of characters required for the Windows Hello for Business PIN. This value must be between 4
9172 * and 127, inclusive, and less than or equal to the value set for the maximum PIN.
9173 */
9174 pinMinimumLength?: number;
9175 /**
9176 * Controls the ability to prevent users from using past PINs. This must be set between 0 and 50, inclusive, and the
9177 * current PIN of the user is included in that count. If set to 0, previous PINs are not stored. PIN history is not
9178 * preserved through a PIN reset.
9179 */
9180 pinPreviousBlockCount?: number;
9181 /**
9182 * Controls the ability to use special characters in the Windows Hello for Business PIN. Allowed permits the use of
9183 * special character(s), whereas Required ensures they are present. If set to Not Allowed, special character(s) will not
9184 * be permitted. Possible values are: allowed, required, disallowed.
9185 */
9186 pinSpecialCharactersUsage?: WindowsHelloForBusinessPinUsage;
9187 /**
9188 * Controls the ability to use uppercase letters in the Windows Hello for Business PIN. Allowed permits the use of
9189 * uppercase letter(s), whereas Required ensures they are present. If set to Not Allowed, uppercase letters will not be
9190 * permitted. Possible values are: allowed, required, disallowed.
9191 */
9192 pinUppercaseCharactersUsage?: WindowsHelloForBusinessPinUsage;
9193 /**
9194 * Controls the use of Remote Windows Hello for Business. Remote Windows Hello for Business provides the ability for a
9195 * portable, registered device to be usable as a companion for desktop authentication. The desktop must be Azure AD joined
9196 * and the companion device must have a Windows Hello for Business PIN.
9197 */
9198 remotePassportEnabled?: boolean;
9199 /**
9200 * Controls whether to require a Trusted Platform Module (TPM) for provisioning Windows Hello for Business. A TPM provides
9201 * an additional security benefit in that data stored on it cannot be used on other devices. If set to False, all devices
9202 * can provision Windows Hello for Business even if there is not a usable TPM.
9203 */
9204 securityDeviceRequired?: boolean;
9205 /**
9206 * Controls whether to allow the device to be configured for Windows Hello for Business. If set to disabled, the user
9207 * cannot provision Windows Hello for Business except on Azure Active Directory joined mobile phones if otherwise
9208 * required. If set to Not Configured, Intune will not override client defaults. Possible values are: notConfigured,
9209 * enabled, disabled.
9210 */
9211 state?: Enablement;
9212 /**
9213 * Controls the use of biometric gestures, such as face and fingerprint, as an alternative to the Windows Hello for
9214 * Business PIN. If set to False, biometric gestures are not allowed. Users must still configure a PIN as a backup in case
9215 * of failures.
9216 */
9217 unlockWithBiometricsEnabled?: boolean;
9218}
9219export interface ManagedMobileApp extends Entity {
9220 // The identifier for an app with it's operating system type.
9221 mobileAppIdentifier?: NullableOption<MobileAppIdentifier>;
9222 // Version of the entity.
9223 version?: NullableOption<string>;
9224}
9225export interface ManagedAppPolicyDeploymentSummary extends Entity {
9226 // Not yet documented
9227 configurationDeployedUserCount?: number;
9228 // Not yet documented
9229 configurationDeploymentSummaryPerApp?: NullableOption<ManagedAppPolicyDeploymentSummaryPerApp[]>;
9230 // Not yet documented
9231 displayName?: NullableOption<string>;
9232 // Not yet documented
9233 lastRefreshTime?: string;
9234 // Version of the entity.
9235 version?: NullableOption<string>;
9236}
9237// tslint:disable-next-line: no-empty-interface
9238export interface AndroidManagedAppRegistration extends ManagedAppRegistration {}
9239// tslint:disable-next-line: interface-name no-empty-interface
9240export interface IosManagedAppRegistration extends ManagedAppRegistration {}
9241export interface ManagedAppOperation extends Entity {
9242 // The operation name.
9243 displayName?: NullableOption<string>;
9244 // The last time the app operation was modified.
9245 lastModifiedDateTime?: string;
9246 // The current state of the operation
9247 state?: NullableOption<string>;
9248 // Version of the entity.
9249 version?: NullableOption<string>;
9250}
9251export interface ManagedAppStatusRaw extends ManagedAppStatus {
9252 // Status report content.
9253 content?: NullableOption<any>;
9254}
9255export interface TargetedManagedAppPolicyAssignment extends Entity {
9256 // Identifier for deployment to a group or app
9257 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
9258}
9259export interface WindowsInformationProtectionAppLockerFile extends Entity {
9260 // The friendly name
9261 displayName?: NullableOption<string>;
9262 // File as a byte array
9263 file?: NullableOption<number>;
9264 // SHA256 hash of the file
9265 fileHash?: NullableOption<string>;
9266 // Version of the entity.
9267 version?: NullableOption<string>;
9268}
9269export interface LocalizedNotificationMessage extends Entity {
9270 /**
9271 * Flag to indicate whether or not this is the default locale for language fallback. This flag can only be set. To unset,
9272 * set this property to true on another Localized Notification Message.
9273 */
9274 isDefault?: boolean;
9275 // DateTime the object was last modified.
9276 lastModifiedDateTime?: string;
9277 // The Locale for which this message is destined.
9278 locale?: string;
9279 // The Message Template content.
9280 messageTemplate?: string;
9281 // The Message Template Subject.
9282 subject?: string;
9283}
9284// tslint:disable-next-line: no-empty-interface
9285export interface DeviceAndAppManagementRoleDefinition extends RoleDefinition {}
9286export interface EnrollmentTroubleshootingEvent extends DeviceManagementTroubleshootingEvent {
9287 // Azure AD device identifier.
9288 deviceId?: NullableOption<string>;
9289 /**
9290 * Type of the enrollment. Possible values are: unknown, userEnrollment, deviceEnrollmentManager, appleBulkWithUser,
9291 * appleBulkWithoutUser, windowsAzureADJoin, windowsBulkUserless, windowsAutoEnrollment, windowsBulkAzureDomainJoin,
9292 * windowsCoManagement, appleUserEnrollment, appleUserEnrollmentWithServiceAccount, azureAdJoinUsingAzureVmExtension,
9293 * androidEnterpriseDedicatedDevice, androidEnterpriseFullyManaged, androidEnterpriseCorporateWorkProfile.
9294 */
9295 enrollmentType?: DeviceEnrollmentType;
9296 /**
9297 * Highlevel failure category. Possible values are: unknown, authentication, authorization, accountValidation,
9298 * userValidation, deviceNotSupported, inMaintenance, badRequest, featureNotSupported, enrollmentRestrictionsEnforced,
9299 * clientDisconnected, userAbandonment.
9300 */
9301 failureCategory?: DeviceEnrollmentFailureReason;
9302 // Detailed failure reason.
9303 failureReason?: NullableOption<string>;
9304 // Device identifier created or collected by Intune.
9305 managedDeviceIdentifier?: NullableOption<string>;
9306 // Operating System.
9307 operatingSystem?: NullableOption<string>;
9308 // OS Version.
9309 osVersion?: NullableOption<string>;
9310 // Identifier for the user that tried to enroll the device.
9311 userId?: NullableOption<string>;
9312}
9313// tslint:disable-next-line: no-empty-interface
9314export interface SearchEntity extends Entity {}
9315export interface Planner extends Entity {
9316 // Read-only. Nullable. Returns a collection of the specified buckets
9317 buckets?: NullableOption<PlannerBucket[]>;
9318 // Read-only. Nullable. Returns a collection of the specified plans
9319 plans?: NullableOption<PlannerPlan[]>;
9320 // Read-only. Nullable. Returns a collection of the specified tasks
9321 tasks?: NullableOption<PlannerTask[]>;
9322}
9323export interface PlannerBucket extends Entity {
9324 // Name of the bucket.
9325 name?: string;
9326 // Hint used to order items of this type in a list view. The format is defined as outlined here.
9327 orderHint?: NullableOption<string>;
9328 // Plan ID to which the bucket belongs.
9329 planId?: NullableOption<string>;
9330 // Read-only. Nullable. The collection of tasks in the bucket.
9331 tasks?: NullableOption<PlannerTask[]>;
9332}
9333export interface PlannerPlan extends Entity {
9334 // Read-only. The user who created the plan.
9335 createdBy?: NullableOption<IdentitySet>;
9336 /**
9337 * Read-only. Date and time at which the plan is created. The Timestamp type represents date and time information using
9338 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
9339 * '2014-01-01T00:00:00Z'
9340 */
9341 createdDateTime?: NullableOption<string>;
9342 /**
9343 * ID of the Group that owns the plan. A valid group must exist before this field can be set. After it is set, this
9344 * property can’t be updated.
9345 */
9346 owner?: NullableOption<string>;
9347 // Required. Title of the plan.
9348 title?: string;
9349 // Collection of buckets in the plan. Read-only. Nullable.
9350 buckets?: NullableOption<PlannerBucket[]>;
9351 // Additional details about the plan. Read-only. Nullable.
9352 details?: NullableOption<PlannerPlanDetails>;
9353 // Collection of tasks in the plan. Read-only. Nullable.
9354 tasks?: NullableOption<PlannerTask[]>;
9355}
9356export interface PlannerTask extends Entity {
9357 // Number of checklist items with value set to false, representing incomplete items.
9358 activeChecklistItemCount?: NullableOption<number>;
9359 // The categories to which the task has been applied. See applied Categories for possible values.
9360 appliedCategories?: NullableOption<PlannerAppliedCategories>;
9361 // Hint used to order items of this type in a list view. The format is defined as outlined here.
9362 assigneePriority?: NullableOption<string>;
9363 // The set of assignees the task is assigned to.
9364 assignments?: NullableOption<PlannerAssignments>;
9365 /**
9366 * Bucket ID to which the task belongs. The bucket needs to be in the plan that the task is in. It is 28 characters long
9367 * and case-sensitive. Format validation is done on the service.
9368 */
9369 bucketId?: NullableOption<string>;
9370 // Number of checklist items that are present on the task.
9371 checklistItemCount?: NullableOption<number>;
9372 // Identity of the user that completed the task.
9373 completedBy?: NullableOption<IdentitySet>;
9374 /**
9375 * Read-only. Date and time at which the 'percentComplete' of the task is set to '100'. The Timestamp type represents date
9376 * and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would
9377 * look like this: '2014-01-01T00:00:00Z'
9378 */
9379 completedDateTime?: NullableOption<string>;
9380 // Thread ID of the conversation on the task. This is the ID of the conversation thread object created in the group.
9381 conversationThreadId?: NullableOption<string>;
9382 // Identity of the user that created the task.
9383 createdBy?: NullableOption<IdentitySet>;
9384 /**
9385 * Read-only. Date and time at which the task is created. The Timestamp type represents date and time information using
9386 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
9387 * '2014-01-01T00:00:00Z'
9388 */
9389 createdDateTime?: NullableOption<string>;
9390 /**
9391 * Date and time at which the task is due. The Timestamp type represents date and time information using ISO 8601 format
9392 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
9393 */
9394 dueDateTime?: NullableOption<string>;
9395 // Read-only. Value is true if the details object of the task has a non-empty description and false otherwise.
9396 hasDescription?: NullableOption<boolean>;
9397 // Hint used to order items of this type in a list view. The format is defined as outlined here.
9398 orderHint?: NullableOption<string>;
9399 // Percentage of task completion. When set to 100, the task is considered completed.
9400 percentComplete?: NullableOption<number>;
9401 // Plan ID to which the task belongs.
9402 planId?: NullableOption<string>;
9403 /**
9404 * This sets the type of preview that shows up on the task. Possible values are: automatic, noPreview, checklist,
9405 * description, reference.
9406 */
9407 previewType?: NullableOption<PlannerPreviewType>;
9408 // Number of external references that exist on the task.
9409 referenceCount?: NullableOption<number>;
9410 /**
9411 * Date and time at which the task starts. The Timestamp type represents date and time information using ISO 8601 format
9412 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
9413 */
9414 startDateTime?: NullableOption<string>;
9415 // Title of the task.
9416 title?: string;
9417 // Read-only. Nullable. Used to render the task correctly in the task board view when grouped by assignedTo.
9418 assignedToTaskBoardFormat?: NullableOption<PlannerAssignedToTaskBoardTaskFormat>;
9419 // Read-only. Nullable. Used to render the task correctly in the task board view when grouped by bucket.
9420 bucketTaskBoardFormat?: NullableOption<PlannerBucketTaskBoardTaskFormat>;
9421 // Read-only. Nullable. Additional details about the task.
9422 details?: NullableOption<PlannerTaskDetails>;
9423 // Read-only. Nullable. Used to render the task correctly in the task board view when grouped by progress.
9424 progressTaskBoardFormat?: NullableOption<PlannerProgressTaskBoardTaskFormat>;
9425}
9426export interface PlannerAssignedToTaskBoardTaskFormat extends Entity {
9427 /**
9428 * Dictionary of hints used to order tasks on the AssignedTo view of the Task Board. The key of each entry is one of the
9429 * users the task is assigned to and the value is the order hint. The format of each value is defined as outlined here.
9430 */
9431 orderHintsByAssignee?: NullableOption<PlannerOrderHintsByAssignee>;
9432 /**
9433 * Hint value used to order the task on the AssignedTo view of the Task Board when the task is not assigned to anyone, or
9434 * if the orderHintsByAssignee dictionary does not provide an order hint for the user the task is assigned to. The format
9435 * is defined as outlined here.
9436 */
9437 unassignedOrderHint?: NullableOption<string>;
9438}
9439export interface PlannerBucketTaskBoardTaskFormat extends Entity {
9440 // Hint used to order tasks in the Bucket view of the Task Board. The format is defined as outlined here.
9441 orderHint?: NullableOption<string>;
9442}
9443export interface PlannerPlanDetails extends Entity {
9444 // An object that specifies the descriptions of the 25 categories that can be associated with tasks in the plan
9445 categoryDescriptions?: NullableOption<PlannerCategoryDescriptions>;
9446 /**
9447 * The set of user IDs that this plan is shared with. If you are using Microsoft 365 groups, use the groups API to manage
9448 * group membership to share the group's plan. You can also add existing members of the group to this collection, although
9449 * it is not required in order for them to access the plan owned by the group.
9450 */
9451 sharedWith?: NullableOption<PlannerUserIds>;
9452}
9453export interface PlannerProgressTaskBoardTaskFormat extends Entity {
9454 // Hint value used to order the task on the Progress view of the Task Board. The format is defined as outlined here.
9455 orderHint?: NullableOption<string>;
9456}
9457export interface PlannerTaskDetails extends Entity {
9458 // The collection of checklist items on the task.
9459 checklist?: NullableOption<PlannerChecklistItems>;
9460 // Description of the task
9461 description?: NullableOption<string>;
9462 /**
9463 * This sets the type of preview that shows up on the task. Possible values are: automatic, noPreview, checklist,
9464 * description, reference. When set to automatic the displayed preview is chosen by the app viewing the task.
9465 */
9466 previewType?: NullableOption<PlannerPreviewType>;
9467 // The collection of references on the task.
9468 references?: NullableOption<PlannerExternalReferences>;
9469}
9470export interface SharedInsight extends Entity {
9471 // Details about the shared item. Read only.
9472 lastShared?: NullableOption<SharingDetail>;
9473 // Reference properties of the shared document, such as the url and type of the document. Read-only
9474 resourceReference?: NullableOption<ResourceReference>;
9475 // Properties that you can use to visualize the document in your experience. Read-only
9476 resourceVisualization?: NullableOption<ResourceVisualization>;
9477 sharingHistory?: NullableOption<SharingDetail[]>;
9478 lastSharedMethod?: NullableOption<Entity>;
9479 /**
9480 * Used for navigating to the item that was shared. For file attachments, the type is fileAttachment. For linked
9481 * attachments, the type is driveItem.
9482 */
9483 resource?: NullableOption<Entity>;
9484}
9485export interface Trending extends Entity {
9486 lastModifiedDateTime?: NullableOption<string>;
9487 // Reference properties of the trending document, such as the url and type of the document.
9488 resourceReference?: NullableOption<ResourceReference>;
9489 // Properties that you can use to visualize the document in your experience.
9490 resourceVisualization?: NullableOption<ResourceVisualization>;
9491 /**
9492 * Value indicating how much the document is currently trending. The larger the number, the more the document is currently
9493 * trending around the user (the more relevant it is). Returned documents are sorted by this value.
9494 */
9495 weight?: number;
9496 // Used for navigating to the trending document.
9497 resource?: NullableOption<Entity>;
9498}
9499export interface UsedInsight extends Entity {
9500 // Information about when the item was last viewed or modified by the user. Read only.
9501 lastUsed?: NullableOption<UsageDetails>;
9502 // Reference properties of the used document, such as the url and type of the document. Read-only
9503 resourceReference?: NullableOption<ResourceReference>;
9504 // Properties that you can use to visualize the document in your experience. Read-only
9505 resourceVisualization?: NullableOption<ResourceVisualization>;
9506 /**
9507 * Used for navigating to the item that was used. For file attachments, the type is fileAttachment. For linked
9508 * attachments, the type is driveItem.
9509 */
9510 resource?: NullableOption<Entity>;
9511}
9512export interface ChangeTrackedEntity extends Entity {
9513 /**
9514 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
9515 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
9516 */
9517 createdDateTime?: NullableOption<string>;
9518 // Identity of the person who last modified the entity.
9519 lastModifiedBy?: NullableOption<IdentitySet>;
9520 /**
9521 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
9522 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
9523 */
9524 lastModifiedDateTime?: NullableOption<string>;
9525}
9526export interface ShiftPreferences extends ChangeTrackedEntity {
9527 // Availability of the user to be scheduled for work and its recurrence pattern.
9528 availability?: NullableOption<ShiftAvailability[]>;
9529}
9530export interface OnenoteEntityBaseModel extends Entity {
9531 // The endpoint where you can get details about the page. Read-only.
9532 self?: NullableOption<string>;
9533}
9534export interface OnenoteEntitySchemaObjectModel extends OnenoteEntityBaseModel {
9535 /**
9536 * The date and time when the page was created. The timestamp represents date and time information using ISO 8601 format
9537 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
9538 * Read-only.
9539 */
9540 createdDateTime?: NullableOption<string>;
9541}
9542export interface OnenoteEntityHierarchyModel extends OnenoteEntitySchemaObjectModel {
9543 // Identity of the user, device, and application which created the item. Read-only.
9544 createdBy?: NullableOption<IdentitySet>;
9545 // The name of the notebook.
9546 displayName?: NullableOption<string>;
9547 // Identity of the user, device, and application which created the item. Read-only.
9548 lastModifiedBy?: NullableOption<IdentitySet>;
9549 /**
9550 * The date and time when the notebook was last modified. The timestamp represents date and time information using ISO
9551 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
9552 * '2014-01-01T00:00:00Z'. Read-only.
9553 */
9554 lastModifiedDateTime?: NullableOption<string>;
9555}
9556export interface Notebook extends OnenoteEntityHierarchyModel {
9557 // Indicates whether this is the user's default notebook. Read-only.
9558 isDefault?: NullableOption<boolean>;
9559 /**
9560 * Indicates whether the notebook is shared. If true, the contents of the notebook can be seen by people other than the
9561 * owner. Read-only.
9562 */
9563 isShared?: NullableOption<boolean>;
9564 /**
9565 * Links for opening the notebook. The oneNoteClientURL link opens the notebook in the OneNote native client if it's
9566 * installed. The oneNoteWebURL link opens the notebook in OneNote on the web.
9567 */
9568 links?: NullableOption<NotebookLinks>;
9569 // The URL for the sectionGroups navigation property, which returns all the section groups in the notebook. Read-only.
9570 sectionGroupsUrl?: NullableOption<string>;
9571 // The URL for the sections navigation property, which returns all the sections in the notebook. Read-only.
9572 sectionsUrl?: NullableOption<string>;
9573 /**
9574 * Possible values are: Owner, Contributor, Reader, None. Owner represents owner-level access to the notebook. Contributor
9575 * represents read/write access to the notebook. Reader represents read-only access to the notebook. Read-only.
9576 */
9577 userRole?: NullableOption<OnenoteUserRole>;
9578 // The section groups in the notebook. Read-only. Nullable.
9579 sectionGroups?: NullableOption<SectionGroup[]>;
9580 // The sections in the notebook. Read-only. Nullable.
9581 sections?: NullableOption<OnenoteSection[]>;
9582}
9583export interface SectionGroup extends OnenoteEntityHierarchyModel {
9584 /**
9585 * The URL for the sectionGroups navigation property, which returns all the section groups in the section group.
9586 * Read-only.
9587 */
9588 sectionGroupsUrl?: NullableOption<string>;
9589 // The URL for the sections navigation property, which returns all the sections in the section group. Read-only.
9590 sectionsUrl?: NullableOption<string>;
9591 // The notebook that contains the section group. Read-only.
9592 parentNotebook?: NullableOption<Notebook>;
9593 // The section group that contains the section group. Read-only.
9594 parentSectionGroup?: NullableOption<SectionGroup>;
9595 // The section groups in the section. Read-only. Nullable.
9596 sectionGroups?: NullableOption<SectionGroup[]>;
9597 // The sections in the section group. Read-only. Nullable.
9598 sections?: NullableOption<OnenoteSection[]>;
9599}
9600export interface OnenoteSection extends OnenoteEntityHierarchyModel {
9601 // Indicates whether this is the user's default section. Read-only.
9602 isDefault?: NullableOption<boolean>;
9603 /**
9604 * Links for opening the section. The oneNoteClientURL link opens the section in the OneNote native client if it's
9605 * installed. The oneNoteWebURL link opens the section in OneNote on the web.
9606 */
9607 links?: NullableOption<SectionLinks>;
9608 // The pages endpoint where you can get details for all the pages in the section. Read-only.
9609 pagesUrl?: NullableOption<string>;
9610 // The collection of pages in the section. Read-only. Nullable.
9611 pages?: NullableOption<OnenotePage[]>;
9612 // The notebook that contains the section. Read-only.
9613 parentNotebook?: NullableOption<Notebook>;
9614 // The section group that contains the section. Read-only.
9615 parentSectionGroup?: NullableOption<SectionGroup>;
9616}
9617export interface Operation extends Entity {
9618 // The start time of the operation.
9619 createdDateTime?: NullableOption<string>;
9620 // The time of the last action of the operation.
9621 lastActionDateTime?: NullableOption<string>;
9622 // Possible values are: notStarted, running, completed, failed. Read-only.
9623 status?: NullableOption<OperationStatus>;
9624}
9625export interface OnenoteOperation extends Operation {
9626 // The error returned by the operation.
9627 error?: NullableOption<OnenoteOperationError>;
9628 // The operation percent complete if the operation is still in running status
9629 percentComplete?: NullableOption<string>;
9630 // The resource id.
9631 resourceId?: NullableOption<string>;
9632 // The resource URI for the object. For example, the resource URI for a copied page or section.
9633 resourceLocation?: NullableOption<string>;
9634}
9635export interface OnenotePage extends OnenoteEntitySchemaObjectModel {
9636 // The page's HTML content.
9637 content?: NullableOption<any>;
9638 // The URL for the page's HTML content. Read-only.
9639 contentUrl?: NullableOption<string>;
9640 // The unique identifier of the application that created the page. Read-only.
9641 createdByAppId?: NullableOption<string>;
9642 /**
9643 * The date and time when the page was last modified. The timestamp represents date and time information using ISO 8601
9644 * format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
9645 * '2014-01-01T00:00:00Z'. Read-only.
9646 */
9647 lastModifiedDateTime?: NullableOption<string>;
9648 // The indentation level of the page. Read-only.
9649 level?: NullableOption<number>;
9650 /**
9651 * Links for opening the page. The oneNoteClientURL link opens the page in the OneNote native client if it 's installed.
9652 * The oneNoteWebUrl link opens the page in OneNote on the web. Read-only.
9653 */
9654 links?: NullableOption<PageLinks>;
9655 // The order of the page within its parent section. Read-only.
9656 order?: NullableOption<number>;
9657 // The title of the page.
9658 title?: NullableOption<string>;
9659 userTags?: NullableOption<string[]>;
9660 // The notebook that contains the page. Read-only.
9661 parentNotebook?: NullableOption<Notebook>;
9662 // The section that contains the page. Read-only.
9663 parentSection?: NullableOption<OnenoteSection>;
9664}
9665export interface OnenoteResource extends OnenoteEntityBaseModel {
9666 // The content stream
9667 content?: NullableOption<any>;
9668 // The URL for downloading the content
9669 contentUrl?: NullableOption<string>;
9670}
9671export interface ActivityHistoryItem extends Entity {
9672 /**
9673 * Optional. The duration of active user engagement. if not supplied, this is calculated from the startedDateTime and
9674 * lastActiveDateTime.
9675 */
9676 activeDurationSeconds?: NullableOption<number>;
9677 // Set by the server. DateTime in UTC when the object was created on the server.
9678 createdDateTime?: NullableOption<string>;
9679 // Optional. UTC DateTime when the historyItem will undergo hard-delete. Can be set by the client.
9680 expirationDateTime?: NullableOption<string>;
9681 /**
9682 * Optional. UTC DateTime when the historyItem (activity session) was last understood as active or finished - if null,
9683 * historyItem status should be Ongoing.
9684 */
9685 lastActiveDateTime?: NullableOption<string>;
9686 // Set by the server. DateTime in UTC when the object was modified on the server.
9687 lastModifiedDateTime?: NullableOption<string>;
9688 // Required. UTC DateTime when the historyItem (activity session) was started. Required for timeline history.
9689 startedDateTime?: string;
9690 // Set by the server. A status code used to identify valid objects. Values: active, updated, deleted, ignored.
9691 status?: NullableOption<Status>;
9692 /**
9693 * Optional. The timezone in which the user's device used to generate the activity was located at activity creation time.
9694 * Values supplied as Olson IDs in order to support cross-platform representation.
9695 */
9696 userTimezone?: NullableOption<string>;
9697 // Optional. NavigationProperty/Containment; navigation property to the associated activity.
9698 activity?: UserActivity;
9699}
9700export interface DataPolicyOperation extends Entity {
9701 /**
9702 * Represents when the request for this data policy operation was completed, in UTC time, using the ISO 8601 format. For
9703 * example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Null until the operation completes.
9704 */
9705 completedDateTime?: NullableOption<string>;
9706 // Specifies the progress of an operation.
9707 progress?: number;
9708 // Possible values are: notStarted, running, complete, failed, unknownFutureValue.
9709 status?: NullableOption<DataPolicyOperationStatus>;
9710 // The URL location to where data is being exported for export requests.
9711 storageLocation?: NullableOption<string>;
9712 /**
9713 * Represents when the request for this data operation was submitted, in UTC time, using the ISO 8601 format. For example,
9714 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
9715 */
9716 submittedDateTime?: string;
9717 // The id for the user on whom the operation is performed.
9718 userId?: string;
9719}
9720export interface Alert extends Entity {
9721 // Name or alias of the activity group (attacker) this alert is attributed to.
9722 activityGroupName?: NullableOption<string>;
9723 alertDetections?: NullableOption<AlertDetection[]>;
9724 // Name of the analyst the alert is assigned to for triage, investigation, or remediation (supports update).
9725 assignedTo?: NullableOption<string>;
9726 // Azure subscription ID, present if this alert is related to an Azure resource.
9727 azureSubscriptionId?: NullableOption<string>;
9728 // Azure Active Directory tenant ID. Required.
9729 azureTenantId?: string;
9730 // Category of the alert (for example, credentialTheft, ransomware, etc.).
9731 category?: NullableOption<string>;
9732 /**
9733 * Time at which the alert was closed. The Timestamp type represents date and time information using ISO 8601 format and
9734 * is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z' (supports
9735 * update).
9736 */
9737 closedDateTime?: NullableOption<string>;
9738 // Security-related stateful information generated by the provider about the cloud application/s related to this alert.
9739 cloudAppStates?: NullableOption<CloudAppSecurityState[]>;
9740 // Customer-provided comments on alert (for customer alert management) (supports update).
9741 comments?: NullableOption<string[]>;
9742 // Confidence of the detection logic (percentage between 1-100).
9743 confidence?: NullableOption<number>;
9744 /**
9745 * Time at which the alert was created by the alert provider. The Timestamp type represents date and time information
9746 * using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
9747 * '2014-01-01T00:00:00Z'. Required.
9748 */
9749 createdDateTime?: NullableOption<string>;
9750 // Alert description.
9751 description?: NullableOption<string>;
9752 // Set of alerts related to this alert entity (each alert is pushed to the SIEM as a separate record).
9753 detectionIds?: NullableOption<string[]>;
9754 /**
9755 * Time at which the event(s) that served as the trigger(s) to generate the alert occurred. The Timestamp type represents
9756 * date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014
9757 * would look like this: '2014-01-01T00:00:00Z'. Required.
9758 */
9759 eventDateTime?: NullableOption<string>;
9760 /**
9761 * Analyst feedback on the alert. Possible values are: unknown, truePositive, falsePositive, benignPositive. (supports
9762 * update)
9763 */
9764 feedback?: NullableOption<AlertFeedback>;
9765 // Security-related stateful information generated by the provider about the file(s) related to this alert.
9766 fileStates?: NullableOption<FileSecurityState[]>;
9767 // A collection of alertHistoryStates comprising an audit log of all updates made to an alert.
9768 historyStates?: NullableOption<AlertHistoryState[]>;
9769 // Security-related stateful information generated by the provider about the host(s) related to this alert.
9770 hostStates?: NullableOption<HostSecurityState[]>;
9771 // IDs of incidents related to current alert.
9772 incidentIds?: NullableOption<string[]>;
9773 investigationSecurityStates?: NullableOption<InvestigationSecurityState[]>;
9774 lastEventDateTime?: NullableOption<string>;
9775 /**
9776 * Time at which the alert entity was last modified. The Timestamp type represents date and time information using ISO
9777 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
9778 * '2014-01-01T00:00:00Z'.
9779 */
9780 lastModifiedDateTime?: NullableOption<string>;
9781 // Threat Intelligence pertaining to malware related to this alert.
9782 malwareStates?: NullableOption<MalwareState[]>;
9783 messageSecurityStates?: NullableOption<MessageSecurityState[]>;
9784 // Security-related stateful information generated by the provider about the network connection(s) related to this alert.
9785 networkConnections?: NullableOption<NetworkConnection[]>;
9786 // Security-related stateful information generated by the provider about the process or processes related to this alert.
9787 processes?: NullableOption<Process[]>;
9788 /**
9789 * Vendor/provider recommended action(s) to take as a result of the alert (for example, isolate machine, enforce2FA,
9790 * reimage host).
9791 */
9792 recommendedActions?: NullableOption<string[]>;
9793 // Security-related stateful information generated by the provider about the registry keys related to this alert.
9794 registryKeyStates?: NullableOption<RegistryKeyState[]>;
9795 // Resources related to current alert. For example, for some alerts this can have the Azure Resource value.
9796 securityResources?: NullableOption<SecurityResource[]>;
9797 // Alert severity - set by vendor/provider. Possible values are: unknown, informational, low, medium, high. Required.
9798 severity?: AlertSeverity;
9799 /**
9800 * Hyperlinks (URIs) to the source material related to the alert, for example, provider's user interface for alerts or log
9801 * search, etc.
9802 */
9803 sourceMaterials?: NullableOption<string[]>;
9804 /**
9805 * Alert lifecycle status (stage). Possible values are: unknown, newAlert, inProgress, resolved. (supports update).
9806 * Required.
9807 */
9808 status?: AlertStatus;
9809 /**
9810 * User-definable labels that can be applied to an alert and can serve as filter conditions (for example 'HVA', 'SAW',
9811 * etc.) (supports update).
9812 */
9813 tags?: NullableOption<string[]>;
9814 // Alert title. Required.
9815 title?: NullableOption<string>;
9816 /**
9817 * Security-related information about the specific properties that triggered the alert (properties appearing in the
9818 * alert). Alerts might contain information about multiple users, hosts, files, ip addresses. This field indicates which
9819 * properties triggered the alert generation.
9820 */
9821 triggers?: NullableOption<AlertTrigger[]>;
9822 uriClickSecurityStates?: NullableOption<UriClickSecurityState[]>;
9823 // Security-related stateful information generated by the provider about the user accounts related to this alert.
9824 userStates?: NullableOption<UserSecurityState[]>;
9825 /**
9826 * Complex type containing details about the security product/service vendor, provider, and subprovider (for example,
9827 * vendor=Microsoft; provider=Windows Defender ATP; subProvider=AppLocker). Required.
9828 */
9829 vendorInformation?: NullableOption<SecurityVendorInformation>;
9830 // Threat intelligence pertaining to one or more vulnerabilities related to this alert.
9831 vulnerabilityStates?: NullableOption<VulnerabilityState[]>;
9832}
9833export interface SecureScore extends Entity {
9834 // Active user count of the given tenant.
9835 activeUserCount?: NullableOption<number>;
9836 /**
9837 * Average score by different scopes (for example, average by industry, average by seating) and control category
9838 * (Identity, Data, Device, Apps, Infrastructure) within the scope.
9839 */
9840 averageComparativeScores?: NullableOption<AverageComparativeScore[]>;
9841 // GUID string for tenant ID.
9842 azureTenantId?: string;
9843 // Contains tenant scores for a set of controls.
9844 controlScores?: NullableOption<ControlScore[]>;
9845 // The date when the entity is created.
9846 createdDateTime?: NullableOption<string>;
9847 // Tenant current attained score on specified date.
9848 currentScore?: NullableOption<number>;
9849 // Microsoft-provided services for the tenant (for example, Exchange online, Skype, Sharepoint).
9850 enabledServices?: NullableOption<string[]>;
9851 // Licensed user count of the given tenant.
9852 licensedUserCount?: NullableOption<number>;
9853 // Tenant maximum possible score on specified date.
9854 maxScore?: NullableOption<number>;
9855 /**
9856 * Complex type containing details about the security product/service vendor, provider, and subprovider (for example,
9857 * vendor=Microsoft; provider=SecureScore). Required.
9858 */
9859 vendorInformation?: NullableOption<SecurityVendorInformation>;
9860}
9861export interface SecureScoreControlProfile extends Entity {
9862 // Control action type (Config, Review, Behavior).
9863 actionType?: NullableOption<string>;
9864 // URL to where the control can be actioned.
9865 actionUrl?: NullableOption<string>;
9866 // GUID string for tenant ID.
9867 azureTenantId?: string;
9868 // The collection of compliance information associated with secure score control
9869 complianceInformation?: NullableOption<ComplianceInformation[]>;
9870 // Control action category (Account, Data, Device, Apps, Infrastructure).
9871 controlCategory?: NullableOption<string>;
9872 // Flag to indicate where the tenant has marked a control (ignore, thirdParty, reviewed) (supports update).
9873 controlStateUpdates?: NullableOption<SecureScoreControlStateUpdate[]>;
9874 // Flag to indicate if a control is depreciated.
9875 deprecated?: NullableOption<boolean>;
9876 // Resource cost of implemmentating control (low, moderate, high).
9877 implementationCost?: NullableOption<string>;
9878 // Time at which the control profile entity was last modified. The Timestamp type represents date and time
9879 lastModifiedDateTime?: NullableOption<string>;
9880 // Current obtained max score on specified date.
9881 maxScore?: NullableOption<number>;
9882 // Microsoft's stack ranking of control.
9883 rank?: NullableOption<number>;
9884 // Description of what the control will help remediate.
9885 remediation?: NullableOption<string>;
9886 // Description of the impact on users of the remediation.
9887 remediationImpact?: NullableOption<string>;
9888 // Service that owns the control (Exchange, Sharepoint, Azure AD).
9889 service?: NullableOption<string>;
9890 /**
9891 * List of threats the control mitigates
9892 * (accountBreach,dataDeletion,dataExfiltration,dataSpillage,elevationOfPrivilege,maliciousInsider,passwordCracking,phishingOrWhaling,spoofing).
9893 */
9894 threats?: NullableOption<string[]>;
9895 // Control tier (Core, Defense in Depth, Advanced.)
9896 tier?: NullableOption<string>;
9897 // Title of the control.
9898 title?: NullableOption<string>;
9899 // User impact of implementing control (low, moderate, high).
9900 userImpact?: NullableOption<string>;
9901 vendorInformation?: NullableOption<SecurityVendorInformation>;
9902}
9903export interface Security extends Entity {
9904 // Read-only. Nullable.
9905 alerts?: NullableOption<Alert[]>;
9906 secureScoreControlProfiles?: NullableOption<SecureScoreControlProfile[]>;
9907 secureScores?: NullableOption<SecureScore[]>;
9908}
9909export interface CommsOperation extends Entity {
9910 // Unique Client Context string. Max limit is 256 chars.
9911 clientContext?: NullableOption<string>;
9912 // The result information. Read-only.
9913 resultInfo?: NullableOption<ResultInfo>;
9914 // Possible values are: notStarted, running, completed, failed. Read-only.
9915 status?: OperationStatus;
9916}
9917export interface Participant extends Entity {
9918 // Information about the participant.
9919 info?: ParticipantInfo;
9920 // true if the participant is in lobby.
9921 isInLobby?: boolean;
9922 // true if the participant is muted (client or server muted).
9923 isMuted?: boolean;
9924 // The list of media streams.
9925 mediaStreams?: NullableOption<MediaStream[]>;
9926 // Information on whether the participant has recording capability.
9927 recordingInfo?: NullableOption<RecordingInfo>;
9928}
9929// tslint:disable-next-line: no-empty-interface
9930export interface CancelMediaProcessingOperation extends CommsOperation {}
9931// tslint:disable-next-line: interface-name
9932export interface InviteParticipantsOperation extends CommsOperation {
9933 // The participants to invite.
9934 participants?: InvitationParticipantInfo[];
9935}
9936// tslint:disable-next-line: no-empty-interface
9937export interface MuteParticipantOperation extends CommsOperation {}
9938// tslint:disable-next-line: no-empty-interface
9939export interface PlayPromptOperation extends CommsOperation {}
9940export interface RecordOperation extends CommsOperation {
9941 // The access token required to retrieve the recording.
9942 recordingAccessToken?: NullableOption<string>;
9943 // The location where the recording is located.
9944 recordingLocation?: NullableOption<string>;
9945}
9946// tslint:disable-next-line: no-empty-interface
9947export interface SubscribeToToneOperation extends CommsOperation {}
9948// tslint:disable-next-line: no-empty-interface
9949export interface UnmuteParticipantOperation extends CommsOperation {}
9950// tslint:disable-next-line: no-empty-interface
9951export interface UpdateRecordingStatusOperation extends CommsOperation {}
9952// tslint:disable-next-line: no-empty-interface
9953export interface AuthenticationMethod extends Entity {}
9954export interface Fido2AuthenticationMethod extends AuthenticationMethod {
9955 // Authenticator Attestation GUID, an identifier that indicates the type (e.g. make and model) of the authenticator.
9956 aaGuid?: NullableOption<string>;
9957 // The attestation certificate(s) attached to this security key.
9958 attestationCertificates?: NullableOption<string[]>;
9959 // The attestation level of this FIDO2 security key. Possible values are: attested, or notAttested.
9960 attestationLevel?: NullableOption<AttestationLevel>;
9961 createdDateTime?: NullableOption<string>;
9962 // The display name of the key as given by the user.
9963 displayName?: NullableOption<string>;
9964 // The manufacturer-assigned model of the FIDO2 security key.
9965 model?: NullableOption<string>;
9966}
9967export interface MicrosoftAuthenticatorAuthenticationMethod extends AuthenticationMethod {
9968 /**
9969 * The date and time that this app was registered. This property is null if the device is not registered for passwordless
9970 * Phone Sign-In.
9971 */
9972 createdDateTime?: NullableOption<string>;
9973 // Tags containing app metadata.
9974 deviceTag?: NullableOption<string>;
9975 // The name of the device on which this app is registered.
9976 displayName?: NullableOption<string>;
9977 // Numerical version of this instance of the Authenticator app.
9978 phoneAppVersion?: NullableOption<string>;
9979 /**
9980 * The registered device on which Microsoft Authenticator resides. This property is null if the device is not registered
9981 * for passwordless Phone Sign-In.
9982 */
9983 device?: NullableOption<Device>;
9984}
9985export interface WindowsHelloForBusinessAuthenticationMethod extends AuthenticationMethod {
9986 // The date and time that this Windows Hello for Business key was registered.
9987 createdDateTime?: NullableOption<string>;
9988 // The name of the device on which Windows Hello for Business is registered
9989 displayName?: NullableOption<string>;
9990 // Key strength of this Windows Hello for Business key. Possible values are: normal, weak, unknown.
9991 keyStrength?: NullableOption<AuthenticationMethodKeyStrength>;
9992 // The registered device on which this Windows Hello for Business key resides.
9993 device?: NullableOption<Device>;
9994}
9995export interface ConversationMember extends Entity {
9996 // The display name of the user.
9997 displayName?: NullableOption<string>;
9998 // The roles for that user.
9999 roles?: NullableOption<string[]>;
10000}
10001export interface AadUserConversationMember extends ConversationMember {
10002 // The email address of the user.
10003 email?: NullableOption<string>;
10004 // The GUID of the user.
10005 userId?: NullableOption<string>;
10006 user?: NullableOption<User>;
10007}
10008export interface AppCatalogs extends Entity {
10009 teamsApps?: NullableOption<TeamsApp[]>;
10010}
10011export interface TeamsApp extends Entity {
10012 // The name of the catalog app provided by the app developer in the Microsoft Teams zip app package.
10013 displayName?: NullableOption<string>;
10014 // The method of distribution for the app. Read-only.
10015 distributionMethod?: NullableOption<TeamsAppDistributionMethod>;
10016 // The ID of the catalog provided by the app developer in the Microsoft Teams zip app package.
10017 externalId?: NullableOption<string>;
10018 // The details for each version of the app.
10019 appDefinitions?: NullableOption<TeamsAppDefinition[]>;
10020}
10021export interface Channel extends Entity {
10022 // Optional textual description for the channel.
10023 description?: NullableOption<string>;
10024 // Channel name as it will appear to the user in Microsoft Teams.
10025 displayName?: string;
10026 // The email address for sending messages to the channel. Read-only.
10027 email?: NullableOption<string>;
10028 /**
10029 * Indicates whether the channel should automatically be marked 'favorite' for all members of the team. Can only be set
10030 * programmatically with Create team. Default: false.
10031 */
10032 isFavoriteByDefault?: NullableOption<boolean>;
10033 // The type of the channel. Can be set during creation and cannot be changed. Default: standard.
10034 membershipType?: NullableOption<ChannelMembershipType>;
10035 /**
10036 * A hyperlink that will go to the channel in Microsoft Teams. This is the URL that you get when you right-click a channel
10037 * in Microsoft Teams and select Get link to channel. This URL should be treated as an opaque blob, and not parsed.
10038 * Read-only.
10039 */
10040 webUrl?: NullableOption<string>;
10041 // Metadata for the location where the channel's files are stored.
10042 filesFolder?: NullableOption<DriveItem>;
10043 // A collection of membership records associated with the channel.
10044 members?: NullableOption<ConversationMember[]>;
10045 // A collection of all the messages in the channel. A navigation property. Nullable.
10046 messages?: NullableOption<ChatMessage[]>;
10047 // A collection of all the tabs in the channel. A navigation property.
10048 tabs?: NullableOption<TeamsTab[]>;
10049}
10050export interface ChatMessage extends Entity {
10051 // Attached files. Attachments are currently read-only – sending attachments is not supported.
10052 attachments?: NullableOption<ChatMessageAttachment[]>;
10053 /**
10054 * Plaintext/HTML representation of the content of the chat message. Representation is specified by the contentType inside
10055 * the body. The content is always in HTML if the chat message contains a chatMessageMention.
10056 */
10057 body?: ItemBody;
10058 // Read only. Timestamp of when the chat message was created.
10059 createdDateTime?: NullableOption<string>;
10060 // Read only. Timestamp at which the chat message was deleted, or null if not deleted.
10061 deletedDateTime?: NullableOption<string>;
10062 // Read-only. Version number of the chat message.
10063 etag?: NullableOption<string>;
10064 // Read only. Details of the sender of the chat message.
10065 from?: NullableOption<IdentitySet>;
10066 // The importance of the chat message. The possible values are: normal, high, urgent.
10067 importance?: ChatMessageImportance;
10068 /**
10069 * Read only. Timestamp when edits to the chat message were made. Triggers an 'Edited' flag in the Teams UI. If no edits
10070 * are made the value is null.
10071 */
10072 lastEditedDateTime?: NullableOption<string>;
10073 /**
10074 * Read only. Timestamp when the chat message is created (initial setting) or modified, including when a reaction is added
10075 * or removed.
10076 */
10077 lastModifiedDateTime?: NullableOption<string>;
10078 // Locale of the chat message set by the client.
10079 locale?: string;
10080 // List of entities mentioned in the chat message. Currently supports user, bot, team, channel.
10081 mentions?: NullableOption<ChatMessageMention[]>;
10082 // The type of chat message. The possible values are: message.
10083 messageType?: ChatMessageType;
10084 // Defines the properties of a policy violation set by a data loss prevention (DLP) application.
10085 policyViolation?: NullableOption<ChatMessagePolicyViolation>;
10086 // Reactions for this chat message (for example, Like).
10087 reactions?: NullableOption<ChatMessageReaction[]>;
10088 /**
10089 * Read-only. ID of the parent chat message or root chat message of the thread. (Only applies to chat messages in
10090 * channels, not chats.)
10091 */
10092 replyToId?: NullableOption<string>;
10093 // The subject of the chat message, in plaintext.
10094 subject?: NullableOption<string>;
10095 /**
10096 * Summary text of the chat message that could be used for push notifications and summary views or fall back views. Only
10097 * applies to channel chat messages, not chat messages in a chat.
10098 */
10099 summary?: NullableOption<string>;
10100 webUrl?: NullableOption<string>;
10101 hostedContents?: NullableOption<ChatMessageHostedContent[]>;
10102 replies?: NullableOption<ChatMessage[]>;
10103}
10104export interface TeamsTab extends Entity {
10105 // Container for custom settings applied to a tab. The tab is considered configured only once this property is set.
10106 configuration?: NullableOption<TeamsTabConfiguration>;
10107 // Name of the tab.
10108 displayName?: NullableOption<string>;
10109 // Deep link URL of the tab instance. Read only.
10110 webUrl?: NullableOption<string>;
10111 // The application that is linked to the tab.
10112 teamsApp?: NullableOption<TeamsApp>;
10113}
10114// tslint:disable-next-line: no-empty-interface
10115export interface Chat extends Entity {}
10116// tslint:disable-next-line: no-empty-interface
10117export interface ChatMessageHostedContent extends Entity {}
10118export interface Schedule extends Entity {
10119 // Indicates whether the schedule is enabled for the team. Required.
10120 enabled?: NullableOption<boolean>;
10121 // Indicates whether offer shift requests are enabled for the schedule.
10122 offerShiftRequestsEnabled?: NullableOption<boolean>;
10123 // Indicates whether open shifts are enabled for the schedule.
10124 openShiftsEnabled?: NullableOption<boolean>;
10125 // The status of the schedule provisioning. The possible values are notStarted, running, completed, failed.
10126 provisionStatus?: NullableOption<OperationStatus>;
10127 // Additional information about why schedule provisioning failed.
10128 provisionStatusCode?: NullableOption<string>;
10129 // Indicates whether swap shifts requests are enabled for the schedule.
10130 swapShiftsRequestsEnabled?: NullableOption<boolean>;
10131 // Indicates whether time clock is enabled for the schedule.
10132 timeClockEnabled?: NullableOption<boolean>;
10133 // Indicates whether time off requests are enabled for the schedule.
10134 timeOffRequestsEnabled?: NullableOption<boolean>;
10135 // Indicates the time zone of the schedule team using tz database format. Required.
10136 timeZone?: NullableOption<string>;
10137 workforceIntegrationIds?: NullableOption<string[]>;
10138 offerShiftRequests?: NullableOption<OfferShiftRequest[]>;
10139 openShiftChangeRequests?: NullableOption<OpenShiftChangeRequest[]>;
10140 openShifts?: NullableOption<OpenShift[]>;
10141 // The logical grouping of users in the schedule (usually by role).
10142 schedulingGroups?: NullableOption<SchedulingGroup[]>;
10143 // The shifts in the schedule.
10144 shifts?: NullableOption<Shift[]>;
10145 swapShiftsChangeRequests?: NullableOption<SwapShiftsChangeRequest[]>;
10146 // The set of reasons for a time off in the schedule.
10147 timeOffReasons?: NullableOption<TimeOffReason[]>;
10148 timeOffRequests?: NullableOption<TimeOffRequest[]>;
10149 // The instances of times off in the schedule.
10150 timesOff?: NullableOption<TimeOff[]>;
10151}
10152export interface TeamsAppInstallation extends Entity {
10153 // The app that is installed.
10154 teamsApp?: NullableOption<TeamsApp>;
10155 // The details of this version of the app.
10156 teamsAppDefinition?: NullableOption<TeamsAppDefinition>;
10157}
10158export interface TeamsAsyncOperation extends Entity {
10159 // Number of times the operation was attempted before being marked successful or failed.
10160 attemptsCount?: number;
10161 // Time when the operation was created.
10162 createdDateTime?: string;
10163 // Any error that causes the async operation to fail.
10164 error?: NullableOption<OperationError>;
10165 // Time when the async operation was last updated.
10166 lastActionDateTime?: string;
10167 // Denotes which type of operation is being described.
10168 operationType?: TeamsAsyncOperationType;
10169 // Operation status.
10170 status?: TeamsAsyncOperationStatus;
10171 // The ID of the object that's created or modified as result of this async operation, typically a team.
10172 targetResourceId?: NullableOption<string>;
10173 /**
10174 * The location of the object that's created or modified as result of this async operation. This URL should be treated as
10175 * an opaque value and not parsed into its component paths.
10176 */
10177 targetResourceLocation?: NullableOption<string>;
10178}
10179// tslint:disable-next-line: no-empty-interface
10180export interface TeamsTemplate extends Entity {}
10181export interface TeamsAppDefinition extends Entity {
10182 // The name of the app provided by the app developer.
10183 displayName?: NullableOption<string>;
10184 // The id from the Teams App manifest.
10185 teamsAppId?: NullableOption<string>;
10186 // The version number of the application.
10187 version?: NullableOption<string>;
10188}
10189export interface Teamwork extends Entity {
10190 workforceIntegrations?: NullableOption<WorkforceIntegration[]>;
10191}
10192export interface WorkforceIntegration extends ChangeTrackedEntity {
10193 // API version for the call back URL. Start with 1.
10194 apiVersion?: NullableOption<number>;
10195 // Name of the workforce integration.
10196 displayName?: NullableOption<string>;
10197 // The workforce integration encryption resource.
10198 encryption?: NullableOption<WorkforceIntegrationEncryption>;
10199 // Indicates whether this workforce integration is currently active and available.
10200 isActive?: NullableOption<boolean>;
10201 /**
10202 * This property will replace supports in v1.0. We recommend that you use this property instead of supports. The supports
10203 * property will still be supported in beta for the time being. Possible values are none, shift, swapRequest, openshift,
10204 * openShiftRequest, userShiftPreferences. If selecting more than one value, all values must start with the first letter
10205 * in uppercase.
10206 */
10207 supportedEntities?: NullableOption<WorkforceIntegrationSupportedEntities>;
10208 // Workforce Integration URL for callbacks from the Shifts service.
10209 url?: NullableOption<string>;
10210}
10211export interface UserScopeTeamsAppInstallation extends TeamsAppInstallation {
10212 // The chat between the user and Teams app.
10213 chat?: NullableOption<Chat>;
10214}
10215export interface ScheduleChangeRequest extends ChangeTrackedEntity {
10216 assignedTo?: NullableOption<ScheduleChangeRequestActor>;
10217 managerActionDateTime?: NullableOption<string>;
10218 managerActionMessage?: NullableOption<string>;
10219 managerUserId?: NullableOption<string>;
10220 senderDateTime?: NullableOption<string>;
10221 senderMessage?: NullableOption<string>;
10222 senderUserId?: NullableOption<string>;
10223 state?: NullableOption<ScheduleChangeState>;
10224}
10225export interface OfferShiftRequest extends ScheduleChangeRequest {
10226 /**
10227 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
10228 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
10229 */
10230 recipientActionDateTime?: NullableOption<string>;
10231 // Custom message sent by recipient of the offer shift request.
10232 recipientActionMessage?: NullableOption<string>;
10233 // User id of the recipient of the offer shift request.
10234 recipientUserId?: NullableOption<string>;
10235 // User id of the sender of the offer shift request.
10236 senderShiftId?: NullableOption<string>;
10237}
10238export interface OpenShift extends ChangeTrackedEntity {
10239 // An unpublished open shift.
10240 draftOpenShift?: NullableOption<OpenShiftItem>;
10241 // ID for the scheduling group that the open shift belongs to.
10242 schedulingGroupId?: NullableOption<string>;
10243 // A published open shift.
10244 sharedOpenShift?: NullableOption<OpenShiftItem>;
10245}
10246export interface OpenShiftChangeRequest extends ScheduleChangeRequest {
10247 // ID for the open shift.
10248 openShiftId?: NullableOption<string>;
10249}
10250export interface SchedulingGroup extends ChangeTrackedEntity {
10251 // The display name for the schedulingGroup. Required.
10252 displayName?: NullableOption<string>;
10253 // Indicates whether the schedulingGroup can be used when creating new entities or updating existing ones. Required.
10254 isActive?: NullableOption<boolean>;
10255 // The list of user IDs that are a member of the schedulingGroup. Required.
10256 userIds?: NullableOption<string[]>;
10257}
10258export interface Shift extends ChangeTrackedEntity {
10259 // The draft version of this shift that is viewable by managers. Required.
10260 draftShift?: NullableOption<ShiftItem>;
10261 // ID of the scheduling group the shift is part of. Required.
10262 schedulingGroupId?: NullableOption<string>;
10263 // The shared version of this shift that is viewable by both employees and managers. Required.
10264 sharedShift?: NullableOption<ShiftItem>;
10265 // ID of the user assigned to the shift. Required.
10266 userId?: NullableOption<string>;
10267}
10268export interface SwapShiftsChangeRequest extends OfferShiftRequest {
10269 // Shift ID for the recipient user with whom the request is to swap.
10270 recipientShiftId?: NullableOption<string>;
10271}
10272export interface TimeOffReason extends ChangeTrackedEntity {
10273 // The name of the timeOffReason. Required.
10274 displayName?: NullableOption<string>;
10275 /**
10276 * Supported icon types: none; car; calendar; running; plane; firstAid; doctor; notWorking; clock; juryDuty; globe; cup;
10277 * phone; weather; umbrella; piggyBank; dog; cake; trafficCone; pin; sunny. Required.
10278 */
10279 iconType?: NullableOption<TimeOffReasonIconType>;
10280 // Indicates whether the timeOffReason can be used when creating new entities or updating existing ones. Required.
10281 isActive?: NullableOption<boolean>;
10282}
10283export interface TimeOffRequest extends ScheduleChangeRequest {
10284 /**
10285 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
10286 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
10287 */
10288 endDateTime?: NullableOption<string>;
10289 /**
10290 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
10291 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
10292 */
10293 startDateTime?: NullableOption<string>;
10294 // The reason for the time off.
10295 timeOffReasonId?: NullableOption<string>;
10296}
10297export interface TimeOff extends ChangeTrackedEntity {
10298 // The draft version of this timeOff that is viewable by managers. Required.
10299 draftTimeOff?: NullableOption<TimeOffItem>;
10300 // The shared version of this timeOff that is viewable by both employees and managers. Required.
10301 sharedTimeOff?: NullableOption<TimeOffItem>;
10302 // ID of the user assigned to the timeOff. Required.
10303 userId?: NullableOption<string>;
10304}
10305export interface ThreatAssessmentRequest extends Entity {
10306 // The threat category. Possible values are: spam, phishing, malware.
10307 category?: ThreatCategory;
10308 // The content type of threat assessment. Possible values are: mail, url, file.
10309 contentType?: NullableOption<ThreatAssessmentContentType>;
10310 // The threat assessment request creator.
10311 createdBy?: NullableOption<IdentitySet>;
10312 /**
10313 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
10314 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
10315 */
10316 createdDateTime?: NullableOption<string>;
10317 // The expected assessment from submitter. Possible values are: block, unblock.
10318 expectedAssessment?: ThreatExpectedAssessment;
10319 // The source of the threat assessment request. Possible values are: user, administrator.
10320 requestSource?: NullableOption<ThreatAssessmentRequestSource>;
10321 // The assessment process status. Possible values are: pending, completed.
10322 status?: NullableOption<ThreatAssessmentStatus>;
10323 /**
10324 * A collection of threat assessment results. Read-only. By default, a GET /threatAssessmentRequests/{id} does not return
10325 * this property unless you apply $expand on it.
10326 */
10327 results?: NullableOption<ThreatAssessmentResult[]>;
10328}
10329export interface EmailFileAssessmentRequest extends ThreatAssessmentRequest {
10330 // Base64 encoded .eml email file content. The file content cannot fetch back because it isn't stored.
10331 contentData?: string;
10332 /**
10333 * The reason for mail routed to its destination. Possible values are: none, mailFlowRule, safeSender, blockedSender,
10334 * advancedSpamFiltering, domainAllowList, domainBlockList, notInAddressBook, firstTimeSender, autoPurgeToInbox,
10335 * autoPurgeToJunk, autoPurgeToDeleted, outbound, notJunk, junk.
10336 */
10337 destinationRoutingReason?: NullableOption<MailDestinationRoutingReason>;
10338 // The mail recipient whose policies are used to assess the mail.
10339 recipientEmail?: string;
10340}
10341export interface FileAssessmentRequest extends ThreatAssessmentRequest {
10342 // Base64 encoded file content. The file content cannot fetch back because it isn't stored.
10343 contentData?: string;
10344 // The file name.
10345 fileName?: string;
10346}
10347// tslint:disable-next-line: interface-name
10348export interface InformationProtection extends Entity {
10349 threatAssessmentRequests?: NullableOption<ThreatAssessmentRequest[]>;
10350}
10351export interface MailAssessmentRequest extends ThreatAssessmentRequest {
10352 /**
10353 * The reason for mail routed to its destination. Possible values are: none, mailFlowRule, safeSender, blockedSender,
10354 * advancedSpamFiltering, domainAllowList, domainBlockList, notInAddressBook, firstTimeSender, autoPurgeToInbox,
10355 * autoPurgeToJunk, autoPurgeToDeleted, outbound, notJunk, junk.
10356 */
10357 destinationRoutingReason?: NullableOption<MailDestinationRoutingReason>;
10358 // The resource URI of the mail message for assessment.
10359 messageUri?: string;
10360 // The mail recipient whose policies are used to assess the mail.
10361 recipientEmail?: string;
10362}
10363export interface ThreatAssessmentResult extends Entity {
10364 /**
10365 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
10366 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
10367 */
10368 createdDateTime?: NullableOption<string>;
10369 // The result message for each threat assessment.
10370 message?: NullableOption<string>;
10371 // The threat assessment result type. Possible values are: checkPolicy, rescan.
10372 resultType?: NullableOption<ThreatAssessmentResultType>;
10373}
10374export interface UrlAssessmentRequest extends ThreatAssessmentRequest {
10375 // The URL string.
10376 url?: string;
10377}
10378export interface LinkedResource extends Entity {
10379 // Field indicating the app name of the source that is sending the linkedResource.
10380 applicationName?: NullableOption<string>;
10381 // Field indicating the title of the linkedResource.
10382 displayName?: NullableOption<string>;
10383 // Id of the object that is associated with this task on the third-party/partner system.
10384 externalId?: NullableOption<string>;
10385 // Deep link to the linkedResource.
10386 webUrl?: NullableOption<string>;
10387}
10388export interface TodoTaskList extends Entity {
10389 // The name of the task list.
10390 displayName?: NullableOption<string>;
10391 // True if the user is owner of the given task list.
10392 isOwner?: boolean;
10393 // True if the task list is shared with other users
10394 isShared?: boolean;
10395 /**
10396 * Property indicating the list name if the given list is a well-known list. Possible values are: none, defaultList,
10397 * flaggedEmails, unknownFutureValue.
10398 */
10399 wellknownListName?: WellknownListName;
10400 // The collection of open extensions defined for the task list. Nullable.
10401 extensions?: NullableOption<Extension[]>;
10402 // The tasks in this task list. Read-only. Nullable.
10403 tasks?: NullableOption<TodoTask[]>;
10404}
10405export interface TodoTask extends Entity {
10406 // The task body that typically contains information about the task.
10407 body?: NullableOption<ItemBody>;
10408 /**
10409 * The date and time when the task was last modified. By default, it is in UTC. You can provide a custom time zone in the
10410 * request header. The property value uses ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1,
10411 * 2020 would look like this: '2020-01-01T00:00:00Z'.
10412 */
10413 bodyLastModifiedDateTime?: string;
10414 // The date in the specified time zone that the task was finished.
10415 completedDateTime?: NullableOption<DateTimeTimeZone>;
10416 /**
10417 * The date and time when the task was created. By default, it is in UTC. You can provide a custom time zone in the
10418 * request header. The property value uses ISO 8601 format. For example, midnight UTC on Jan 1, 2020 would look like this:
10419 * '2020-01-01T00:00:00Z'.
10420 */
10421 createdDateTime?: string;
10422 // The date in the specified time zone that the task is to be finished.
10423 dueDateTime?: NullableOption<DateTimeTimeZone>;
10424 // The importance of the task. Possible values are: low, normal, high.
10425 importance?: Importance;
10426 // Set to true if an alert is set to remind the user of the task.
10427 isReminderOn?: boolean;
10428 /**
10429 * The date and time when the task was last modified. By default, it is in UTC. You can provide a custom time zone in the
10430 * request header. The property value uses ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1,
10431 * 2020 would look like this: '2020-01-01T00:00:00Z'.
10432 */
10433 lastModifiedDateTime?: string;
10434 // The recurrence pattern for the task.
10435 recurrence?: NullableOption<PatternedRecurrence>;
10436 // The date and time for a reminder alert of the task to occur.
10437 reminderDateTime?: NullableOption<DateTimeTimeZone>;
10438 /**
10439 * Indicates the state or progress of the task. Possible values are: notStarted, inProgress, completed, waitingOnOthers,
10440 * deferred.
10441 */
10442 status?: TaskStatus;
10443 // A brief description of the task.
10444 title?: NullableOption<string>;
10445 // The collection of open extensions defined for the task. Nullable.
10446 extensions?: NullableOption<Extension[]>;
10447 // A collection of resources linked to the task.
10448 linkedResources?: NullableOption<LinkedResource[]>;
10449}
10450export interface AppIdentity {
10451 // Refers to the Unique GUID representing Application Id in the Azure Active Directory.
10452 appId?: NullableOption<string>;
10453 // Refers to the Application Name displayed in the Azure Portal.
10454 displayName?: NullableOption<string>;
10455 // Refers to the Unique GUID indicating Service Principal Id in Azure Active Directory for the corresponding App.
10456 servicePrincipalId?: NullableOption<string>;
10457 // Refers to the Service Principal Name is the Application name in the tenant.
10458 servicePrincipalName?: NullableOption<string>;
10459}
10460export interface AppliedConditionalAccessPolicy {
10461 // Refers to the Name of the conditional access policy (example: 'Require MFA for Salesforce').
10462 displayName?: NullableOption<string>;
10463 /**
10464 * Refers to the grant controls enforced by the conditional access policy (example: 'Require multi-factor
10465 * authentication').
10466 */
10467 enforcedGrantControls?: NullableOption<string[]>;
10468 // Refers to the session controls enforced by the conditional access policy (example: 'Require app enforced controls').
10469 enforcedSessionControls?: NullableOption<string[]>;
10470 // Unique GUID of the conditional access policy.
10471 id?: NullableOption<string>;
10472 /**
10473 * Indicates the result of the CA policy that was triggered. Possible values are:successfailurenotApplied - Policy isn't
10474 * applied because policy conditions were not met.notEnabled - This is due to the policy in disabled state.
10475 */
10476 result?: NullableOption<AppliedConditionalAccessPolicyResult>;
10477}
10478export interface AuditActivityInitiator {
10479 /**
10480 * If the resource initiating the activity is an app, this property indicates all the app related information like appId,
10481 * Name, servicePrincipalId, Name.
10482 */
10483 app?: NullableOption<AppIdentity>;
10484 /**
10485 * If the resource initiating the activity is a user, this property Indicates all the user related information like
10486 * userId, Name, UserPrinicpalName.
10487 */
10488 user?: NullableOption<UserIdentity>;
10489}
10490export interface UserIdentity {
10491 // The identity's display name. Note that this may not always be available or up-to-date.
10492 displayName?: NullableOption<string>;
10493 // Unique identifier for the identity.
10494 id?: NullableOption<string>;
10495 // Indicates the client IP address used by user performing the activity (audit log only).
10496 ipAddress?: NullableOption<string>;
10497 // The userPrincipalName attribute of the user.
10498 userPrincipalName?: NullableOption<string>;
10499}
10500export interface DeviceDetail {
10501 // Indicates the browser information of the used for signing-in.
10502 browser?: NullableOption<string>;
10503 // Refers to the UniqueID of the device used for signing-in.
10504 deviceId?: NullableOption<string>;
10505 // Refers to the name of the device used for signing-in.
10506 displayName?: NullableOption<string>;
10507 // Indicates whether the device is compliant or not.
10508 isCompliant?: NullableOption<boolean>;
10509 // Indicates if the device is managed or not.
10510 isManaged?: NullableOption<boolean>;
10511 // Indicates the OS name and version used for signing-in.
10512 operatingSystem?: NullableOption<string>;
10513 // Indicates information on whether the signed-in device is Workplace Joined, AzureAD Joined, Domain Joined.
10514 trustType?: NullableOption<string>;
10515}
10516export interface GeoCoordinates {
10517 // Optional. The altitude (height), in feet, above sea level for the item. Read-only.
10518 altitude?: NullableOption<number>;
10519 // Optional. The latitude, in decimal, for the item. Writable on OneDrive Personal.
10520 latitude?: NullableOption<number>;
10521 // Optional. The longitude, in decimal, for the item. Writable on OneDrive Personal.
10522 longitude?: NullableOption<number>;
10523}
10524export interface KeyValue {
10525 /**
10526 * Contains the name of the field that a value is associated with. When a sign in or domain hint is included in the
10527 * sign-in request, corresponding fields are included as key-value pairs. Possible keys: Login hint present, Domain hint
10528 * present.
10529 */
10530 key?: NullableOption<string>;
10531 /**
10532 * Contains the corresponding value for the specified key. The value is true if a sign in hint was included in the sign-in
10533 * request; otherwise false. The value is true if a domain hint was included in the sign-in request; otherwise false.
10534 */
10535 value?: NullableOption<string>;
10536}
10537export interface ModifiedProperty {
10538 // Name of property that was modified.
10539 displayName?: NullableOption<string>;
10540 // New property value.
10541 newValue?: NullableOption<string>;
10542 // Old property value.
10543 oldValue?: NullableOption<string>;
10544}
10545export interface SignInLocation {
10546 /**
10547 * Provides the city where the sign-in originated. This is calculated using latitude/longitude information from the
10548 * sign-in activity.
10549 */
10550 city?: NullableOption<string>;
10551 /**
10552 * Provides the country code info (2 letter code) where the sign-in originated. This is calculated using
10553 * latitude/longitude information from the sign-in activity.
10554 */
10555 countryOrRegion?: NullableOption<string>;
10556 // Provides the latitude, longitude and altitude where the sign-in originated.
10557 geoCoordinates?: NullableOption<GeoCoordinates>;
10558 /**
10559 * Provides the State where the sign-in originated. This is calculated using latitude/longitude information from the
10560 * sign-in activity.
10561 */
10562 state?: NullableOption<string>;
10563}
10564export interface SignInStatus {
10565 // Provides additional details on the sign-in activity
10566 additionalDetails?: NullableOption<string>;
10567 /**
10568 * Provides the 5-6 digit error code that's generated during a sign-in failure. Check out the list of error codes and
10569 * messages.
10570 */
10571 errorCode?: NullableOption<number>;
10572 /**
10573 * Provides the error message or the reason for failure for the corresponding sign-in activity. Check out the list of
10574 * error codes and messages.
10575 */
10576 failureReason?: NullableOption<string>;
10577}
10578export interface TargetResource {
10579 // Indicates the visible name defined for the resource. Typically specified when the resource is created.
10580 displayName?: NullableOption<string>;
10581 // When type is set to Group, this indicates the group type.
10582 groupType?: NullableOption<GroupType>;
10583 // Indicates the unique ID of the resource.
10584 id?: NullableOption<string>;
10585 // Indicates name, old value and new value of each attribute that changed. Property values depend on the operation type.
10586 modifiedProperties?: NullableOption<ModifiedProperty[]>;
10587 // Describes the resource type. Example values include Application, Group, ServicePrincipal, and User.
10588 type?: NullableOption<string>;
10589 // When type is set to User, this includes the user name that initiated the action; null for other types.
10590 userPrincipalName?: NullableOption<string>;
10591}
10592export interface EmailAddress {
10593 // The email address of an entity instance.
10594 address?: NullableOption<string>;
10595 // The display name of an entity instance.
10596 name?: NullableOption<string>;
10597}
10598// tslint:disable-next-line: interface-name
10599export interface InvitedUserMessageInfo {
10600 // Additional recipients the invitation message should be sent to. Currently only 1 additional recipient is supported.
10601 ccRecipients?: NullableOption<Recipient[]>;
10602 // Customized message body you want to send if you don't want the default message.
10603 customizedMessageBody?: NullableOption<string>;
10604 /**
10605 * The language you want to send the default message in. If the customizedMessageBody is specified, this property is
10606 * ignored, and the message is sent using the customizedMessageBody. The language format should be in ISO 639. The default
10607 * is en-US.
10608 */
10609 messageLanguage?: NullableOption<string>;
10610}
10611export interface Recipient {
10612 // The recipient's email address.
10613 emailAddress?: NullableOption<EmailAddress>;
10614}
10615export interface AssignedLicense {
10616 // A collection of the unique identifiers for plans that have been disabled.
10617 disabledPlans?: string[];
10618 // The unique identifier for the SKU.
10619 skuId?: NullableOption<string>;
10620}
10621export interface AssignedPlan {
10622 /**
10623 * The date and time at which the plan was assigned; for example: 2013-01-02T19:32:30Z. The Timestamp type represents date
10624 * and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would
10625 * look like this: '2014-01-01T00:00:00Z'
10626 */
10627 assignedDateTime?: NullableOption<string>;
10628 // Condition of the capability assignment. The possible values are Enabled, Warning, Suspended, Deleted, LockedOut.
10629 capabilityStatus?: NullableOption<string>;
10630 // The name of the service; for example, 'Exchange'.
10631 service?: NullableOption<string>;
10632 // A GUID that identifies the service plan.
10633 servicePlanId?: NullableOption<string>;
10634}
10635export interface EmployeeOrgData {
10636 // The cost center associated with the user. Returned only on $select. Supports $filter.
10637 costCenter?: NullableOption<string>;
10638 // The name of the division in which the user works. Returned only on $select. Supports $filter.
10639 division?: NullableOption<string>;
10640}
10641export interface ObjectIdentity {
10642 /**
10643 * Specifies the issuer of the identity, for example facebook.com.For local accounts (where signInType is not federated),
10644 * this property is the local B2C tenant default domain name, for example contoso.onmicrosoft.com.For external users from
10645 * other Azure AD organization, this will be the domain of the federated organization, for example contoso.com.Supports
10646 * $filter. 512 character limit.
10647 */
10648 issuer?: NullableOption<string>;
10649 /**
10650 * Specifies the unique identifier assigned to the user by the issuer. The combination of issuer and issuerAssignedId must
10651 * be unique within the organization. Represents the sign-in name for the user, when signInType is set to emailAddress or
10652 * userName (also known as local accounts).When signInType is set to: emailAddress, (or starts with emailAddress like
10653 * emailAddress1) issuerAssignedId must be a valid email addressuserName, issuerAssignedId must be a valid local part of
10654 * an email addressSupports $filter. 512 character limit.
10655 */
10656 issuerAssignedId?: NullableOption<string>;
10657 /**
10658 * Specifies the user sign-in types in your directory, such as emailAddress, userName or federated. Here, federated
10659 * represents a unique identifier for a user from an issuer, that can be in any format chosen by the issuer. Additional
10660 * validation is enforced on issuerAssignedId when the sign-in type is set to emailAddress or userName. This property can
10661 * also be set to any custom string.
10662 */
10663 signInType?: NullableOption<string>;
10664}
10665export interface LicenseAssignmentState {
10666 /**
10667 * The id of the group that assigns this license. If the assignment is a direct-assigned license, this field will be Null.
10668 * Read-Only.
10669 */
10670 assignedByGroup?: NullableOption<string>;
10671 // The service plans that are disabled in this assignment. Read-Only.
10672 disabledPlans?: NullableOption<string[]>;
10673 /**
10674 * License assignment failure error. If the license is assigned successfully, this field will be Null. Read-Only. Possible
10675 * values: CountViolation, MutuallyExclusiveViolation, DependencyViolation, ProhibitedInUsageLocationViolation,
10676 * UniquenessViolation, and Others. For more information on how to identify and resolve license assignment errors see
10677 * here.
10678 */
10679 error?: NullableOption<string>;
10680 // The unique identifier for the SKU. Read-Only.
10681 skuId?: NullableOption<string>;
10682 // Indicate the current state of this assignment. Read-Only. Possible values: Active, ActiveWithError, Disabled and Error.
10683 state?: NullableOption<string>;
10684}
10685export interface OnPremisesExtensionAttributes {
10686 // First customizable extension attribute.
10687 extensionAttribute1?: NullableOption<string>;
10688 // Tenth customizable extension attribute.
10689 extensionAttribute10?: NullableOption<string>;
10690 // Eleventh customizable extension attribute.
10691 extensionAttribute11?: NullableOption<string>;
10692 // Twelfth customizable extension attribute.
10693 extensionAttribute12?: NullableOption<string>;
10694 // Thirteenth customizable extension attribute.
10695 extensionAttribute13?: NullableOption<string>;
10696 // Fourteenth customizable extension attribute.
10697 extensionAttribute14?: NullableOption<string>;
10698 // Fifteenth customizable extension attribute.
10699 extensionAttribute15?: NullableOption<string>;
10700 // Second customizable extension attribute.
10701 extensionAttribute2?: NullableOption<string>;
10702 // Third customizable extension attribute.
10703 extensionAttribute3?: NullableOption<string>;
10704 // Fourth customizable extension attribute.
10705 extensionAttribute4?: NullableOption<string>;
10706 // Fifth customizable extension attribute.
10707 extensionAttribute5?: NullableOption<string>;
10708 // Sixth customizable extension attribute.
10709 extensionAttribute6?: NullableOption<string>;
10710 // Seventh customizable extension attribute.
10711 extensionAttribute7?: NullableOption<string>;
10712 // Eighth customizable extension attribute.
10713 extensionAttribute8?: NullableOption<string>;
10714 // Ninth customizable extension attribute.
10715 extensionAttribute9?: NullableOption<string>;
10716}
10717export interface OnPremisesProvisioningError {
10718 /**
10719 * Category of the provisioning error. Note: Currently, there is only one possible value. Possible value: PropertyConflict
10720 * - indicates a property value is not unique. Other objects contain the same value for the property.
10721 */
10722 category?: NullableOption<string>;
10723 // The date and time at which the error occurred.
10724 occurredDateTime?: NullableOption<string>;
10725 // Name of the directory property causing the error. Current possible values: UserPrincipalName or ProxyAddress
10726 propertyCausingError?: NullableOption<string>;
10727 // Value of the property causing the error.
10728 value?: NullableOption<string>;
10729}
10730export interface PasswordProfile {
10731 /**
10732 * If true, at next sign-in, the user must change their password. After a password change, this property will be
10733 * automatically reset to false. If not set, default is false.
10734 */
10735 forceChangePasswordNextSignIn?: NullableOption<boolean>;
10736 /**
10737 * If true, at next sign-in, the user must perform a multi-factor authentication (MFA) before being forced to change their
10738 * password. The behavior is identical to forceChangePasswordNextSignIn except that the user is required to first perform
10739 * a multi-factor authentication before password change. After a password change, this property will be automatically
10740 * reset to false. If not set, default is false.
10741 */
10742 forceChangePasswordNextSignInWithMfa?: NullableOption<boolean>;
10743 /**
10744 * The password for the user. This property is required when a user is created. It can be updated, but the user will be
10745 * required to change the password on the next login. The password must satisfy minimum requirements as specified by the
10746 * user’s passwordPolicies property. By default, a strong password is required.
10747 */
10748 password?: NullableOption<string>;
10749}
10750export interface ProvisionedPlan {
10751 // For example, 'Enabled'.
10752 capabilityStatus?: NullableOption<string>;
10753 // For example, 'Success'.
10754 provisioningStatus?: NullableOption<string>;
10755 // The name of the service; for example, 'AccessControlS2S'
10756 service?: NullableOption<string>;
10757}
10758export interface MailboxSettings {
10759 // Folder ID of an archive folder for the user. Read only.
10760 archiveFolder?: NullableOption<string>;
10761 // Configuration settings to automatically notify the sender of an incoming email with a message from the signed-in user.
10762 automaticRepliesSetting?: NullableOption<AutomaticRepliesSetting>;
10763 // The date format for the user's mailbox.
10764 dateFormat?: NullableOption<string>;
10765 /**
10766 * If the user has a calendar delegate, this specifies whether the delegate, mailbox owner, or both receive meeting
10767 * messages and meeting responses. Possible values are: sendToDelegateAndInformationToPrincipal,
10768 * sendToDelegateAndPrincipal, sendToDelegateOnly. The default is sendToDelegateOnly.
10769 */
10770 delegateMeetingMessageDeliveryOptions?: NullableOption<DelegateMeetingMessageDeliveryOptions>;
10771 // The locale information for the user, including the preferred language and country/region.
10772 language?: NullableOption<LocaleInfo>;
10773 // The time format for the user's mailbox.
10774 timeFormat?: NullableOption<string>;
10775 // The default time zone for the user's mailbox.
10776 timeZone?: NullableOption<string>;
10777 // The days of the week and hours in a specific time zone that the user works.
10778 workingHours?: NullableOption<WorkingHours>;
10779}
10780export interface ApplicationServicePrincipal {
10781 application?: NullableOption<Application>;
10782 servicePrincipal?: NullableOption<ServicePrincipal>;
10783}
10784export interface AddIn {
10785 id?: NullableOption<string>;
10786 properties?: KeyValue[];
10787 type?: string;
10788}
10789export interface ApiApplication {
10790 // When true, allows an application to use claims mapping without specifying a custom signing key.
10791 acceptMappedClaims?: NullableOption<boolean>;
10792 /**
10793 * Used for bundling consent if you have a solution that contains two parts: a client app and a custom web API app. If you
10794 * set the appID of the client app to this value, the user only consents once to the client app. Azure AD knows that
10795 * consenting to the client means implicitly consenting to the web API and automatically provisions service principals for
10796 * both APIs at the same time. Both the client and the web API app must be registered in the same tenant.
10797 */
10798 knownClientApplications?: NullableOption<string[]>;
10799 /**
10800 * The definition of the delegated permissions exposed by the web API represented by this application registration. These
10801 * delegated permissions may be requested by a client application, and may be granted by users or administrators during
10802 * consent. Delegated permissions are sometimes referred to as OAuth 2.0 scopes.
10803 */
10804 oauth2PermissionScopes?: PermissionScope[];
10805 /**
10806 * Lists the client applications that are pre-authorized with the specified delegated permissions to access this
10807 * application's APIs. Users are not required to consent to any pre-authorized application (for the permissions
10808 * specified). However, any additional permissions not listed in preAuthorizedApplications (requested through incremental
10809 * consent for example) will require user consent.
10810 */
10811 preAuthorizedApplications?: NullableOption<PreAuthorizedApplication[]>;
10812 /**
10813 * Specifies the access token version expected by this resource. This changes the version and format of the JWT produced
10814 * independent of the endpoint or client used to request the access token. The endpoint used, v1.0 or v2.0, is chosen by
10815 * the client and only impacts the version of id_tokens. Resources need to explicitly configure
10816 * requestedAccessTokenVersion to indicate the supported access token format. Possible values for
10817 * requestedAccessTokenVersion are 1, 2, or null. If the value is null, this defaults to 1, which corresponds to the v1.0
10818 * endpoint. If signInAudience on the application is configured as AzureADandPersonalMicrosoftAccount, the value for this
10819 * property must be 2
10820 */
10821 requestedAccessTokenVersion?: NullableOption<number>;
10822}
10823export interface AppRole {
10824 /**
10825 * Specifies whether this app role can be assigned to users and groups (by setting to ['User']), to other application's
10826 * (by setting to ['Application'], or both (by setting to ['User', 'Application']). App roles supporting assignment to
10827 * other applications' service principals are also known as application permissions. The 'Application' value is only
10828 * supported for app roles defined on application entities.
10829 */
10830 allowedMemberTypes?: string[];
10831 /**
10832 * The description for the app role. This is displayed when the app role is being assigned and, if the app role functions
10833 * as an application permission, during consent experiences.
10834 */
10835 description?: NullableOption<string>;
10836 // Display name for the permission that appears in the app role assignment and consent experiences.
10837 displayName?: NullableOption<string>;
10838 /**
10839 * Unique role identifier inside the appRoles collection. When creating a new app role, a new Guid identifier must be
10840 * provided.
10841 */
10842 id?: string;
10843 /**
10844 * When creating or updating an app role, this must be set to true (which is the default). To delete a role, this must
10845 * first be set to false. At that point, in a subsequent call, this role may be removed.
10846 */
10847 isEnabled?: boolean;
10848 /**
10849 * Specifies if the app role is defined on the application object or on the servicePrincipal entity. Must not be included
10850 * in any POST or PATCH requests. Read-only.
10851 */
10852 origin?: NullableOption<string>;
10853 /**
10854 * Specifies the value to include in the roles claim in ID tokens and access tokens authenticating an assigned user or
10855 * service principal. Must not exceed 120 characters in length. Allowed characters are : ! # $ % &amp; ' ( ) * + , - . / :
10856 * ; = ? @ [ ] ^ + _ { } ~, as well as characters in the ranges 0-9, A-Z and a-z. Any other character, including the space
10857 * character, are not allowed.
10858 */
10859 value?: NullableOption<string>;
10860}
10861// tslint:disable-next-line: interface-name
10862export interface InformationalUrl {
10863 // CDN URL to the application's logo, Read-only.
10864 logoUrl?: NullableOption<string>;
10865 // Link to the application's marketing page. For example, https://www.contoso.com/app/marketing
10866 marketingUrl?: NullableOption<string>;
10867 // Link to the application's privacy statement. For example, https://www.contoso.com/app/privacy
10868 privacyStatementUrl?: NullableOption<string>;
10869 // Link to the application's support page. For example, https://www.contoso.com/app/support
10870 supportUrl?: NullableOption<string>;
10871 // Link to the application's terms of service statement. For example, https://www.contoso.com/app/termsofservice
10872 termsOfServiceUrl?: NullableOption<string>;
10873}
10874export interface KeyCredential {
10875 // Custom key identifier
10876 customKeyIdentifier?: NullableOption<number>;
10877 // Friendly name for the key. Optional.
10878 displayName?: NullableOption<string>;
10879 /**
10880 * The date and time at which the credential expires.The Timestamp type represents date and time information using ISO
10881 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
10882 * '2014-01-01T00:00:00Z'
10883 */
10884 endDateTime?: NullableOption<string>;
10885 // Value for the key credential. Should be a base 64 encoded value.
10886 key?: NullableOption<number>;
10887 // The unique identifier (GUID) for the key.
10888 keyId?: NullableOption<string>;
10889 /**
10890 * The date and time at which the credential becomes valid.The Timestamp type represents date and time information using
10891 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
10892 * '2014-01-01T00:00:00Z'
10893 */
10894 startDateTime?: NullableOption<string>;
10895 // The type of key credential; for example, 'Symmetric'.
10896 type?: NullableOption<string>;
10897 // A string that describes the purpose for which the key can be used; for example, 'Verify'.
10898 usage?: NullableOption<string>;
10899}
10900export interface OptionalClaims {
10901 // The optional claims returned in the JWT access token.
10902 accessToken?: NullableOption<OptionalClaim[]>;
10903 // The optional claims returned in the JWT ID token.
10904 idToken?: NullableOption<OptionalClaim[]>;
10905 // The optional claims returned in the SAML token.
10906 saml2Token?: NullableOption<OptionalClaim[]>;
10907}
10908export interface ParentalControlSettings {
10909 /**
10910 * Specifies the two-letter ISO country codes. Access to the application will be blocked for minors from the countries
10911 * specified in this list.
10912 */
10913 countriesBlockedForMinors?: NullableOption<string[]>;
10914 /**
10915 * Specifies the legal age group rule that applies to users of the app. Can be set to one of the following values:
10916 * ValueDescriptionAllowDefault. Enforces the legal minimum. This means parental consent is required for minors in the
10917 * European Union and Korea.RequireConsentForPrivacyServicesEnforces the user to specify date of birth to comply with
10918 * COPPA rules. RequireConsentForMinorsRequires parental consent for ages below 18, regardless of country minor
10919 * rules.RequireConsentForKidsRequires parental consent for ages below 14, regardless of country minor
10920 * rules.BlockMinorsBlocks minors from using the app.
10921 */
10922 legalAgeGroupRule?: NullableOption<string>;
10923}
10924export interface PasswordCredential {
10925 // Do not use.
10926 customKeyIdentifier?: NullableOption<number>;
10927 // Friendly name for the password. Optional.
10928 displayName?: NullableOption<string>;
10929 /**
10930 * The date and time at which the password expires represented using ISO 8601 format and is always in UTC time. For
10931 * example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. Optional.
10932 */
10933 endDateTime?: NullableOption<string>;
10934 // Contains the first three characters of the password. Read-only.
10935 hint?: NullableOption<string>;
10936 // The unique identifier for the password.
10937 keyId?: NullableOption<string>;
10938 /**
10939 * Read-only; Contains the strong passwords generated by Azure AD that are 16-64 characters in length. The generated
10940 * password value is only returned during the initial POST request to addPassword. There is no way to retrieve this
10941 * password in the future.
10942 */
10943 secretText?: NullableOption<string>;
10944 /**
10945 * The date and time at which the password becomes valid. The Timestamp type represents date and time information using
10946 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
10947 * '2014-01-01T00:00:00Z'. Optional.
10948 */
10949 startDateTime?: NullableOption<string>;
10950}
10951export interface PublicClientApplication {
10952 /**
10953 * Specifies the URLs where user tokens are sent for sign-in, or the redirect URIs where OAuth 2.0 authorization codes and
10954 * access tokens are sent.
10955 */
10956 redirectUris?: string[];
10957}
10958export interface RequiredResourceAccess {
10959 // The list of OAuth2.0 permission scopes and app roles that the application requires from the specified resource.
10960 resourceAccess?: ResourceAccess[];
10961 /**
10962 * The unique identifier for the resource that the application requires access to. This should be equal to the appId
10963 * declared on the target resource application.
10964 */
10965 resourceAppId?: string;
10966}
10967export interface SpaApplication {
10968 /**
10969 * Specifies the URLs where user tokens are sent for sign-in, or the redirect URIs where OAuth 2.0 authorization codes and
10970 * access tokens are sent.
10971 */
10972 redirectUris?: string[];
10973}
10974export interface WebApplication {
10975 // Home page or landing page of the application.
10976 homePageUrl?: NullableOption<string>;
10977 // Specifies whether this web application can request tokens using the OAuth 2.0 implicit flow.
10978 implicitGrantSettings?: NullableOption<ImplicitGrantSettings>;
10979 /**
10980 * Specifies the URL that will be used by Microsoft's authorization service to logout an user using front-channel,
10981 * back-channel or SAML logout protocols.
10982 */
10983 logoutUrl?: NullableOption<string>;
10984 /**
10985 * Specifies the URLs where user tokens are sent for sign-in, or the redirect URIs where OAuth 2.0 authorization codes and
10986 * access tokens are sent.
10987 */
10988 redirectUris?: string[];
10989}
10990export interface PermissionScope {
10991 /**
10992 * A description of the delegated permissions, intended to be read by an administrator granting the permission on behalf
10993 * of all users. This text appears in tenant-wide admin consent experiences.
10994 */
10995 adminConsentDescription?: NullableOption<string>;
10996 // The permission's title, intended to be read by an administrator granting the permission on behalf of all users.
10997 adminConsentDisplayName?: NullableOption<string>;
10998 /**
10999 * Unique delegated permission identifier inside the collection of delegated permissions defined for a resource
11000 * application.
11001 */
11002 id?: string;
11003 /**
11004 * When creating or updating a permission, this property must be set to true (which is the default). To delete a
11005 * permission, this property must first be set to false. At that point, in a subsequent call, the permission may be
11006 * removed.
11007 */
11008 isEnabled?: boolean;
11009 origin?: NullableOption<string>;
11010 /**
11011 * Specifies whether this delegated permission should be considered safe for non-admin users to consent to on behalf of
11012 * themselves, or whether an administrator should be required for consent to the permissions. This will be the default
11013 * behavior, but each customer can choose to customize the behavior in their organization (by allowing, restricting or
11014 * limiting user consent to this delegated permission.)
11015 */
11016 type?: NullableOption<string>;
11017 /**
11018 * A description of the delegated permissions, intended to be read by a user granting the permission on their own behalf.
11019 * This text appears in consent experiences where the user is consenting only on behalf of themselves.
11020 */
11021 userConsentDescription?: NullableOption<string>;
11022 /**
11023 * A title for the permission, intended to be read by a user granting the permission on their own behalf. This text
11024 * appears in consent experiences where the user is consenting only on behalf of themselves.
11025 */
11026 userConsentDisplayName?: NullableOption<string>;
11027 /**
11028 * Specifies the value to include in the scp (scope) claim in access tokens. Must not exceed 120 characters in length.
11029 * Allowed characters are : ! # $ % &amp; ' ( ) * + , - . / : ; = ? @ [ ] ^ + _ { } ~, as well as characters in the ranges
11030 * 0-9, A-Z and a-z. Any other character, including the space character, are not allowed.
11031 */
11032 value?: NullableOption<string>;
11033}
11034export interface SamlSingleSignOnSettings {
11035 // The relative URI the service provider would redirect to after completion of the single sign-on flow.
11036 relayState?: NullableOption<string>;
11037}
11038export interface Fido2KeyRestrictions {
11039 // A collection of Authenticator Attestation GUIDs. AADGUIDs define key types and manufacturers.
11040 aaGuids?: NullableOption<string[]>;
11041 // Enforcement type. Possible values are: allow, block.
11042 enforcementType?: NullableOption<Fido2RestrictionEnforcementType>;
11043 // Determines if the configured key enforcement is enabled.
11044 isEnforced?: NullableOption<boolean>;
11045}
11046export interface AlternativeSecurityId {
11047 // For internal use only
11048 identityProvider?: NullableOption<string>;
11049 // For internal use only
11050 key?: NullableOption<number>;
11051 // For internal use only
11052 type?: NullableOption<number>;
11053}
11054export interface PreAuthorizedApplication {
11055 // The unique identifier for the application.
11056 appId?: NullableOption<string>;
11057 // The unique identifier for the oauth2PermissionScopes the application requires.
11058 delegatedPermissionIds?: string[];
11059}
11060export interface AssignedLabel {
11061 // The display name of the label. Read-only.
11062 displayName?: NullableOption<string>;
11063 // The unique identifier of the label.
11064 labelId?: NullableOption<string>;
11065}
11066export interface CertificateAuthority {
11067 // Required. The base64 encoded string representing the public certificate.
11068 certificate?: number;
11069 // The URL of the certificate revocation list.
11070 certificateRevocationListUrl?: NullableOption<string>;
11071 /**
11072 * The URL contains the list of all revoked certificates since the last time a full certificate revocaton list was
11073 * created.
11074 */
11075 deltaCertificateRevocationListUrl?: NullableOption<string>;
11076 /**
11077 * Required. true if the trusted certificate is a root authority, false if the trusted certificate is an intermediate
11078 * authority.
11079 */
11080 isRootAuthority?: boolean;
11081 // The issuer of the certificate, calculated from the certificate value. Read-only.
11082 issuer?: string;
11083 // The subject key identifier of the certificate, calculated from the certificate value. Read-only.
11084 issuerSki?: string;
11085}
11086// tslint:disable-next-line: no-empty-interface
11087export interface ComplexExtensionValue {}
11088export interface DefaultUserRolePermissions {
11089 // Indicates whether the default user role can create applications.
11090 allowedToCreateApps?: boolean;
11091 // Indicates whether the default user role can create security groups.
11092 allowedToCreateSecurityGroups?: boolean;
11093 // Indicates whether the default user role can read other users.
11094 allowedToReadOtherUsers?: boolean;
11095 /**
11096 * Indicates if user consent to apps is allowed, and if it is, which permission to grant consent and which app consent
11097 * policy (permissionGrantPolicy) govern the permission for users to grant consent. Value should be in the format
11098 * managePermissionGrantsForSelf.{id}, where {id} is the id of a built-in or custom app consent policy. An empty list
11099 * indicates user consent to apps is disabled.
11100 */
11101 permissionGrantPoliciesAssigned?: NullableOption<string[]>;
11102}
11103export interface DomainState {
11104 /**
11105 * Timestamp for when the last activity occurred. The value is updated when an operation is scheduled, the asynchronous
11106 * task starts, and when the operation completes.
11107 */
11108 lastActionDateTime?: NullableOption<string>;
11109 // Type of asynchronous operation. The values can be ForceDelete or Verification
11110 operation?: NullableOption<string>;
11111 /**
11112 * Current status of the operation. Scheduled - Operation has been scheduled but has not started. InProgress - Task has
11113 * started and is in progress. Failed - Operation has failed.
11114 */
11115 status?: NullableOption<string>;
11116}
11117// tslint:disable-next-line: interface-name
11118export interface Identity {
11119 /**
11120 * The identity's display name. Note that this may not always be available or up to date. For example, if a user changes
11121 * their display name, the API may show the new value in a future response, but the items associated with the user won't
11122 * show up as having changed when using delta.
11123 */
11124 displayName?: NullableOption<string>;
11125 // Unique identifier for the identity.
11126 id?: NullableOption<string>;
11127}
11128// tslint:disable-next-line: interface-name
11129export interface ImplicitGrantSettings {
11130 // Specifies whether this web application can request an access token using the OAuth 2.0 implicit flow.
11131 enableAccessTokenIssuance?: NullableOption<boolean>;
11132 // Specifies whether this web application can request an ID token using the OAuth 2.0 implicit flow.
11133 enableIdTokenIssuance?: NullableOption<boolean>;
11134}
11135// tslint:disable-next-line: interface-name
11136export interface InstanceResourceAccess {
11137 permissions?: ResourcePermission[];
11138 resourceAppId?: string;
11139}
11140export interface ResourcePermission {
11141 type?: string;
11142 value?: string;
11143}
11144export interface LicenseProcessingState {
11145 state?: NullableOption<string>;
11146}
11147export interface LicenseUnitsDetail {
11148 // The number of units that are enabled.
11149 enabled?: NullableOption<number>;
11150 // The number of units that are suspended.
11151 suspended?: NullableOption<number>;
11152 // The number of units that are in warning status.
11153 warning?: NullableOption<number>;
11154}
11155export interface OptionalClaim {
11156 /**
11157 * Additional properties of the claim. If a property exists in this collection, it modifies the behavior of the optional
11158 * claim specified in the name property.
11159 */
11160 additionalProperties?: NullableOption<string[]>;
11161 /**
11162 * If the value is true, the claim specified by the client is necessary to ensure a smooth authorization experience for
11163 * the specific task requested by the end user. The default value is false.
11164 */
11165 essential?: boolean;
11166 // The name of the optional claim.
11167 name?: string;
11168 /**
11169 * The source (directory object) of the claim. There are predefined claims and user-defined claims from extension
11170 * properties. If the source value is null, the claim is a predefined optional claim. If the source value is user, the
11171 * value in the name property is the extension property from the user object.
11172 */
11173 source?: NullableOption<string>;
11174}
11175export interface Phone {
11176 language?: NullableOption<string>;
11177 // The phone number.
11178 number?: NullableOption<string>;
11179 region?: NullableOption<string>;
11180 /**
11181 * The type of phone number. Possible values are: home, business, mobile, other, assistant, homeFax, businessFax,
11182 * otherFax, pager, radio.
11183 */
11184 type?: NullableOption<PhoneType>;
11185}
11186export interface PhysicalOfficeAddress {
11187 // The city.
11188 city?: NullableOption<string>;
11189 // The country or region. It's a free-format string value, for example, 'United States'.
11190 countryOrRegion?: NullableOption<string>;
11191 // Office location such as building and office number for an organizational contact.
11192 officeLocation?: NullableOption<string>;
11193 // The postal code.
11194 postalCode?: NullableOption<string>;
11195 // The state.
11196 state?: NullableOption<string>;
11197 // The street.
11198 street?: NullableOption<string>;
11199}
11200export interface PrivacyProfile {
11201 // A valid smtp email address for the privacy statement contact. Not required.
11202 contactEmail?: NullableOption<string>;
11203 /**
11204 * A valid URL format that begins with http:// or https://. Maximum length is 255 characters. The URL that directs to the
11205 * company's privacy statement. Not required.
11206 */
11207 statementUrl?: NullableOption<string>;
11208}
11209export interface ResourceAccess {
11210 // The unique identifier for one of the oauth2PermissionScopes or appRole instances that the resource application exposes.
11211 id?: string;
11212 /**
11213 * Specifies whether the id property references an oauth2PermissionScopes or an appRole. Possible values are Scope or
11214 * Role.
11215 */
11216 type?: NullableOption<string>;
11217}
11218export interface ServicePlanInfo {
11219 /**
11220 * The object the service plan can be assigned to. Possible values:'User' - service plan can be assigned to individual
11221 * users.'Company' - service plan can be assigned to the entire tenant.
11222 */
11223 appliesTo?: NullableOption<string>;
11224 /**
11225 * The provisioning status of the service plan. Possible values:'Success' - Service is fully provisioned.'Disabled' -
11226 * Service has been disabled.'PendingInput' - Service is not yet provisioned; awaiting service
11227 * confirmation.'PendingActivation' - Service is provisioned but requires explicit activation by administrator (for
11228 * example, Intune_O365 service plan).'PendingProvisioning' - Microsoft has added a new service to the product SKU and it
11229 * has not been activated in the tenant, yet.
11230 */
11231 provisioningStatus?: NullableOption<string>;
11232 // The unique identifier of the service plan.
11233 servicePlanId?: NullableOption<string>;
11234 // The name of the service plan.
11235 servicePlanName?: NullableOption<string>;
11236}
11237export interface SettingTemplateValue {
11238 // Default value for the setting. Read-only.
11239 defaultValue?: NullableOption<string>;
11240 // Description of the setting. Read-only.
11241 description?: NullableOption<string>;
11242 // Name of the setting. Read-only.
11243 name?: NullableOption<string>;
11244 // Type of the setting. Read-only.
11245 type?: NullableOption<string>;
11246}
11247export interface SettingValue {
11248 // Name of the setting (as defined by the directorySettingTemplate).
11249 name?: NullableOption<string>;
11250 // Value of the setting.
11251 value?: NullableOption<string>;
11252}
11253export interface VerifiedDomain {
11254 // For example, 'Email', 'OfficeCommunicationsOnline'.
11255 capabilities?: NullableOption<string>;
11256 // true if this is the default domain associated with the tenant; otherwise, false.
11257 isDefault?: NullableOption<boolean>;
11258 // true if this is the initial domain associated with the tenant; otherwise, false
11259 isInitial?: NullableOption<boolean>;
11260 // The domain name; for example, 'contoso.onmicrosoft.com'
11261 name?: NullableOption<string>;
11262 // For example, 'Managed'.
11263 type?: NullableOption<string>;
11264}
11265export interface EducationStudent {
11266 // Birth date of the student.
11267 birthDate?: NullableOption<string>;
11268 // ID of the student in the source system.
11269 externalId?: NullableOption<string>;
11270 // Possible values are: female, male, other.
11271 gender?: NullableOption<EducationGender>;
11272 // Current grade level of the student.
11273 grade?: NullableOption<string>;
11274 // Year the student is graduating from the school.
11275 graduationYear?: NullableOption<string>;
11276 // Student Number.
11277 studentNumber?: NullableOption<string>;
11278}
11279export interface EducationTeacher {
11280 // Id of the Teacher in external source system.
11281 externalId?: NullableOption<string>;
11282 // Teacher number.
11283 teacherNumber?: NullableOption<string>;
11284}
11285export interface EducationTerm {
11286 // Display name of the term.
11287 displayName?: NullableOption<string>;
11288 // End of the term.
11289 endDate?: NullableOption<string>;
11290 // ID of term in the syncing system.
11291 externalId?: NullableOption<string>;
11292 // Start of the term.
11293 startDate?: NullableOption<string>;
11294}
11295// tslint:disable-next-line: interface-name
11296export interface IdentitySet {
11297 // Optional. The application associated with this action.
11298 application?: NullableOption<Identity>;
11299 // Optional. The device associated with this action.
11300 device?: NullableOption<Identity>;
11301 // Optional. The user associated with this action.
11302 user?: NullableOption<Identity>;
11303}
11304export interface PhysicalAddress {
11305 // The city.
11306 city?: NullableOption<string>;
11307 // The country or region. It's a free-format string value, for example, 'United States'.
11308 countryOrRegion?: NullableOption<string>;
11309 // The postal code.
11310 postalCode?: NullableOption<string>;
11311 // The state.
11312 state?: NullableOption<string>;
11313 // The street.
11314 street?: NullableOption<string>;
11315}
11316export interface WorkbookFilterCriteria {
11317 color?: NullableOption<string>;
11318 criterion1?: NullableOption<string>;
11319 criterion2?: NullableOption<string>;
11320 dynamicCriteria?: string;
11321 filterOn?: string;
11322 icon?: NullableOption<WorkbookIcon>;
11323 operator?: string;
11324 values?: NullableOption<any>;
11325}
11326export interface WorkbookIcon {
11327 // Represents the index of the icon in the given set.
11328 index?: number;
11329 /**
11330 * Represents the set that the icon is part of. Possible values are: Invalid, ThreeArrows, ThreeArrowsGray, ThreeFlags,
11331 * ThreeTrafficLights1, ThreeTrafficLights2, ThreeSigns, ThreeSymbols, ThreeSymbols2, FourArrows, FourArrowsGray,
11332 * FourRedToBlack, FourRating, FourTrafficLights, FiveArrows, FiveArrowsGray, FiveRating, FiveQuarters, ThreeStars,
11333 * ThreeTriangles, FiveBoxes.
11334 */
11335 set?: string;
11336}
11337export interface WorkbookFilterDatetime {
11338 date?: NullableOption<string>;
11339 specificity?: string;
11340}
11341export interface WorkbookOperationError {
11342 // The error code.
11343 code?: NullableOption<string>;
11344 innerError?: NullableOption<WorkbookOperationError>;
11345 // The error message.
11346 message?: NullableOption<string>;
11347}
11348export interface WorkbookRangeReference {
11349 address?: NullableOption<string>;
11350}
11351export interface WorkbookSessionInfo {
11352 // Id of the workbook session.
11353 id?: NullableOption<string>;
11354 // true for persistent session. false for non-persistent session (view mode)
11355 persistChanges?: NullableOption<boolean>;
11356}
11357export interface WorkbookSortField {
11358 // Represents whether the sorting is done in an ascending fashion.
11359 ascending?: boolean;
11360 // Represents the color that is the target of the condition if the sorting is on font or cell color.
11361 color?: NullableOption<string>;
11362 // Represents additional sorting options for this field. Possible values are: Normal, TextAsNumber.
11363 dataOption?: string;
11364 // Represents the icon that is the target of the condition if the sorting is on the cell's icon.
11365 icon?: NullableOption<WorkbookIcon>;
11366 /**
11367 * Represents the column (or row, depending on the sort orientation) that the condition is on. Represented as an offset
11368 * from the first column (or row).
11369 */
11370 key?: number;
11371 // Represents the type of sorting of this condition. Possible values are: Value, CellColor, FontColor, Icon.
11372 sortOn?: string;
11373}
11374export interface WorkbookWorksheetProtectionOptions {
11375 // Represents the worksheet protection option of allowing using auto filter feature.
11376 allowAutoFilter?: boolean;
11377 // Represents the worksheet protection option of allowing deleting columns.
11378 allowDeleteColumns?: boolean;
11379 // Represents the worksheet protection option of allowing deleting rows.
11380 allowDeleteRows?: boolean;
11381 // Represents the worksheet protection option of allowing formatting cells.
11382 allowFormatCells?: boolean;
11383 // Represents the worksheet protection option of allowing formatting columns.
11384 allowFormatColumns?: boolean;
11385 // Represents the worksheet protection option of allowing formatting rows.
11386 allowFormatRows?: boolean;
11387 // Represents the worksheet protection option of allowing inserting columns.
11388 allowInsertColumns?: boolean;
11389 // Represents the worksheet protection option of allowing inserting hyperlinks.
11390 allowInsertHyperlinks?: boolean;
11391 // Represents the worksheet protection option of allowing inserting rows.
11392 allowInsertRows?: boolean;
11393 // Represents the worksheet protection option of allowing using pivot table feature.
11394 allowPivotTables?: boolean;
11395 // Represents the worksheet protection option of allowing using sort feature.
11396 allowSort?: boolean;
11397}
11398export interface Quota {
11399 // Total space consumed by files in the recycle bin, in bytes. Read-only.
11400 deleted?: NullableOption<number>;
11401 // Total space remaining before reaching the quota limit, in bytes. Read-only.
11402 remaining?: NullableOption<number>;
11403 // Enumeration value that indicates the state of the storage space. Read-only.
11404 state?: NullableOption<string>;
11405 // Information about the drive's storage quota plans. Only in Personal OneDrive.
11406 storagePlanInformation?: NullableOption<StoragePlanInformation>;
11407 // Total allowed storage space, in bytes. Read-only.
11408 total?: NullableOption<number>;
11409 // Total space used, in bytes. Read-only.
11410 used?: NullableOption<number>;
11411}
11412export interface SharepointIds {
11413 // The unique identifier (guid) for the item's list in SharePoint.
11414 listId?: NullableOption<string>;
11415 // An integer identifier for the item within the containing list.
11416 listItemId?: NullableOption<string>;
11417 // The unique identifier (guid) for the item within OneDrive for Business or a SharePoint site.
11418 listItemUniqueId?: NullableOption<string>;
11419 // The unique identifier (guid) for the item's site collection (SPSite).
11420 siteId?: NullableOption<string>;
11421 // The SharePoint URL for the site that contains the item.
11422 siteUrl?: NullableOption<string>;
11423 // The unique identifier (guid) for the tenancy.
11424 tenantId?: NullableOption<string>;
11425 // The unique identifier (guid) for the item's site (SPWeb).
11426 webId?: NullableOption<string>;
11427}
11428// tslint:disable-next-line: no-empty-interface
11429export interface SystemFacet {}
11430export interface Audio {
11431 // The title of the album for this audio file.
11432 album?: NullableOption<string>;
11433 // The artist named on the album for the audio file.
11434 albumArtist?: NullableOption<string>;
11435 // The performing artist for the audio file.
11436 artist?: NullableOption<string>;
11437 // Bitrate expressed in kbps.
11438 bitrate?: NullableOption<number>;
11439 // The name of the composer of the audio file.
11440 composers?: NullableOption<string>;
11441 // Copyright information for the audio file.
11442 copyright?: NullableOption<string>;
11443 // The number of the disc this audio file came from.
11444 disc?: NullableOption<number>;
11445 // The total number of discs in this album.
11446 discCount?: NullableOption<number>;
11447 // Duration of the audio file, expressed in milliseconds
11448 duration?: NullableOption<number>;
11449 // The genre of this audio file.
11450 genre?: NullableOption<string>;
11451 // Indicates if the file is protected with digital rights management.
11452 hasDrm?: NullableOption<boolean>;
11453 // Indicates if the file is encoded with a variable bitrate.
11454 isVariableBitrate?: NullableOption<boolean>;
11455 // The title of the audio file.
11456 title?: NullableOption<string>;
11457 // The number of the track on the original disc for this audio file.
11458 track?: NullableOption<number>;
11459 // The total number of tracks on the original disc for this audio file.
11460 trackCount?: NullableOption<number>;
11461 // The year the audio file was recorded.
11462 year?: NullableOption<number>;
11463}
11464export interface Deleted {
11465 // Represents the state of the deleted item.
11466 state?: NullableOption<string>;
11467}
11468export interface File {
11469 // Hashes of the file's binary content, if available. Read-only.
11470 hashes?: NullableOption<Hashes>;
11471 /**
11472 * The MIME type for the file. This is determined by logic on the server and might not be the value provided when the file
11473 * was uploaded. Read-only.
11474 */
11475 mimeType?: NullableOption<string>;
11476 processingMetadata?: NullableOption<boolean>;
11477}
11478export interface FileSystemInfo {
11479 // The UTC date and time the file was created on a client.
11480 createdDateTime?: NullableOption<string>;
11481 // The UTC date and time the file was last accessed. Available for the recent file list only.
11482 lastAccessedDateTime?: NullableOption<string>;
11483 // The UTC date and time the file was last modified on a client.
11484 lastModifiedDateTime?: NullableOption<string>;
11485}
11486export interface Folder {
11487 // Number of children contained immediately within this container.
11488 childCount?: NullableOption<number>;
11489 // A collection of properties defining the recommended view for the folder.
11490 view?: NullableOption<FolderView>;
11491}
11492// tslint:disable-next-line: interface-name
11493export interface Image {
11494 // Optional. Height of the image, in pixels. Read-only.
11495 height?: NullableOption<number>;
11496 // Optional. Width of the image, in pixels. Read-only.
11497 width?: NullableOption<number>;
11498}
11499export interface Package {
11500 /**
11501 * A string indicating the type of package. While oneNote is the only currently defined value, you should expect other
11502 * package types to be returned and handle them accordingly.
11503 */
11504 type?: NullableOption<string>;
11505}
11506export interface PendingOperations {
11507 // A property that indicates that an operation that might update the binary content of a file is pending completion.
11508 pendingContentUpdate?: NullableOption<PendingContentUpdate>;
11509}
11510export interface Photo {
11511 // Camera manufacturer. Read-only.
11512 cameraMake?: NullableOption<string>;
11513 // Camera model. Read-only.
11514 cameraModel?: NullableOption<string>;
11515 // The denominator for the exposure time fraction from the camera. Read-only.
11516 exposureDenominator?: NullableOption<number>;
11517 // The numerator for the exposure time fraction from the camera. Read-only.
11518 exposureNumerator?: NullableOption<number>;
11519 // The F-stop value from the camera. Read-only.
11520 fNumber?: NullableOption<number>;
11521 // The focal length from the camera. Read-only.
11522 focalLength?: NullableOption<number>;
11523 // The ISO value from the camera. Read-only.
11524 iso?: NullableOption<number>;
11525 // The orientation value from the camera. Writable on OneDrive Personal.
11526 orientation?: NullableOption<number>;
11527 // The date and time the photo was taken in UTC time. Read-only.
11528 takenDateTime?: NullableOption<string>;
11529}
11530export interface PublicationFacet {
11531 // The state of publication for this document. Either published or checkout. Read-only.
11532 level?: NullableOption<string>;
11533 // The unique identifier for the version that is visible to the current caller. Read-only.
11534 versionId?: NullableOption<string>;
11535}
11536export interface RemoteItem {
11537 // Identity of the user, device, and application which created the item. Read-only.
11538 createdBy?: NullableOption<IdentitySet>;
11539 // Date and time of item creation. Read-only.
11540 createdDateTime?: NullableOption<string>;
11541 // Indicates that the remote item is a file. Read-only.
11542 file?: NullableOption<File>;
11543 // Information about the remote item from the local file system. Read-only.
11544 fileSystemInfo?: NullableOption<FileSystemInfo>;
11545 // Indicates that the remote item is a folder. Read-only.
11546 folder?: NullableOption<Folder>;
11547 // Unique identifier for the remote item in its drive. Read-only.
11548 id?: NullableOption<string>;
11549 // Image metadata, if the item is an image. Read-only.
11550 image?: NullableOption<Image>;
11551 // Identity of the user, device, and application which last modified the item. Read-only.
11552 lastModifiedBy?: NullableOption<IdentitySet>;
11553 // Date and time the item was last modified. Read-only.
11554 lastModifiedDateTime?: NullableOption<string>;
11555 // Optional. Filename of the remote item. Read-only.
11556 name?: NullableOption<string>;
11557 /**
11558 * If present, indicates that this item is a package instead of a folder or file. Packages are treated like files in some
11559 * contexts and folders in others. Read-only.
11560 */
11561 package?: NullableOption<Package>;
11562 // Properties of the parent of the remote item. Read-only.
11563 parentReference?: NullableOption<ItemReference>;
11564 /**
11565 * Indicates that the item has been shared with others and provides information about the shared state of the item.
11566 * Read-only.
11567 */
11568 shared?: NullableOption<Shared>;
11569 /**
11570 * Provides interop between items in OneDrive for Business and SharePoint with the full set of item identifiers.
11571 * Read-only.
11572 */
11573 sharepointIds?: NullableOption<SharepointIds>;
11574 // Size of the remote item. Read-only.
11575 size?: NullableOption<number>;
11576 // If the current item is also available as a special folder, this facet is returned. Read-only.
11577 specialFolder?: NullableOption<SpecialFolder>;
11578 // Video metadata, if the item is a video. Read-only.
11579 video?: NullableOption<Video>;
11580 // DAV compatible URL for the item.
11581 webDavUrl?: NullableOption<string>;
11582 // URL that displays the resource in the browser. Read-only.
11583 webUrl?: NullableOption<string>;
11584}
11585// tslint:disable-next-line: no-empty-interface
11586export interface Root {}
11587export interface SearchResult {
11588 /**
11589 * A callback URL that can be used to record telemetry information. The application should issue a GET on this URL if the
11590 * user interacts with this item to improve the quality of results.
11591 */
11592 onClickTelemetryUrl?: NullableOption<string>;
11593}
11594export interface Shared {
11595 // The identity of the owner of the shared item. Read-only.
11596 owner?: NullableOption<IdentitySet>;
11597 // Indicates the scope of how the item is shared: anonymous, organization, or users. Read-only.
11598 scope?: NullableOption<string>;
11599 // The identity of the user who shared the item. Read-only.
11600 sharedBy?: NullableOption<IdentitySet>;
11601 // The UTC date and time when the item was shared. Read-only.
11602 sharedDateTime?: NullableOption<string>;
11603}
11604export interface SpecialFolder {
11605 // The unique identifier for this item in the /drive/special collection
11606 name?: NullableOption<string>;
11607}
11608export interface Video {
11609 // Number of audio bits per sample.
11610 audioBitsPerSample?: NullableOption<number>;
11611 // Number of audio channels.
11612 audioChannels?: NullableOption<number>;
11613 // Name of the audio format (AAC, MP3, etc.).
11614 audioFormat?: NullableOption<string>;
11615 // Number of audio samples per second.
11616 audioSamplesPerSecond?: NullableOption<number>;
11617 // Bit rate of the video in bits per second.
11618 bitrate?: NullableOption<number>;
11619 // Duration of the file in milliseconds.
11620 duration?: NullableOption<number>;
11621 // 'Four character code' name of the video format.
11622 fourCC?: NullableOption<string>;
11623 // Frame rate of the video.
11624 frameRate?: NullableOption<number>;
11625 // Height of the video, in pixels.
11626 height?: NullableOption<number>;
11627 // Width of the video, in pixels.
11628 width?: NullableOption<number>;
11629}
11630export interface ListInfo {
11631 // If true, indicates that content types are enabled for this list.
11632 contentTypesEnabled?: NullableOption<boolean>;
11633 // If true, indicates that the list is not normally visible in the SharePoint user experience.
11634 hidden?: NullableOption<boolean>;
11635 /**
11636 * An enumerated value that represents the base list template used in creating the list. Possible values include
11637 * documentLibrary, genericList, task, survey, announcements, contacts, and more.
11638 */
11639 template?: NullableOption<string>;
11640}
11641export interface PublicError {
11642 // Represents the error code.
11643 code?: NullableOption<string>;
11644 // Details of the error.
11645 details?: NullableOption<PublicErrorDetail[]>;
11646 // Details of the inner error.
11647 innerError?: NullableOption<PublicInnerError>;
11648 // A non-localized message for the developer.
11649 message?: NullableOption<string>;
11650 // The target of the error.
11651 target?: NullableOption<string>;
11652}
11653export interface SiteCollection {
11654 // The geographic region code for where this site collection resides. Read-only.
11655 dataLocationCode?: NullableOption<string>;
11656 // The hostname for the site collection. Read-only.
11657 hostname?: NullableOption<string>;
11658 // If present, indicates that this is a root site collection in SharePoint. Read-only.
11659 root?: NullableOption<Root>;
11660}
11661export interface AttendeeAvailability {
11662 /**
11663 * The email address and type of attendee - whether it's a person or a resource, and whether required or optional if it's
11664 * a person.
11665 */
11666 attendee?: NullableOption<AttendeeBase>;
11667 // The availability status of the attendee. Possible values are: free, tentative, busy, oof, workingElsewhere, unknown.
11668 availability?: NullableOption<FreeBusyStatus>;
11669}
11670export interface AttendeeBase extends Recipient {
11671 /**
11672 * The type of attendee. Possible values are: required, optional, resource. Currently if the attendee is a person,
11673 * findMeetingTimes always considers the person is of the Required type.
11674 */
11675 type?: NullableOption<AttendeeType>;
11676}
11677export interface DateTimeTimeZone {
11678 // A single point of time in a combined date and time representation ({date}T{time}). For example, '2019-04-16T09:00:00'.
11679 dateTime?: string;
11680 // Represents a time zone, for example, 'Pacific Standard Time'. See below for possible values.
11681 timeZone?: NullableOption<string>;
11682}
11683export interface Location {
11684 // The street address of the location.
11685 address?: NullableOption<PhysicalAddress>;
11686 // The geographic coordinates and elevation of the location.
11687 coordinates?: NullableOption<OutlookGeoCoordinates>;
11688 // The name associated with the location.
11689 displayName?: NullableOption<string>;
11690 // Optional email address of the location.
11691 locationEmailAddress?: NullableOption<string>;
11692 /**
11693 * The type of location. Possible values are: default, conferenceRoom, homeAddress, businessAddress,geoCoordinates,
11694 * streetAddress, hotel, restaurant, localBusiness, postalAddress. Read-only.
11695 */
11696 locationType?: NullableOption<LocationType>;
11697 // Optional URI representing the location.
11698 locationUri?: NullableOption<string>;
11699 // For internal use only.
11700 uniqueId?: NullableOption<string>;
11701 // For internal use only.
11702 uniqueIdType?: NullableOption<LocationUniqueIdType>;
11703}
11704export interface OutlookGeoCoordinates {
11705 /**
11706 * The accuracy of the latitude and longitude. As an example, the accuracy can be measured in meters, such as the latitude
11707 * and longitude are accurate to within 50 meters.
11708 */
11709 accuracy?: NullableOption<number>;
11710 // The altitude of the location.
11711 altitude?: NullableOption<number>;
11712 // The accuracy of the altitude.
11713 altitudeAccuracy?: NullableOption<number>;
11714 // The latitude of the location.
11715 latitude?: NullableOption<number>;
11716 // The longitude of the location.
11717 longitude?: NullableOption<number>;
11718}
11719export interface LocationConstraint {
11720 /**
11721 * The client requests the service to include in the response a meeting location for the meeting. If this is true and all
11722 * the resources are busy, findMeetingTimes will not return any meeting time suggestions. If this is false and all the
11723 * resources are busy, findMeetingTimes would still look for meeting times without locations.
11724 */
11725 isRequired?: NullableOption<boolean>;
11726 // Constraint information for one or more locations that the client requests for the meeting.
11727 locations?: NullableOption<LocationConstraintItem[]>;
11728 // The client requests the service to suggest one or more meeting locations.
11729 suggestLocation?: NullableOption<boolean>;
11730}
11731export interface LocationConstraintItem extends Location {
11732 /**
11733 * If set to true and the specified resource is busy, findMeetingTimes looks for another resource that is free. If set to
11734 * false and the specified resource is busy, findMeetingTimes returns the resource best ranked in the user's cache without
11735 * checking if it's free. Default is true.
11736 */
11737 resolveAvailability?: NullableOption<boolean>;
11738}
11739export interface MeetingTimeSuggestion {
11740 // An array that shows the availability status of each attendee for this meeting suggestion.
11741 attendeeAvailability?: NullableOption<AttendeeAvailability[]>;
11742 // A percentage that represents the likelhood of all the attendees attending.
11743 confidence?: NullableOption<number>;
11744 // An array that specifies the name and geographic location of each meeting location for this meeting suggestion.
11745 locations?: NullableOption<Location[]>;
11746 // A time period suggested for the meeting.
11747 meetingTimeSlot?: NullableOption<TimeSlot>;
11748 /**
11749 * Order of meeting time suggestions sorted by their computed confidence value from high to low, then by chronology if
11750 * there are suggestions with the same confidence.
11751 */
11752 order?: NullableOption<number>;
11753 /**
11754 * Availability of the meeting organizer for this meeting suggestion. Possible values are: free, tentative, busy, oof,
11755 * workingElsewhere, unknown.
11756 */
11757 organizerAvailability?: NullableOption<FreeBusyStatus>;
11758 // Reason for suggesting the meeting time.
11759 suggestionReason?: NullableOption<string>;
11760}
11761export interface TimeSlot {
11762 // The date, time, and time zone that a period begins.
11763 end?: DateTimeTimeZone;
11764 // The date, time, and time zone that a period ends.
11765 start?: DateTimeTimeZone;
11766}
11767export interface MeetingTimeSuggestionsResult {
11768 /**
11769 * A reason for not returning any meeting suggestions. Possible values are: attendeesUnavailable,
11770 * attendeesUnavailableOrUnknown, locationsUnavailable, organizerUnavailable, or unknown. This property is an empty string
11771 * if the meetingTimeSuggestions property does include any meeting suggestions.
11772 */
11773 emptySuggestionsReason?: NullableOption<string>;
11774 // An array of meeting suggestions.
11775 meetingTimeSuggestions?: NullableOption<MeetingTimeSuggestion[]>;
11776}
11777export interface TimeConstraint {
11778 // The nature of the activity, optional. Possible values are: work, personal, unrestricted, or unknown.
11779 activityDomain?: NullableOption<ActivityDomain>;
11780 timeSlots?: NullableOption<TimeSlot[]>;
11781}
11782export interface AttachmentItem {
11783 // The type of attachment. Possible values are: file, item, reference. Required.
11784 attachmentType?: NullableOption<AttachmentType>;
11785 // The nature of the data in the attachment. Optional.
11786 contentType?: NullableOption<string>;
11787 // true if the attachment is an inline attachment; otherwise, false. Optional.
11788 isInline?: NullableOption<boolean>;
11789 /**
11790 * The display name of the attachment. This can be a descriptive string and does not have to be the actual file name.
11791 * Required.
11792 */
11793 name?: NullableOption<string>;
11794 // The length of the attachment in bytes. Required.
11795 size?: NullableOption<number>;
11796}
11797export interface Attendee extends AttendeeBase {
11798 /**
11799 * An alternate date/time proposed by the attendee for a meeting request to start and end. If the attendee hasn't proposed
11800 * another time, then this property is not included in a response of a GET event.
11801 */
11802 proposedNewTime?: NullableOption<TimeSlot>;
11803 // The attendee's response (none, accepted, declined, etc.) for the event and date-time that the response was sent.
11804 status?: NullableOption<ResponseStatus>;
11805}
11806export interface ResponseStatus {
11807 // The response type. Possible values are: None, Organizer, TentativelyAccepted, Accepted, Declined, NotResponded.
11808 response?: NullableOption<ResponseType>;
11809 /**
11810 * The date and time that the response was returned. It uses ISO 8601 format and is always in UTC time. For example,
11811 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
11812 */
11813 time?: NullableOption<string>;
11814}
11815export interface AutomaticRepliesMailTips {
11816 // The automatic reply message.
11817 message?: NullableOption<string>;
11818 // The language that the automatic reply message is in.
11819 messageLanguage?: NullableOption<LocaleInfo>;
11820 // The date and time that automatic replies are set to end.
11821 scheduledEndTime?: NullableOption<DateTimeTimeZone>;
11822 // The date and time that automatic replies are set to begin.
11823 scheduledStartTime?: NullableOption<DateTimeTimeZone>;
11824}
11825export interface LocaleInfo {
11826 // A name representing the user's locale in natural language, for example, 'English (United States)'.
11827 displayName?: NullableOption<string>;
11828 /**
11829 * A locale representation for the user, which includes the user's preferred language and country/region. For example,
11830 * 'en-us'. The language component follows 2-letter codes as defined in ISO 639-1, and the country component follows
11831 * 2-letter codes as defined in ISO 3166-1 alpha-2.
11832 */
11833 locale?: NullableOption<string>;
11834}
11835export interface AutomaticRepliesSetting {
11836 /**
11837 * The set of audience external to the signed-in user's organization who will receive the ExternalReplyMessage, if Status
11838 * is AlwaysEnabled or Scheduled. Possible values are: none, contactsOnly, all.
11839 */
11840 externalAudience?: NullableOption<ExternalAudienceScope>;
11841 // The automatic reply to send to the specified external audience, if Status is AlwaysEnabled or Scheduled.
11842 externalReplyMessage?: NullableOption<string>;
11843 /**
11844 * The automatic reply to send to the audience internal to the signed-in user's organization, if Status is AlwaysEnabled
11845 * or Scheduled.
11846 */
11847 internalReplyMessage?: NullableOption<string>;
11848 // The date and time that automatic replies are set to end, if Status is set to Scheduled.
11849 scheduledEndDateTime?: NullableOption<DateTimeTimeZone>;
11850 // The date and time that automatic replies are set to begin, if Status is set to Scheduled.
11851 scheduledStartDateTime?: NullableOption<DateTimeTimeZone>;
11852 // Configurations status for automatic replies. Possible values are: disabled, alwaysEnabled, scheduled.
11853 status?: NullableOption<AutomaticRepliesStatus>;
11854}
11855export interface CalendarSharingMessageAction {
11856 action?: NullableOption<CalendarSharingAction>;
11857 actionType?: NullableOption<CalendarSharingActionType>;
11858 importance?: NullableOption<CalendarSharingActionImportance>;
11859}
11860export interface ConvertIdResult {
11861 /**
11862 * An error object indicating the reason for the conversion failure. This value is not present if the conversion
11863 * succeeded.
11864 */
11865 errorDetails?: NullableOption<GenericError>;
11866 // The identifier that was converted. This value is the original, un-converted identifier.
11867 sourceId?: NullableOption<string>;
11868 // The converted identifier. This value is not present if the conversion failed.
11869 targetId?: NullableOption<string>;
11870}
11871export interface GenericError {
11872 // The error code.
11873 code?: NullableOption<string>;
11874 // The error message.
11875 message?: NullableOption<string>;
11876}
11877export interface TimeZoneBase {
11878 /**
11879 * The name of a time zone. It can be a standard time zone name such as 'Hawaii-Aleutian Standard Time', or 'Customized
11880 * Time Zone' for a custom time zone.
11881 */
11882 name?: NullableOption<string>;
11883}
11884export interface CustomTimeZone extends TimeZoneBase {
11885 /**
11886 * The time offset of the time zone from Coordinated Universal Time (UTC). This value is in minutes. Time zones that are
11887 * ahead of UTC have a positive offset; time zones that are behind UTC have a negative offset.
11888 */
11889 bias?: NullableOption<number>;
11890 // Specifies when the time zone switches from standard time to daylight saving time.
11891 daylightOffset?: NullableOption<DaylightTimeZoneOffset>;
11892 // Specifies when the time zone switches from daylight saving time to standard time.
11893 standardOffset?: NullableOption<StandardTimeZoneOffset>;
11894}
11895export interface StandardTimeZoneOffset {
11896 // Represents the nth occurrence of the day of week that the transition from daylight saving time to standard time occurs.
11897 dayOccurrence?: NullableOption<number>;
11898 // Represents the day of the week when the transition from daylight saving time to standard time.
11899 dayOfWeek?: NullableOption<DayOfWeek>;
11900 // Represents the month of the year when the transition from daylight saving time to standard time occurs.
11901 month?: NullableOption<number>;
11902 // Represents the time of day when the transition from daylight saving time to standard time occurs.
11903 time?: NullableOption<string>;
11904 /**
11905 * Represents how frequently in terms of years the change from daylight saving time to standard time occurs. For example,
11906 * a value of 0 means every year.
11907 */
11908 year?: NullableOption<number>;
11909}
11910export interface DaylightTimeZoneOffset extends StandardTimeZoneOffset {
11911 // The time offset from Coordinated Universal Time (UTC) for daylight saving time. This value is in minutes.
11912 daylightBias?: NullableOption<number>;
11913}
11914export interface FollowupFlag {
11915 // The date and time that the follow-up was finished.
11916 completedDateTime?: NullableOption<DateTimeTimeZone>;
11917 /**
11918 * The date and time that the follow up is to be finished. Note: To set the due date, you must also specify the
11919 * startDateTime; otherwise, you will get a 400 Bad Request response.
11920 */
11921 dueDateTime?: NullableOption<DateTimeTimeZone>;
11922 // The status for follow-up for an item. Possible values are notFlagged, complete, and flagged.
11923 flagStatus?: NullableOption<FollowupFlagStatus>;
11924 // The date and time that the follow-up is to begin.
11925 startDateTime?: NullableOption<DateTimeTimeZone>;
11926}
11927export interface FreeBusyError {
11928 // Describes the error.
11929 message?: NullableOption<string>;
11930 // The response code from querying for the availability of the user, distribution list, or resource.
11931 responseCode?: NullableOption<string>;
11932}
11933// tslint:disable-next-line: interface-name
11934export interface InternetMessageHeader {
11935 // Represents the key in a key-value pair.
11936 name?: NullableOption<string>;
11937 // The value in a key-value pair.
11938 value?: NullableOption<string>;
11939}
11940// tslint:disable-next-line: interface-name
11941export interface ItemBody {
11942 // The content of the item.
11943 content?: NullableOption<string>;
11944 // The type of the content. Possible values are text and html.
11945 contentType?: NullableOption<BodyType>;
11946}
11947export interface WorkingHours {
11948 // The days of the week on which the user works.
11949 daysOfWeek?: NullableOption<DayOfWeek[]>;
11950 // The time of the day that the user stops working.
11951 endTime?: NullableOption<string>;
11952 // The time of the day that the user starts working.
11953 startTime?: NullableOption<string>;
11954 // The time zone to which the working hours apply.
11955 timeZone?: NullableOption<TimeZoneBase>;
11956}
11957export interface MailTips {
11958 // Mail tips for automatic reply if it has been set up by the recipient.
11959 automaticReplies?: NullableOption<AutomaticRepliesMailTips>;
11960 // A custom mail tip that can be set on the recipient's mailbox.
11961 customMailTip?: NullableOption<string>;
11962 /**
11963 * Whether the recipient's mailbox is restricted, for example, accepting messages from only a predefined list of senders,
11964 * rejecting messages from a predefined list of senders, or accepting messages from only authenticated senders.
11965 */
11966 deliveryRestricted?: NullableOption<boolean>;
11967 // The email address of the recipient to get mailtips for.
11968 emailAddress?: NullableOption<EmailAddress>;
11969 // Errors that occur during the getMailTips action.
11970 error?: NullableOption<MailTipsError>;
11971 // The number of external members if the recipient is a distribution list.
11972 externalMemberCount?: NullableOption<number>;
11973 /**
11974 * Whether sending messages to the recipient requires approval. For example, if the recipient is a large distribution list
11975 * and a moderator has been set up to approve messages sent to that distribution list, or if sending messages to a
11976 * recipient requires approval of the recipient's manager.
11977 */
11978 isModerated?: NullableOption<boolean>;
11979 // The mailbox full status of the recipient.
11980 mailboxFull?: NullableOption<boolean>;
11981 // The maximum message size that has been configured for the recipient's organization or mailbox.
11982 maxMessageSize?: NullableOption<number>;
11983 /**
11984 * The scope of the recipient. Possible values are: none, internal, external, externalPartner, externalNonParther. For
11985 * example, an administrator can set another organization to be its 'partner'. The scope is useful if an administrator
11986 * wants certain mailtips to be accessible to certain scopes. It's also useful to senders to inform them that their
11987 * message may leave the organization, helping them make the correct decisions about wording, tone and content.
11988 */
11989 recipientScope?: NullableOption<RecipientScopeType>;
11990 // Recipients suggested based on previous contexts where they appear in the same message.
11991 recipientSuggestions?: NullableOption<Recipient[]>;
11992 // The number of members if the recipient is a distribution list.
11993 totalMemberCount?: NullableOption<number>;
11994}
11995export interface MailTipsError {
11996 // The error code.
11997 code?: NullableOption<string>;
11998 // The error message.
11999 message?: NullableOption<string>;
12000}
12001export interface MessageRuleActions {
12002 // A list of categories to be assigned to a message.
12003 assignCategories?: NullableOption<string[]>;
12004 // The ID of a folder that a message is to be copied to.
12005 copyToFolder?: NullableOption<string>;
12006 // Indicates whether a message should be moved to the Deleted Items folder.
12007 delete?: NullableOption<boolean>;
12008 // The email addresses of the recipients to which a message should be forwarded as an attachment.
12009 forwardAsAttachmentTo?: NullableOption<Recipient[]>;
12010 // The email addresses of the recipients to which a message should be forwarded.
12011 forwardTo?: NullableOption<Recipient[]>;
12012 // Indicates whether a message should be marked as read.
12013 markAsRead?: NullableOption<boolean>;
12014 // Sets the importance of the message, which can be: low, normal, high.
12015 markImportance?: NullableOption<Importance>;
12016 // The ID of the folder that a message will be moved to.
12017 moveToFolder?: NullableOption<string>;
12018 // Indicates whether a message should be permanently deleted and not saved to the Deleted Items folder.
12019 permanentDelete?: NullableOption<boolean>;
12020 // The email address to which a message should be redirected.
12021 redirectTo?: NullableOption<Recipient[]>;
12022 // Indicates whether subsequent rules should be evaluated.
12023 stopProcessingRules?: NullableOption<boolean>;
12024}
12025export interface MessageRulePredicates {
12026 /**
12027 * Represents the strings that should appear in the body of an incoming message in order for the condition or exception to
12028 * apply.
12029 */
12030 bodyContains?: NullableOption<string[]>;
12031 /**
12032 * Represents the strings that should appear in the body or subject of an incoming message in order for the condition or
12033 * exception to apply.
12034 */
12035 bodyOrSubjectContains?: NullableOption<string[]>;
12036 /**
12037 * Represents the categories that an incoming message should be labeled with in order for the condition or exception to
12038 * apply.
12039 */
12040 categories?: NullableOption<string[]>;
12041 // Represents the specific sender email addresses of an incoming message in order for the condition or exception to apply.
12042 fromAddresses?: NullableOption<Recipient[]>;
12043 // Indicates whether an incoming message must have attachments in order for the condition or exception to apply.
12044 hasAttachments?: NullableOption<boolean>;
12045 /**
12046 * Represents the strings that appear in the headers of an incoming message in order for the condition or exception to
12047 * apply.
12048 */
12049 headerContains?: NullableOption<string[]>;
12050 /**
12051 * The importance that is stamped on an incoming message in order for the condition or exception to apply: low, normal,
12052 * high.
12053 */
12054 importance?: NullableOption<Importance>;
12055 // Indicates whether an incoming message must be an approval request in order for the condition or exception to apply.
12056 isApprovalRequest?: NullableOption<boolean>;
12057 // Indicates whether an incoming message must be automatically forwarded in order for the condition or exception to apply.
12058 isAutomaticForward?: NullableOption<boolean>;
12059 // Indicates whether an incoming message must be an auto reply in order for the condition or exception to apply.
12060 isAutomaticReply?: NullableOption<boolean>;
12061 // Indicates whether an incoming message must be encrypted in order for the condition or exception to apply.
12062 isEncrypted?: NullableOption<boolean>;
12063 // Indicates whether an incoming message must be a meeting request in order for the condition or exception to apply.
12064 isMeetingRequest?: NullableOption<boolean>;
12065 // Indicates whether an incoming message must be a meeting response in order for the condition or exception to apply.
12066 isMeetingResponse?: NullableOption<boolean>;
12067 // Indicates whether an incoming message must be a non-delivery report in order for the condition or exception to apply.
12068 isNonDeliveryReport?: NullableOption<boolean>;
12069 /**
12070 * Indicates whether an incoming message must be permission controlled (RMS-protected) in order for the condition or
12071 * exception to apply.
12072 */
12073 isPermissionControlled?: NullableOption<boolean>;
12074 // Indicates whether an incoming message must be a read receipt in order for the condition or exception to apply.
12075 isReadReceipt?: NullableOption<boolean>;
12076 // Indicates whether an incoming message must be S/MIME-signed in order for the condition or exception to apply.
12077 isSigned?: NullableOption<boolean>;
12078 // Indicates whether an incoming message must be a voice mail in order for the condition or exception to apply.
12079 isVoicemail?: NullableOption<boolean>;
12080 /**
12081 * Represents the flag-for-action value that appears on an incoming message in order for the condition or exception to
12082 * apply. The possible values are: any, call, doNotForward, followUp, fyi, forward, noResponseNecessary, read, reply,
12083 * replyToAll, review.
12084 */
12085 messageActionFlag?: NullableOption<MessageActionFlag>;
12086 /**
12087 * Indicates whether the owner of the mailbox must not be a recipient of an incoming message in order for the condition or
12088 * exception to apply.
12089 */
12090 notSentToMe?: NullableOption<boolean>;
12091 /**
12092 * Represents the strings that appear in either the toRecipients or ccRecipients properties of an incoming message in
12093 * order for the condition or exception to apply.
12094 */
12095 recipientContains?: NullableOption<string[]>;
12096 /**
12097 * Represents the strings that appear in the from property of an incoming message in order for the condition or exception
12098 * to apply.
12099 */
12100 senderContains?: NullableOption<string[]>;
12101 /**
12102 * Represents the sensitivity level that must be stamped on an incoming message in order for the condition or exception to
12103 * apply. The possible values are: normal, personal, private, confidential.
12104 */
12105 sensitivity?: NullableOption<Sensitivity>;
12106 /**
12107 * Indicates whether the owner of the mailbox must be in the ccRecipients property of an incoming message in order for the
12108 * condition or exception to apply.
12109 */
12110 sentCcMe?: NullableOption<boolean>;
12111 /**
12112 * Indicates whether the owner of the mailbox must be the only recipient in an incoming message in order for the condition
12113 * or exception to apply.
12114 */
12115 sentOnlyToMe?: NullableOption<boolean>;
12116 /**
12117 * Represents the email addresses that an incoming message must have been sent to in order for the condition or exception
12118 * to apply.
12119 */
12120 sentToAddresses?: NullableOption<Recipient[]>;
12121 /**
12122 * Indicates whether the owner of the mailbox must be in the toRecipients property of an incoming message in order for the
12123 * condition or exception to apply.
12124 */
12125 sentToMe?: NullableOption<boolean>;
12126 /**
12127 * Indicates whether the owner of the mailbox must be in either a toRecipients or ccRecipients property of an incoming
12128 * message in order for the condition or exception to apply.
12129 */
12130 sentToOrCcMe?: NullableOption<boolean>;
12131 /**
12132 * Represents the strings that appear in the subject of an incoming message in order for the condition or exception to
12133 * apply.
12134 */
12135 subjectContains?: NullableOption<string[]>;
12136 /**
12137 * Represents the minimum and maximum sizes (in kilobytes) that an incoming message must fall in between in order for the
12138 * condition or exception to apply.
12139 */
12140 withinSizeRange?: NullableOption<SizeRange>;
12141}
12142export interface SizeRange {
12143 // The maximum size (in kilobytes) that an incoming message must have in order for a condition or exception to apply.
12144 maximumSize?: NullableOption<number>;
12145 // The minimum size (in kilobytes) that an incoming message must have in order for a condition or exception to apply.
12146 minimumSize?: NullableOption<number>;
12147}
12148export interface OnlineMeetingInfo {
12149 // The ID of the conference.
12150 conferenceId?: NullableOption<string>;
12151 /**
12152 * The external link that launches the online meeting. This is a URL that clients will launch into a browser and will
12153 * redirect the user to join the meeting.
12154 */
12155 joinUrl?: NullableOption<string>;
12156 // All of the phone numbers associated with this conference.
12157 phones?: NullableOption<Phone[]>;
12158 // The pre-formatted quickdial for this call.
12159 quickDial?: NullableOption<string>;
12160 // The toll free numbers that can be used to join the conference.
12161 tollFreeNumbers?: NullableOption<string[]>;
12162 // The toll number that can be used to join the conference.
12163 tollNumber?: NullableOption<string>;
12164}
12165export interface PatternedRecurrence {
12166 // The frequency of an event.
12167 pattern?: NullableOption<RecurrencePattern>;
12168 // The duration of an event.
12169 range?: NullableOption<RecurrenceRange>;
12170}
12171export interface RecurrencePattern {
12172 // The day of the month on which the event occurs. Required if type is absoluteMonthly or absoluteYearly.
12173 dayOfMonth?: number;
12174 /**
12175 * A collection of the days of the week on which the event occurs. Possible values are: sunday, monday, tuesday,
12176 * wednesday, thursday, friday, saturday. If type is relativeMonthly or relativeYearly, and daysOfWeek specifies more than
12177 * one day, the event falls on the first day that satisfies the pattern. Required if type is weekly, relativeMonthly, or
12178 * relativeYearly.
12179 */
12180 daysOfWeek?: NullableOption<DayOfWeek[]>;
12181 /**
12182 * The first day of the week. Possible values are: sunday, monday, tuesday, wednesday, thursday, friday, saturday. Default
12183 * is sunday. Required if type is weekly.
12184 */
12185 firstDayOfWeek?: NullableOption<DayOfWeek>;
12186 /**
12187 * Specifies on which instance of the allowed days specified in daysOfsWeek the event occurs, counted from the first
12188 * instance in the month. Possible values are: first, second, third, fourth, last. Default is first. Optional and used if
12189 * type is relativeMonthly or relativeYearly.
12190 */
12191 index?: NullableOption<WeekIndex>;
12192 /**
12193 * The number of units between occurrences, where units can be in days, weeks, months, or years, depending on the type.
12194 * Required.
12195 */
12196 interval?: number;
12197 // The month in which the event occurs. This is a number from 1 to 12.
12198 month?: number;
12199 // The recurrence pattern type: daily, weekly, absoluteMonthly, relativeMonthly, absoluteYearly, relativeYearly. Required.
12200 type?: NullableOption<RecurrencePatternType>;
12201}
12202export interface RecurrenceRange {
12203 /**
12204 * The date to stop applying the recurrence pattern. Depending on the recurrence pattern of the event, the last occurrence
12205 * of the meeting may not be this date. Required if type is endDate.
12206 */
12207 endDate?: NullableOption<string>;
12208 // The number of times to repeat the event. Required and must be positive if type is numbered.
12209 numberOfOccurrences?: number;
12210 // Time zone for the startDate and endDate properties. Optional. If not specified, the time zone of the event is used.
12211 recurrenceTimeZone?: NullableOption<string>;
12212 /**
12213 * The date to start applying the recurrence pattern. The first occurrence of the meeting may be this date or later,
12214 * depending on the recurrence pattern of the event. Must be the same value as the start property of the recurring event.
12215 * Required.
12216 */
12217 startDate?: NullableOption<string>;
12218 // The recurrence range. Possible values are: endDate, noEnd, numbered. Required.
12219 type?: NullableOption<RecurrenceRangeType>;
12220}
12221export interface PersonType {
12222 // The type of data source, such as Person.
12223 class?: NullableOption<string>;
12224 // The secondary type of data source, such as OrganizationUser.
12225 subclass?: NullableOption<string>;
12226}
12227export interface Reminder {
12228 /**
12229 * Identifies the version of the reminder. Every time the reminder is changed, changeKey changes as well. This allows
12230 * Exchange to apply changes to the correct version of the object.
12231 */
12232 changeKey?: NullableOption<string>;
12233 // The date, time and time zone that the event ends.
12234 eventEndTime?: NullableOption<DateTimeTimeZone>;
12235 // The unique ID of the event. Read only.
12236 eventId?: NullableOption<string>;
12237 // The location of the event.
12238 eventLocation?: NullableOption<Location>;
12239 // The date, time, and time zone that the event starts.
12240 eventStartTime?: NullableOption<DateTimeTimeZone>;
12241 // The text of the event's subject line.
12242 eventSubject?: NullableOption<string>;
12243 /**
12244 * The URL to open the event in Outlook on the web.The event will open in the browser if you are logged in to your mailbox
12245 * via Outlook on the web. You will be prompted to login if you are not already logged in with the browser.This URL cannot
12246 * be accessed from within an iFrame.
12247 */
12248 eventWebLink?: NullableOption<string>;
12249 // The date, time, and time zone that the reminder is set to occur.
12250 reminderFireTime?: NullableOption<DateTimeTimeZone>;
12251}
12252export interface ScheduleInformation {
12253 /**
12254 * Represents a merged view of availability of all the items in scheduleItems. The view consists of time slots.
12255 * Availability during each time slot is indicated with: 0= free, 1= tentative, 2= busy, 3= out of office, 4= working
12256 * elsewhere.
12257 */
12258 availabilityView?: NullableOption<string>;
12259 // Error information from attempting to get the availability of the user, distribution list, or resource.
12260 error?: NullableOption<FreeBusyError>;
12261 // An SMTP address of the user, distribution list, or resource, identifying an instance of scheduleInformation.
12262 scheduleId?: NullableOption<string>;
12263 // Contains the items that describe the availability of the user or resource.
12264 scheduleItems?: NullableOption<ScheduleItem[]>;
12265 /**
12266 * The days of the week and hours in a specific time zone that the user works. These are set as part of the user's
12267 * mailboxSettings.
12268 */
12269 workingHours?: NullableOption<WorkingHours>;
12270}
12271export interface ScheduleItem {
12272 // The date, time, and time zone that the corresponding event ends.
12273 end?: NullableOption<DateTimeTimeZone>;
12274 // The sensitivity of the corresponding event. True if the event is marked private, false otherwise. Optional.
12275 isPrivate?: NullableOption<boolean>;
12276 // The location where the corresponding event is held or attended from. Optional.
12277 location?: NullableOption<string>;
12278 // The date, time, and time zone that the corresponding event starts.
12279 start?: NullableOption<DateTimeTimeZone>;
12280 /**
12281 * The availability status of the user or resource during the corresponding event. The possible values are: free,
12282 * tentative, busy, oof, workingElsewhere, unknown.
12283 */
12284 status?: NullableOption<FreeBusyStatus>;
12285 // The corresponding event's subject line. Optional.
12286 subject?: NullableOption<string>;
12287}
12288export interface ScoredEmailAddress {
12289 // The email address.
12290 address?: NullableOption<string>;
12291 itemId?: NullableOption<string>;
12292 /**
12293 * The relevance score of the email address. A relevance score is used as a sort key, in relation to the other returned
12294 * results. A higher relevance score value corresponds to a more relevant result. Relevance is determined by the user’s
12295 * communication and collaboration patterns and business relationships.
12296 */
12297 relevanceScore?: NullableOption<number>;
12298 selectionLikelihood?: NullableOption<SelectionLikelihoodInfo>;
12299}
12300export interface TimeZoneInformation {
12301 // An identifier for the time zone.
12302 alias?: NullableOption<string>;
12303 // A display string that represents the time zone.
12304 displayName?: NullableOption<string>;
12305}
12306export interface UploadSession {
12307 /**
12308 * The date and time in UTC that the upload session will expire. The complete file must be uploaded before this expiration
12309 * time is reached.
12310 */
12311 expirationDateTime?: NullableOption<string>;
12312 /**
12313 * When uploading files to document libraries, this is a collection of byte ranges that the server is missing for the
12314 * file. These ranges are zero-indexed and of the format, '{start}-{end}' (e.g. '0-26' to indicate the first 27 bytes of
12315 * the file). When uploading files as Outlook attachments, instead of a collection of ranges, this property always
12316 * indicates a single value '{start}', the location in the file where the next upload should begin.
12317 */
12318 nextExpectedRanges?: NullableOption<string[]>;
12319 // The URL endpoint that accepts PUT requests for byte ranges of the file.
12320 uploadUrl?: NullableOption<string>;
12321}
12322export interface Website {
12323 // The URL of the website.
12324 address?: NullableOption<string>;
12325 // The display name of the web site.
12326 displayName?: NullableOption<string>;
12327 // Possible values are: other, home, work, blog, profile.
12328 type?: NullableOption<WebsiteType>;
12329}
12330// tslint:disable-next-line: no-empty-interface
12331export interface AccessAction {}
12332// tslint:disable-next-line: no-empty-interface
12333export interface BooleanColumn {}
12334export interface CalculatedColumn {
12335 // For dateTime output types, the format of the value. Must be one of dateOnly or dateTime.
12336 format?: NullableOption<string>;
12337 // The formula used to compute the value for this column.
12338 formula?: NullableOption<string>;
12339 // The output type used to format values in this column. Must be one of boolean, currency, dateTime, number, or text.
12340 outputType?: NullableOption<string>;
12341}
12342export interface ChoiceColumn {
12343 // If true, allows custom values that aren't in the configured choices.
12344 allowTextEntry?: NullableOption<boolean>;
12345 // The list of values available for this column.
12346 choices?: NullableOption<string[]>;
12347 // How the choices are to be presented in the UX. Must be one of checkBoxes, dropDownMenu, or radioButtons
12348 displayAs?: NullableOption<string>;
12349}
12350export interface ContentTypeInfo {
12351 // The id of the content type.
12352 id?: NullableOption<string>;
12353 // The name of the content type.
12354 name?: NullableOption<string>;
12355}
12356export interface ContentTypeOrder {
12357 // Whether this is the default Content Type
12358 default?: NullableOption<boolean>;
12359 // Specifies the position in which the Content Type appears in the selection UI.
12360 position?: NullableOption<number>;
12361}
12362export interface CurrencyColumn {
12363 // Specifies the locale from which to infer the currency symbol.
12364 locale?: NullableOption<string>;
12365}
12366export interface DateTimeColumn {
12367 /**
12368 * How the value should be presented in the UX. Must be one of default, friendly, or standard. See below for more details.
12369 * If unspecified, treated as default.
12370 */
12371 displayAs?: NullableOption<string>;
12372 // Indicates whether the value should be presented as a date only or a date and time. Must be one of dateOnly or dateTime
12373 format?: NullableOption<string>;
12374}
12375export interface DefaultColumnValue {
12376 // The formula used to compute the default value for this column.
12377 formula?: NullableOption<string>;
12378 // The direct value to use as the default value for this column.
12379 value?: NullableOption<string>;
12380}
12381export interface DriveItemUploadableProperties {
12382 // Provides a user-visible description of the item. Read-write. Only on OneDrive Personal.
12383 description?: NullableOption<string>;
12384 // Provides an expected file size to perform a quota check prior to upload. Only on OneDrive Personal.
12385 fileSize?: NullableOption<number>;
12386 // File system information on client. Read-write.
12387 fileSystemInfo?: NullableOption<FileSystemInfo>;
12388 // The name of the item (filename and extension). Read-write.
12389 name?: NullableOption<string>;
12390}
12391export interface DriveRecipient {
12392 // The alias of the domain object, for cases where an email address is unavailable (e.g. security groups).
12393 alias?: NullableOption<string>;
12394 // The email address for the recipient, if the recipient has an associated email address.
12395 email?: NullableOption<string>;
12396 // The unique identifier for the recipient in the directory.
12397 objectId?: NullableOption<string>;
12398}
12399export interface Hashes {
12400 // The CRC32 value of the file (if available). Read-only.
12401 crc32Hash?: NullableOption<string>;
12402 /**
12403 * A proprietary hash of the file that can be used to determine if the contents of the file have changed (if available).
12404 * Read-only.
12405 */
12406 quickXorHash?: NullableOption<string>;
12407 // SHA1 hash for the contents of the file (if available). Read-only.
12408 sha1Hash?: NullableOption<string>;
12409 // SHA256 hash for the contents of the file (if available). Read-only.
12410 sha256Hash?: NullableOption<string>;
12411}
12412export interface FolderView {
12413 // The method by which the folder should be sorted.
12414 sortBy?: NullableOption<string>;
12415 // If true, indicates that items should be sorted in descending order. Otherwise, items should be sorted ascending.
12416 sortOrder?: NullableOption<string>;
12417 // The type of view that should be used to represent the folder.
12418 viewType?: NullableOption<string>;
12419}
12420// tslint:disable-next-line: no-empty-interface
12421export interface GeolocationColumn {}
12422// tslint:disable-next-line: interface-name
12423export interface IncompleteData {
12424 // The service does not have source data before the specified time.
12425 missingDataBeforeDateTime?: NullableOption<string>;
12426 // Some data was not recorded due to excessive activity.
12427 wasThrottled?: NullableOption<boolean>;
12428}
12429// tslint:disable-next-line: interface-name
12430export interface ItemActionStat {
12431 // The number of times the action took place. Read-only.
12432 actionCount?: NullableOption<number>;
12433 // The number of distinct actors that performed the action. Read-only.
12434 actorCount?: NullableOption<number>;
12435}
12436// tslint:disable-next-line: interface-name
12437export interface ItemPreviewInfo {
12438 getUrl?: NullableOption<string>;
12439 postParameters?: NullableOption<string>;
12440 postUrl?: NullableOption<string>;
12441}
12442// tslint:disable-next-line: interface-name
12443export interface ItemReference {
12444 // Unique identifier of the drive instance that contains the item. Read-only.
12445 driveId?: NullableOption<string>;
12446 // Identifies the type of drive. See [drive][] resource for values.
12447 driveType?: NullableOption<string>;
12448 // Unique identifier of the item in the drive. Read-only.
12449 id?: NullableOption<string>;
12450 // The name of the item being referenced. Read-only.
12451 name?: NullableOption<string>;
12452 // Path that can be used to navigate to the item. Read-only.
12453 path?: NullableOption<string>;
12454 // A unique identifier for a shared resource that can be accessed via the [Shares][] API.
12455 shareId?: NullableOption<string>;
12456 // Returns identifiers useful for SharePoint REST compatibility. Read-only.
12457 sharepointIds?: NullableOption<SharepointIds>;
12458 /**
12459 * For OneDrive for Business and SharePoint, this property represents the ID of the site that contains the parent document
12460 * library of the driveItem resource. The value is the same as the id property of that [site][] resource. It is an opaque
12461 * string that consists of three identifiers of the site. For OneDrive, this property is not populated.
12462 */
12463 siteId?: NullableOption<string>;
12464}
12465export interface LookupColumn {
12466 // Indicates whether multiple values can be selected from the source.
12467 allowMultipleValues?: NullableOption<boolean>;
12468 // Indicates whether values in the column should be able to exceed the standard limit of 255 characters.
12469 allowUnlimitedLength?: NullableOption<boolean>;
12470 // The name of the lookup source column.
12471 columnName?: NullableOption<string>;
12472 // The unique identifier of the lookup source list.
12473 listId?: NullableOption<string>;
12474 /**
12475 * If specified, this column is a secondary lookup, pulling an additional field from the list item looked up by the
12476 * primary lookup. Use the list item looked up by the primary as the source for the column named here.
12477 */
12478 primaryLookupColumnId?: NullableOption<string>;
12479}
12480export interface NumberColumn {
12481 // How many decimal places to display. See below for information about the possible values.
12482 decimalPlaces?: NullableOption<string>;
12483 // How the value should be presented in the UX. Must be one of number or percentage. If unspecified, treated as number.
12484 displayAs?: NullableOption<string>;
12485 // The maximum permitted value.
12486 maximum?: NullableOption<number>;
12487 // The minimum permitted value.
12488 minimum?: NullableOption<number>;
12489}
12490export interface PendingContentUpdate {
12491 // Date and time the pending binary operation was queued in UTC time. Read-only.
12492 queuedDateTime?: NullableOption<string>;
12493}
12494export interface PersonOrGroupColumn {
12495 // Indicates whether multiple values can be selected from the source.
12496 allowMultipleSelection?: NullableOption<boolean>;
12497 // Whether to allow selection of people only, or people and groups. Must be one of peopleAndGroups or peopleOnly.
12498 chooseFromType?: NullableOption<string>;
12499 // How to display the information about the person or group chosen. See below.
12500 displayAs?: NullableOption<string>;
12501}
12502export interface PublicErrorDetail {
12503 // The error code.
12504 code?: NullableOption<string>;
12505 // The error message.
12506 message?: NullableOption<string>;
12507 // The target of the error.
12508 target?: NullableOption<string>;
12509}
12510export interface PublicInnerError {
12511 // The error code.
12512 code?: NullableOption<string>;
12513 // A collection of error details.
12514 details?: NullableOption<PublicErrorDetail[]>;
12515 // The error message.
12516 message?: NullableOption<string>;
12517 // The target of the error.
12518 target?: NullableOption<string>;
12519}
12520export interface StoragePlanInformation {
12521 // Indicates if there are higher storage quota plans available. Read-only.
12522 upgradeAvailable?: NullableOption<boolean>;
12523}
12524export interface SharingInvitation {
12525 // The email address provided for the recipient of the sharing invitation. Read-only.
12526 email?: NullableOption<string>;
12527 /**
12528 * Provides information about who sent the invitation that created this permission, if that information is available.
12529 * Read-only.
12530 */
12531 invitedBy?: NullableOption<IdentitySet>;
12532 redeemedBy?: NullableOption<string>;
12533 // If true the recipient of the invitation needs to sign in in order to access the shared item. Read-only.
12534 signInRequired?: NullableOption<boolean>;
12535}
12536export interface SharingLink {
12537 // The app the link is associated with.
12538 application?: NullableOption<Identity>;
12539 /**
12540 * If true then the user can only use this link to view the item on the web, and cannot use it to download the contents of
12541 * the item. Only for OneDrive for Business and SharePoint.
12542 */
12543 preventsDownload?: NullableOption<boolean>;
12544 /**
12545 * The scope of the link represented by this permission. Value anonymous indicates the link is usable by anyone,
12546 * organization indicates the link is only usable for users signed into the same tenant.
12547 */
12548 scope?: NullableOption<string>;
12549 // The type of the link created.
12550 type?: NullableOption<string>;
12551 /**
12552 * For embed links, this property contains the HTML code for an &amp;lt;iframe&amp;gt; element that will embed the item in
12553 * a webpage.
12554 */
12555 webHtml?: NullableOption<string>;
12556 // A URL that opens the item in the browser on the OneDrive website.
12557 webUrl?: NullableOption<string>;
12558}
12559export interface TextColumn {
12560 // Whether to allow multiple lines of text.
12561 allowMultipleLines?: NullableOption<boolean>;
12562 // Whether updates to this column should replace existing text, or append to it.
12563 appendChangesToExistingText?: NullableOption<boolean>;
12564 // The size of the text box.
12565 linesForEditing?: NullableOption<number>;
12566 // The maximum number of characters for the value.
12567 maxLength?: NullableOption<number>;
12568 // The type of text being stored. Must be one of plain or richText
12569 textType?: NullableOption<string>;
12570}
12571export interface Thumbnail {
12572 // The content stream for the thumbnail.
12573 content?: NullableOption<any>;
12574 // The height of the thumbnail, in pixels.
12575 height?: NullableOption<number>;
12576 /**
12577 * The unique identifier of the item that provided the thumbnail. This is only available when a folder thumbnail is
12578 * requested.
12579 */
12580 sourceItemId?: NullableOption<string>;
12581 // The URL used to fetch the thumbnail content.
12582 url?: NullableOption<string>;
12583 // The width of the thumbnail, in pixels.
12584 width?: NullableOption<number>;
12585}
12586export interface ExtensionSchemaProperty {
12587 // The name of the strongly typed property defined as part of a schema extension.
12588 name?: NullableOption<string>;
12589 /**
12590 * The type of the property that is defined as part of a schema extension. Allowed values are Binary, Boolean, DateTime,
12591 * Integer or String. See the table below for more details.
12592 */
12593 type?: NullableOption<string>;
12594}
12595export interface ConditionalAccessSessionControl {
12596 // Specifies whether the session control is enabled.
12597 isEnabled?: NullableOption<boolean>;
12598}
12599// tslint:disable-next-line: no-empty-interface
12600export interface ApplicationEnforcedRestrictionsSessionControl extends ConditionalAccessSessionControl {}
12601export interface CloudAppSecuritySessionControl extends ConditionalAccessSessionControl {
12602 /**
12603 * Possible values are: mcasConfigured, monitorOnly, blockDownloads. Learn more about these values here:
12604 * https://docs.microsoft.com/cloud-app-security/proxy-deployment-aad#step-1-create-an-azure-ad-conditional-access-test-policy-
12605 */
12606 cloudAppSecurityType?: NullableOption<CloudAppSecuritySessionControlType>;
12607}
12608export interface ConditionalAccessApplications {
12609 // The list of application IDs explicitly excluded from the policy.
12610 excludeApplications?: string[];
12611 /**
12612 * The list of application IDs the policy applies to, unless explicitly excluded (in excludeApplications). Can also be set
12613 * to All.
12614 */
12615 includeApplications?: string[];
12616 // User actions to include. Supported values are urn:user:registersecurityinfo and urn:user:registerdevice
12617 includeUserActions?: string[];
12618}
12619export interface ConditionalAccessConditionSet {
12620 // Applications and user actions included in and excluded from the policy. Required.
12621 applications?: NullableOption<ConditionalAccessApplications>;
12622 /**
12623 * Client application types included in the policy. Possible values are: all, browser, mobileAppsAndDesktopClients,
12624 * exchangeActiveSync, easSupported, other.
12625 */
12626 clientAppTypes?: ConditionalAccessClientApp[];
12627 // Locations included in and excluded from the policy.
12628 locations?: NullableOption<ConditionalAccessLocations>;
12629 // Platforms included in and excluded from the policy.
12630 platforms?: NullableOption<ConditionalAccessPlatforms>;
12631 // Sign-in risk levels included in the policy. Possible values are: low, medium, high, none.
12632 signInRiskLevels?: RiskLevel[];
12633 // User risk levels included in the policy. Possible values are: low, medium, high, none.
12634 userRiskLevels?: RiskLevel[];
12635 // Users, groups, and roles included in and excluded from the policy. Required.
12636 users?: ConditionalAccessUsers;
12637}
12638export interface ConditionalAccessLocations {
12639 // Location IDs excluded from scope of policy.
12640 excludeLocations?: string[];
12641 // Location IDs in scope of policy unless explicitly excluded, All, or AllTrusted.
12642 includeLocations?: string[];
12643}
12644export interface ConditionalAccessPlatforms {
12645 // Possible values are: android, iOS, windows, windowsPhone, macOS.
12646 excludePlatforms?: ConditionalAccessDevicePlatform[];
12647 // Possible values are: android, iOS, windows, windowsPhone, macOS, all.
12648 includePlatforms?: ConditionalAccessDevicePlatform[];
12649}
12650export interface ConditionalAccessUsers {
12651 // Group IDs excluded from scope of policy.
12652 excludeGroups?: string[];
12653 // Role IDs excluded from scope of policy.
12654 excludeRoles?: string[];
12655 // User IDs excluded from scope of policy and/or GuestsOrExternalUsers.
12656 excludeUsers?: string[];
12657 // Group IDs in scope of policy unless explicitly excluded, or All.
12658 includeGroups?: string[];
12659 // Role IDs in scope of policy unless explicitly excluded, or All.
12660 includeRoles?: string[];
12661 // User IDs in scope of policy unless explicitly excluded, or None or All or GuestsOrExternalUsers.
12662 includeUsers?: string[];
12663}
12664export interface ConditionalAccessGrantControls {
12665 /**
12666 * List of values of built-in controls required by the policy. Possible values: block, mfa, compliantDevice,
12667 * domainJoinedDevice, approvedApplication, compliantApplication, passwordChange.
12668 */
12669 builtInControls?: ConditionalAccessGrantControl[];
12670 /**
12671 * List of custom controls IDs required by the policy. Learn more about custom controls here:
12672 * https://docs.microsoft.com/azure/active-directory/conditional-access/controls#custom-controls-preview
12673 */
12674 customAuthenticationFactors?: string[];
12675 // Defines the relationship of the grant controls. Possible values: AND, OR.
12676 operator?: NullableOption<string>;
12677 // List of terms of use IDs required by the policy.
12678 termsOfUse?: string[];
12679}
12680export interface ConditionalAccessSessionControls {
12681 /**
12682 * Session control to enforce application restrictions. Only Exchange Online and Sharepoint Online support this session
12683 * control.
12684 */
12685 applicationEnforcedRestrictions?: NullableOption<ApplicationEnforcedRestrictionsSessionControl>;
12686 // Session control to apply cloud app security.
12687 cloudAppSecurity?: NullableOption<CloudAppSecuritySessionControl>;
12688 /**
12689 * Session control to define whether to persist cookies or not. All apps should be selected for this session control to
12690 * work correctly.
12691 */
12692 persistentBrowser?: NullableOption<PersistentBrowserSessionControl>;
12693 // Session control to enforce signin frequency.
12694 signInFrequency?: NullableOption<SignInFrequencySessionControl>;
12695}
12696export interface PersistentBrowserSessionControl extends ConditionalAccessSessionControl {
12697 // Possible values are: always, never.
12698 mode?: NullableOption<PersistentBrowserSessionMode>;
12699}
12700export interface SignInFrequencySessionControl extends ConditionalAccessSessionControl {
12701 // Possible values are: days, hours.
12702 type?: NullableOption<SigninFrequencyType>;
12703 // The number of days or hours.
12704 value?: NullableOption<number>;
12705}
12706// tslint:disable-next-line: interface-name no-empty-interface
12707export interface IpRange {}
12708// tslint:disable-next-line: interface-name
12709export interface IPv4CidrRange extends IpRange {
12710 // IPv4 address in CIDR notation
12711 cidrAddress?: string;
12712}
12713// tslint:disable-next-line: interface-name
12714export interface IPv6CidrRange extends IpRange {
12715 // IPv6 address in CIDR notation
12716 cidrAddress?: string;
12717}
12718// tslint:disable-next-line: no-empty-interface
12719export interface DeviceAndAppManagementAssignmentTarget {}
12720// tslint:disable-next-line: no-empty-interface
12721export interface AllDevicesAssignmentTarget extends DeviceAndAppManagementAssignmentTarget {}
12722// tslint:disable-next-line: no-empty-interface
12723export interface AllLicensedUsersAssignmentTarget extends DeviceAndAppManagementAssignmentTarget {}
12724export interface AndroidMinimumOperatingSystem {
12725 // Version 4.0 or later.
12726 v4_0?: boolean;
12727 // Version 4.0.3 or later.
12728 v4_0_3?: boolean;
12729 // Version 4.1 or later.
12730 v4_1?: boolean;
12731 // Version 4.2 or later.
12732 v4_2?: boolean;
12733 // Version 4.3 or later.
12734 v4_3?: boolean;
12735 // Version 4.4 or later.
12736 v4_4?: boolean;
12737 // Version 5.0 or later.
12738 v5_0?: boolean;
12739 // Version 5.1 or later.
12740 v5_1?: boolean;
12741}
12742export interface AppConfigurationSettingItem {
12743 // app configuration key.
12744 appConfigKey?: string;
12745 // app configuration key type. Possible values are: stringType, integerType, realType, booleanType, tokenType.
12746 appConfigKeyType?: MdmAppConfigKeyType;
12747 // app configuration key value.
12748 appConfigKeyValue?: string;
12749}
12750export interface GroupAssignmentTarget extends DeviceAndAppManagementAssignmentTarget {
12751 // The group Id that is the target of the assignment.
12752 groupId?: NullableOption<string>;
12753}
12754// tslint:disable-next-line: no-empty-interface
12755export interface ExclusionGroupAssignmentTarget extends GroupAssignmentTarget {}
12756export interface FileEncryptionInfo {
12757 // The key used to encrypt the file content.
12758 encryptionKey?: NullableOption<number>;
12759 // The file digest prior to encryption.
12760 fileDigest?: NullableOption<number>;
12761 // The file digest algorithm.
12762 fileDigestAlgorithm?: NullableOption<string>;
12763 // The initialization vector used for the encryption algorithm.
12764 initializationVector?: NullableOption<number>;
12765 // The hash of the encrypted file content + IV (content hash).
12766 mac?: NullableOption<number>;
12767 // The key used to get mac.
12768 macKey?: NullableOption<number>;
12769 // The the profile identifier.
12770 profileIdentifier?: NullableOption<string>;
12771}
12772// tslint:disable-next-line: interface-name
12773export interface IosDeviceType {
12774 // Whether the app should run on iPads.
12775 iPad?: boolean;
12776 // Whether the app should run on iPhones and iPods.
12777 iPhoneAndIPod?: boolean;
12778}
12779// tslint:disable-next-line: no-empty-interface
12780export interface MobileAppAssignmentSettings {}
12781// tslint:disable-next-line: interface-name
12782export interface IosLobAppAssignmentSettings extends MobileAppAssignmentSettings {
12783 // The VPN Configuration Id to apply for this app.
12784 vpnConfigurationId?: NullableOption<string>;
12785}
12786// tslint:disable-next-line: interface-name
12787export interface IosMinimumOperatingSystem {
12788 // Version 10.0 or later.
12789 v10_0?: boolean;
12790 // Version 11.0 or later.
12791 v11_0?: boolean;
12792 // Version 12.0 or later.
12793 v12_0?: boolean;
12794 // Version 13.0 or later.
12795 v13_0?: boolean;
12796 // Version 8.0 or later.
12797 v8_0?: boolean;
12798 // Version 9.0 or later.
12799 v9_0?: boolean;
12800}
12801// tslint:disable-next-line: interface-name
12802export interface IosStoreAppAssignmentSettings extends MobileAppAssignmentSettings {
12803 // The VPN Configuration Id to apply for this app.
12804 vpnConfigurationId?: NullableOption<string>;
12805}
12806// tslint:disable-next-line: interface-name
12807export interface IosVppAppAssignmentSettings extends MobileAppAssignmentSettings {
12808 // Whether or not to use device licensing.
12809 useDeviceLicensing?: boolean;
12810 // The VPN Configuration Id to apply for this app.
12811 vpnConfigurationId?: NullableOption<string>;
12812}
12813export interface MicrosoftStoreForBusinessAppAssignmentSettings extends MobileAppAssignmentSettings {
12814 // Whether or not to use device execution context for Microsoft Store for Business mobile app.
12815 useDeviceContext?: boolean;
12816}
12817export interface MimeContent {
12818 // Indicates the content mime type.
12819 type?: NullableOption<string>;
12820 // The byte array that contains the actual content.
12821 value?: NullableOption<number>;
12822}
12823export interface MobileAppInstallTimeSettings {
12824 // The time at which the app should be installed.
12825 deadlineDateTime?: NullableOption<string>;
12826 // The time at which the app should be available for installation.
12827 startDateTime?: NullableOption<string>;
12828 // Whether the local device time or UTC time should be used when determining the available and deadline times.
12829 useLocalTime?: boolean;
12830}
12831export interface VppLicensingType {
12832 // Whether the program supports the device licensing type.
12833 supportsDeviceLicensing?: boolean;
12834 // Whether the program supports the user licensing type.
12835 supportsUserLicensing?: boolean;
12836}
12837export interface Win32LobAppAssignmentSettings extends MobileAppAssignmentSettings {
12838 // The install time settings to apply for this app assignment.
12839 installTimeSettings?: NullableOption<MobileAppInstallTimeSettings>;
12840 // The notification status for this app assignment. Possible values are: showAll, showReboot, hideAll.
12841 notifications?: Win32LobAppNotification;
12842 // The reboot settings to apply for this app assignment.
12843 restartSettings?: NullableOption<Win32LobAppRestartSettings>;
12844}
12845export interface Win32LobAppRestartSettings {
12846 // The number of minutes before the restart time to display the countdown dialog for pending restarts.
12847 countdownDisplayBeforeRestartInMinutes?: number;
12848 // The number of minutes to wait before restarting the device after an app installation.
12849 gracePeriodInMinutes?: number;
12850 // The number of minutes to snooze the restart notification dialog when the snooze button is selected.
12851 restartNotificationSnoozeDurationInMinutes?: NullableOption<number>;
12852}
12853export interface Win32LobAppRule {
12854 // The rule type indicating the purpose of the rule. Possible values are: detection, requirement.
12855 ruleType?: Win32LobAppRuleType;
12856}
12857export interface Win32LobAppFileSystemRule extends Win32LobAppRule {
12858 // A value indicating whether to expand environment variables in the 32-bit context on 64-bit systems.
12859 check32BitOn64System?: boolean;
12860 // The file or folder comparison value.
12861 comparisonValue?: NullableOption<string>;
12862 // The file or folder name to look up.
12863 fileOrFolderName?: NullableOption<string>;
12864 /**
12865 * The file system operation type. Possible values are: notConfigured, exists, modifiedDate, createdDate, version,
12866 * sizeInMB, doesNotExist.
12867 */
12868 operationType?: Win32LobAppFileSystemOperationType;
12869 /**
12870 * The operator for file or folder detection. Possible values are: notConfigured, equal, notEqual, greaterThan,
12871 * greaterThanOrEqual, lessThan, lessThanOrEqual.
12872 */
12873 operator?: Win32LobAppRuleOperator;
12874 // The file or folder path to look up.
12875 path?: NullableOption<string>;
12876}
12877export interface Win32LobAppInstallExperience {
12878 // Device restart behavior. Possible values are: basedOnReturnCode, allow, suppress, force.
12879 deviceRestartBehavior?: Win32LobAppRestartBehavior;
12880 // Indicates the type of execution context the app runs in. Possible values are: system, user.
12881 runAsAccount?: RunAsAccountType;
12882}
12883export interface Win32LobAppMsiInformation {
12884 // The MSI package type. Possible values are: perMachine, perUser, dualPurpose.
12885 packageType?: Win32LobAppMsiPackageType;
12886 // The MSI product code.
12887 productCode?: NullableOption<string>;
12888 // The MSI product name.
12889 productName?: NullableOption<string>;
12890 // The MSI product version.
12891 productVersion?: NullableOption<string>;
12892 // The MSI publisher.
12893 publisher?: NullableOption<string>;
12894 // Whether the MSI app requires the machine to reboot to complete installation.
12895 requiresReboot?: boolean;
12896 // The MSI upgrade code.
12897 upgradeCode?: NullableOption<string>;
12898}
12899export interface Win32LobAppPowerShellScriptRule extends Win32LobAppRule {
12900 // The script output comparison value. Do not specify a value if the rule is used for detection.
12901 comparisonValue?: NullableOption<string>;
12902 // The display name for the rule. Do not specify this value if the rule is used for detection.
12903 displayName?: NullableOption<string>;
12904 // A value indicating whether a signature check is enforced.
12905 enforceSignatureCheck?: boolean;
12906 /**
12907 * The script output comparison operation type. Use NotConfigured (the default value) if the rule is used for detection.
12908 * Possible values are: notConfigured, string, dateTime, integer, float, version, boolean.
12909 */
12910 operationType?: Win32LobAppPowerShellScriptRuleOperationType;
12911 /**
12912 * The script output operator. Use NotConfigured (the default value) if the rule is used for detection. Possible values
12913 * are: notConfigured, equal, notEqual, greaterThan, greaterThanOrEqual, lessThan, lessThanOrEqual.
12914 */
12915 operator?: Win32LobAppRuleOperator;
12916 // A value indicating whether the script should run as 32-bit.
12917 runAs32Bit?: boolean;
12918 /**
12919 * The execution context of the script. Do not specify this value if the rule is used for detection. Script detection
12920 * rules will run in the same context as the associated app install context. Possible values are: system, user.
12921 */
12922 runAsAccount?: NullableOption<RunAsAccountType>;
12923 // The base64-encoded script content.
12924 scriptContent?: NullableOption<string>;
12925}
12926export interface Win32LobAppProductCodeRule extends Win32LobAppRule {
12927 // The product code of the app.
12928 productCode?: NullableOption<string>;
12929 // The product version comparison value.
12930 productVersion?: NullableOption<string>;
12931 /**
12932 * The product version comparison operator. Possible values are: notConfigured, equal, notEqual, greaterThan,
12933 * greaterThanOrEqual, lessThan, lessThanOrEqual.
12934 */
12935 productVersionOperator?: Win32LobAppRuleOperator;
12936}
12937export interface Win32LobAppRegistryRule extends Win32LobAppRule {
12938 // A value indicating whether to search the 32-bit registry on 64-bit systems.
12939 check32BitOn64System?: boolean;
12940 // The registry comparison value.
12941 comparisonValue?: NullableOption<string>;
12942 // The full path of the registry entry containing the value to detect.
12943 keyPath?: NullableOption<string>;
12944 // The registry operation type. Possible values are: notConfigured, exists, doesNotExist, string, integer, version.
12945 operationType?: Win32LobAppRegistryRuleOperationType;
12946 /**
12947 * The operator for registry detection. Possible values are: notConfigured, equal, notEqual, greaterThan,
12948 * greaterThanOrEqual, lessThan, lessThanOrEqual.
12949 */
12950 operator?: Win32LobAppRuleOperator;
12951 // The name of the registry value to detect.
12952 valueName?: NullableOption<string>;
12953}
12954export interface Win32LobAppReturnCode {
12955 // Return code.
12956 returnCode?: number;
12957 // The type of return code. Possible values are: failed, success, softReboot, hardReboot, retry.
12958 type?: Win32LobAppReturnCodeType;
12959}
12960export interface WindowsMinimumOperatingSystem {
12961 // Windows version 10.0 or later.
12962 v10_0?: boolean;
12963 // Windows version 8.0 or later.
12964 v8_0?: boolean;
12965 // Windows version 8.1 or later.
12966 v8_1?: boolean;
12967}
12968export interface DeviceManagementSettings {
12969 // The number of days a device is allowed to go without checking in to remain compliant.
12970 deviceComplianceCheckinThresholdDays?: number;
12971 // Is feature enabled or not for scheduled action for rule.
12972 isScheduledActionEnabled?: boolean;
12973 // Device should be noncompliant when there is no compliance policy targeted when this is true
12974 secureByDefault?: boolean;
12975}
12976// tslint:disable-next-line: interface-name
12977export interface IntuneBrand {
12978 // Email address of the person/organization responsible for IT support.
12979 contactITEmailAddress?: NullableOption<string>;
12980 // Name of the person/organization responsible for IT support.
12981 contactITName?: NullableOption<string>;
12982 // Text comments regarding the person/organization responsible for IT support.
12983 contactITNotes?: NullableOption<string>;
12984 // Phone number of the person/organization responsible for IT support.
12985 contactITPhoneNumber?: NullableOption<string>;
12986 // Logo image displayed in Company Portal apps which have a dark background behind the logo.
12987 darkBackgroundLogo?: NullableOption<MimeContent>;
12988 // Company/organization name that is displayed to end users.
12989 displayName?: NullableOption<string>;
12990 // Logo image displayed in Company Portal apps which have a light background behind the logo.
12991 lightBackgroundLogo?: NullableOption<MimeContent>;
12992 // Display name of the company/organization’s IT helpdesk site.
12993 onlineSupportSiteName?: NullableOption<string>;
12994 // URL to the company/organization’s IT helpdesk site.
12995 onlineSupportSiteUrl?: NullableOption<string>;
12996 // URL to the company/organization’s privacy policy.
12997 privacyUrl?: NullableOption<string>;
12998 // Boolean that represents whether the administrator-supplied display name will be shown next to the logo image.
12999 showDisplayNameNextToLogo?: boolean;
13000 // Boolean that represents whether the administrator-supplied logo images are shown or not shown.
13001 showLogo?: boolean;
13002 // Boolean that represents whether the administrator-supplied display name will be shown next to the logo image.
13003 showNameNextToLogo?: boolean;
13004 // Primary theme color used in the Company Portal applications and web portal.
13005 themeColor?: NullableOption<RgbColor>;
13006}
13007export interface AppListItem {
13008 // The application or bundle identifier of the application
13009 appId?: NullableOption<string>;
13010 // The Store URL of the application
13011 appStoreUrl?: NullableOption<string>;
13012 // The application name
13013 name?: string;
13014 // The publisher of the application
13015 publisher?: NullableOption<string>;
13016}
13017export interface BitLockerRemovableDrivePolicy {
13018 /**
13019 * This policy setting determines whether BitLocker protection is required for removable data drives to be writable on a
13020 * computer.
13021 */
13022 blockCrossOrganizationWriteAccess?: boolean;
13023 // Select the encryption method for removable drives. Possible values are: aesCbc128, aesCbc256, xtsAes128, xtsAes256.
13024 encryptionMethod?: NullableOption<BitLockerEncryptionMethod>;
13025 /**
13026 * Indicates whether to block write access to devices configured in another organization. If
13027 * requireEncryptionForWriteAccess is false, this value does not affect.
13028 */
13029 requireEncryptionForWriteAccess?: boolean;
13030}
13031export interface DefenderDetectedMalwareActions {
13032 /**
13033 * Indicates a Defender action to take for high severity Malware threat detected. Possible values are: deviceDefault,
13034 * clean, quarantine, remove, allow, userDefined, block.
13035 */
13036 highSeverity?: DefenderThreatAction;
13037 /**
13038 * Indicates a Defender action to take for low severity Malware threat detected. Possible values are: deviceDefault,
13039 * clean, quarantine, remove, allow, userDefined, block.
13040 */
13041 lowSeverity?: DefenderThreatAction;
13042 /**
13043 * Indicates a Defender action to take for moderate severity Malware threat detected. Possible values are: deviceDefault,
13044 * clean, quarantine, remove, allow, userDefined, block.
13045 */
13046 moderateSeverity?: DefenderThreatAction;
13047 /**
13048 * Indicates a Defender action to take for severe severity Malware threat detected. Possible values are: deviceDefault,
13049 * clean, quarantine, remove, allow, userDefined, block.
13050 */
13051 severeSeverity?: DefenderThreatAction;
13052}
13053export interface DeviceCompliancePolicySettingState {
13054 // Current value of setting on device
13055 currentValue?: NullableOption<string>;
13056 // Error code for the setting
13057 errorCode?: number;
13058 // Error description
13059 errorDescription?: NullableOption<string>;
13060 // Name of setting instance that is being reported.
13061 instanceDisplayName?: NullableOption<string>;
13062 // The setting that is being reported
13063 setting?: NullableOption<string>;
13064 // Localized/user friendly setting name that is being reported
13065 settingName?: NullableOption<string>;
13066 // Contributing policies
13067 sources?: NullableOption<SettingSource[]>;
13068 /**
13069 * The compliance state of the setting. Possible values are: unknown, notApplicable, compliant, remediated, nonCompliant,
13070 * error, conflict, notAssigned.
13071 */
13072 state?: ComplianceStatus;
13073 // UserEmail
13074 userEmail?: NullableOption<string>;
13075 // UserId
13076 userId?: NullableOption<string>;
13077 // UserName
13078 userName?: NullableOption<string>;
13079 // UserPrincipalName.
13080 userPrincipalName?: NullableOption<string>;
13081}
13082export interface SettingSource {
13083 // Not yet documented
13084 displayName?: NullableOption<string>;
13085 // Not yet documented
13086 id?: NullableOption<string>;
13087}
13088export interface DeviceConfigurationSettingState {
13089 // Current value of setting on device
13090 currentValue?: NullableOption<string>;
13091 // Error code for the setting
13092 errorCode?: number;
13093 // Error description
13094 errorDescription?: NullableOption<string>;
13095 // Name of setting instance that is being reported.
13096 instanceDisplayName?: NullableOption<string>;
13097 // The setting that is being reported
13098 setting?: NullableOption<string>;
13099 // Localized/user friendly setting name that is being reported
13100 settingName?: NullableOption<string>;
13101 // Contributing policies
13102 sources?: NullableOption<SettingSource[]>;
13103 /**
13104 * The compliance state of the setting. Possible values are: unknown, notApplicable, compliant, remediated, nonCompliant,
13105 * error, conflict, notAssigned.
13106 */
13107 state?: ComplianceStatus;
13108 // UserEmail
13109 userEmail?: NullableOption<string>;
13110 // UserId
13111 userId?: NullableOption<string>;
13112 // UserName
13113 userName?: NullableOption<string>;
13114 // UserPrincipalName.
13115 userPrincipalName?: NullableOption<string>;
13116}
13117// tslint:disable-next-line: no-empty-interface
13118export interface EdgeSearchEngineBase {}
13119export interface EdgeSearchEngine extends EdgeSearchEngineBase {
13120 /**
13121 * Allows IT admins to set a predefined default search engine for MDM-Controlled devices. Possible values are: default,
13122 * bing.
13123 */
13124 edgeSearchEngineType?: EdgeSearchEngineType;
13125}
13126export interface EdgeSearchEngineCustom extends EdgeSearchEngineBase {
13127 /**
13128 * Points to a https link containing the OpenSearch xml file that contains, at minimum, the short name and the URL to the
13129 * search Engine.
13130 */
13131 edgeSearchEngineOpenSearchXmlUrl?: string;
13132}
13133// tslint:disable-next-line: interface-name
13134export interface IosHomeScreenItem {
13135 // Name of the app
13136 displayName?: NullableOption<string>;
13137}
13138// tslint:disable-next-line: interface-name
13139export interface IosHomeScreenApp extends IosHomeScreenItem {
13140 // BundleID of the app if isWebClip is false or the URL of a web clip if isWebClip is true.
13141 bundleID?: string;
13142}
13143// tslint:disable-next-line: interface-name
13144export interface IosHomeScreenFolder extends IosHomeScreenItem {
13145 /**
13146 * Pages of Home Screen Layout Icons which must be applications or web clips. This collection can contain a maximum of 500
13147 * elements.
13148 */
13149 pages?: IosHomeScreenFolderPage[];
13150}
13151// tslint:disable-next-line: interface-name
13152export interface IosHomeScreenFolderPage {
13153 /**
13154 * A list of apps and web clips to appear on a page within a folder. This collection can contain a maximum of 500
13155 * elements.
13156 */
13157 apps?: IosHomeScreenApp[];
13158 // Name of the folder page
13159 displayName?: NullableOption<string>;
13160}
13161// tslint:disable-next-line: interface-name
13162export interface IosHomeScreenPage {
13163 // Name of the page
13164 displayName?: NullableOption<string>;
13165 // A list of apps, folders, and web clips to appear on a page. This collection can contain a maximum of 500 elements.
13166 icons?: IosHomeScreenItem[];
13167}
13168// tslint:disable-next-line: interface-name
13169export interface IosNetworkUsageRule {
13170 // If set to true, corresponding managed apps will not be allowed to use cellular data at any time.
13171 cellularDataBlocked?: boolean;
13172 // If set to true, corresponding managed apps will not be allowed to use cellular data when roaming.
13173 cellularDataBlockWhenRoaming?: boolean;
13174 /**
13175 * Information about the managed apps that this rule is going to apply to. This collection can contain a maximum of 500
13176 * elements.
13177 */
13178 managedApps?: NullableOption<AppListItem[]>;
13179}
13180// tslint:disable-next-line: interface-name
13181export interface IosNotificationSettings {
13182 // Indicates the type of alert for notifications for this app. Possible values are: deviceDefault, banner, modal, none.
13183 alertType?: IosNotificationAlertType;
13184 // Application name to be associated with the bundleID.
13185 appName?: NullableOption<string>;
13186 // Indicates whether badges are allowed for this app.
13187 badgesEnabled?: NullableOption<boolean>;
13188 // Bundle id of app to which to apply these notification settings.
13189 bundleID?: string;
13190 // Indicates whether notifications are allowed for this app.
13191 enabled?: NullableOption<boolean>;
13192 // Publisher to be associated with the bundleID.
13193 publisher?: NullableOption<string>;
13194 // Indicates whether notifications can be shown in notification center.
13195 showInNotificationCenter?: NullableOption<boolean>;
13196 // Indicates whether notifications can be shown on the lock screen.
13197 showOnLockScreen?: NullableOption<boolean>;
13198 // Indicates whether sounds are allowed for this app.
13199 soundsEnabled?: NullableOption<boolean>;
13200}
13201export interface MediaContentRatingAustralia {
13202 /**
13203 * Movies rating selected for Australia. Possible values are: allAllowed, allBlocked, general, parentalGuidance, mature,
13204 * agesAbove15, agesAbove18.
13205 */
13206 movieRating?: RatingAustraliaMoviesType;
13207 /**
13208 * TV rating selected for Australia. Possible values are: allAllowed, allBlocked, preschoolers, children, general,
13209 * parentalGuidance, mature, agesAbove15, agesAbove15AdultViolence.
13210 */
13211 tvRating?: RatingAustraliaTelevisionType;
13212}
13213export interface MediaContentRatingCanada {
13214 /**
13215 * Movies rating selected for Canada. Possible values are: allAllowed, allBlocked, general, parentalGuidance, agesAbove14,
13216 * agesAbove18, restricted.
13217 */
13218 movieRating?: RatingCanadaMoviesType;
13219 /**
13220 * TV rating selected for Canada. Possible values are: allAllowed, allBlocked, children, childrenAbove8, general,
13221 * parentalGuidance, agesAbove14, agesAbove18.
13222 */
13223 tvRating?: RatingCanadaTelevisionType;
13224}
13225export interface MediaContentRatingFrance {
13226 /**
13227 * Movies rating selected for France. Possible values are: allAllowed, allBlocked, agesAbove10, agesAbove12, agesAbove16,
13228 * agesAbove18.
13229 */
13230 movieRating?: RatingFranceMoviesType;
13231 /**
13232 * TV rating selected for France. Possible values are: allAllowed, allBlocked, agesAbove10, agesAbove12, agesAbove16,
13233 * agesAbove18.
13234 */
13235 tvRating?: RatingFranceTelevisionType;
13236}
13237export interface MediaContentRatingGermany {
13238 /**
13239 * Movies rating selected for Germany. Possible values are: allAllowed, allBlocked, general, agesAbove6, agesAbove12,
13240 * agesAbove16, adults.
13241 */
13242 movieRating?: RatingGermanyMoviesType;
13243 /**
13244 * TV rating selected for Germany. Possible values are: allAllowed, allBlocked, general, agesAbove6, agesAbove12,
13245 * agesAbove16, adults.
13246 */
13247 tvRating?: RatingGermanyTelevisionType;
13248}
13249export interface MediaContentRatingIreland {
13250 /**
13251 * Movies rating selected for Ireland. Possible values are: allAllowed, allBlocked, general, parentalGuidance,
13252 * agesAbove12, agesAbove15, agesAbove16, adults.
13253 */
13254 movieRating?: RatingIrelandMoviesType;
13255 /**
13256 * TV rating selected for Ireland. Possible values are: allAllowed, allBlocked, general, children, youngAdults,
13257 * parentalSupervision, mature.
13258 */
13259 tvRating?: RatingIrelandTelevisionType;
13260}
13261export interface MediaContentRatingJapan {
13262 /**
13263 * Movies rating selected for Japan. Possible values are: allAllowed, allBlocked, general, parentalGuidance, agesAbove15,
13264 * agesAbove18.
13265 */
13266 movieRating?: RatingJapanMoviesType;
13267 // TV rating selected for Japan. Possible values are: allAllowed, allBlocked, explicitAllowed.
13268 tvRating?: RatingJapanTelevisionType;
13269}
13270export interface MediaContentRatingNewZealand {
13271 /**
13272 * Movies rating selected for New Zealand. Possible values are: allAllowed, allBlocked, general, parentalGuidance, mature,
13273 * agesAbove13, agesAbove15, agesAbove16, agesAbove18, restricted, agesAbove16Restricted.
13274 */
13275 movieRating?: RatingNewZealandMoviesType;
13276 // TV rating selected for New Zealand. Possible values are: allAllowed, allBlocked, general, parentalGuidance, adults.
13277 tvRating?: RatingNewZealandTelevisionType;
13278}
13279export interface MediaContentRatingUnitedKingdom {
13280 /**
13281 * Movies rating selected for United Kingdom. Possible values are: allAllowed, allBlocked, general, universalChildren,
13282 * parentalGuidance, agesAbove12Video, agesAbove12Cinema, agesAbove15, adults.
13283 */
13284 movieRating?: RatingUnitedKingdomMoviesType;
13285 // TV rating selected for United Kingdom. Possible values are: allAllowed, allBlocked, caution.
13286 tvRating?: RatingUnitedKingdomTelevisionType;
13287}
13288export interface MediaContentRatingUnitedStates {
13289 /**
13290 * Movies rating selected for United States. Possible values are: allAllowed, allBlocked, general, parentalGuidance,
13291 * parentalGuidance13, restricted, adults.
13292 */
13293 movieRating?: RatingUnitedStatesMoviesType;
13294 /**
13295 * TV rating selected for United States. Possible values are: allAllowed, allBlocked, childrenAll, childrenAbove7,
13296 * general, parentalGuidance, childrenAbove14, adults.
13297 */
13298 tvRating?: RatingUnitedStatesTelevisionType;
13299}
13300export interface OmaSetting {
13301 // Description.
13302 description?: NullableOption<string>;
13303 // Display Name.
13304 displayName?: string;
13305 // OMA.
13306 omaUri?: string;
13307}
13308export interface OmaSettingBase64 extends OmaSetting {
13309 // File name associated with the Value property (.cer
13310 fileName?: NullableOption<string>;
13311 // Value. (Base64 encoded string)
13312 value?: string;
13313}
13314export interface OmaSettingBoolean extends OmaSetting {
13315 // Value.
13316 value?: boolean;
13317}
13318export interface OmaSettingDateTime extends OmaSetting {
13319 // Value.
13320 value?: string;
13321}
13322export interface OmaSettingFloatingPoint extends OmaSetting {
13323 // Value.
13324 value?: number;
13325}
13326export interface OmaSettingInteger extends OmaSetting {
13327 // Value.
13328 value?: number;
13329}
13330export interface OmaSettingString extends OmaSetting {
13331 // Value.
13332 value?: string;
13333}
13334export interface OmaSettingStringXml extends OmaSetting {
13335 // File name associated with the Value property (.xml).
13336 fileName?: NullableOption<string>;
13337 // Value. (UTF8 encoded byte array)
13338 value?: number;
13339}
13340export interface Report {
13341 // Report content; details vary by report type.
13342 content?: NullableOption<any>;
13343}
13344export interface SharedPCAccountManagerPolicy {
13345 /**
13346 * Configures when accounts are deleted. Possible values are: immediate, diskSpaceThreshold,
13347 * diskSpaceThresholdOrInactiveThreshold.
13348 */
13349 accountDeletionPolicy?: SharedPCAccountDeletionPolicyType;
13350 /**
13351 * Sets the percentage of available disk space a PC should have before it stops deleting cached shared PC accounts. Only
13352 * applies when AccountDeletionPolicy is DiskSpaceThreshold or DiskSpaceThresholdOrInactiveThreshold. Valid values 0 to
13353 * 100
13354 */
13355 cacheAccountsAboveDiskFreePercentage?: NullableOption<number>;
13356 /**
13357 * Specifies when the accounts will start being deleted when they have not been logged on during the specified period,
13358 * given as number of days. Only applies when AccountDeletionPolicy is DiskSpaceThreshold or
13359 * DiskSpaceThresholdOrInactiveThreshold.
13360 */
13361 inactiveThresholdDays?: NullableOption<number>;
13362 /**
13363 * Sets the percentage of disk space remaining on a PC before cached accounts will be deleted to free disk space. Accounts
13364 * that have been inactive the longest will be deleted first. Only applies when AccountDeletionPolicy is
13365 * DiskSpaceThresholdOrInactiveThreshold. Valid values 0 to 100
13366 */
13367 removeAccountsBelowDiskFreePercentage?: NullableOption<number>;
13368}
13369export interface Windows10NetworkProxyServer {
13370 // Address to the proxy server. Specify an address in the format [':']
13371 address?: string;
13372 /**
13373 * Addresses that should not use the proxy server. The system will not use the proxy server for addresses beginning with
13374 * what is specified in this node.
13375 */
13376 exceptions?: NullableOption<string[]>;
13377 // Specifies whether the proxy server should be used for local (intranet) addresses.
13378 useForLocalAddresses?: boolean;
13379}
13380export interface WindowsFirewallNetworkProfile {
13381 /**
13382 * Configures the firewall to merge authorized application rules from group policy with those from local store instead of
13383 * ignoring the local store rules. When AuthorizedApplicationRulesFromGroupPolicyNotMerged and
13384 * AuthorizedApplicationRulesFromGroupPolicyMerged are both true, AuthorizedApplicationRulesFromGroupPolicyMerged takes
13385 * priority.
13386 */
13387 authorizedApplicationRulesFromGroupPolicyMerged?: boolean;
13388 /**
13389 * Configures the firewall to merge connection security rules from group policy with those from local store instead of
13390 * ignoring the local store rules. When ConnectionSecurityRulesFromGroupPolicyNotMerged and
13391 * ConnectionSecurityRulesFromGroupPolicyMerged are both true, ConnectionSecurityRulesFromGroupPolicyMerged takes
13392 * priority.
13393 */
13394 connectionSecurityRulesFromGroupPolicyMerged?: boolean;
13395 /**
13396 * Configures the host device to allow or block the firewall and advanced security enforcement for the network profile.
13397 * Possible values are: notConfigured, blocked, allowed.
13398 */
13399 firewallEnabled?: StateManagementSetting;
13400 /**
13401 * Configures the firewall to merge global port rules from group policy with those from local store instead of ignoring
13402 * the local store rules. When GlobalPortRulesFromGroupPolicyNotMerged and GlobalPortRulesFromGroupPolicyMerged are both
13403 * true, GlobalPortRulesFromGroupPolicyMerged takes priority.
13404 */
13405 globalPortRulesFromGroupPolicyMerged?: boolean;
13406 /**
13407 * Configures the firewall to block all incoming connections by default. When InboundConnectionsRequired and
13408 * InboundConnectionsBlocked are both true, InboundConnectionsBlocked takes priority.
13409 */
13410 inboundConnectionsBlocked?: boolean;
13411 /**
13412 * Prevents the firewall from displaying notifications when an application is blocked from listening on a port. When
13413 * InboundNotificationsRequired and InboundNotificationsBlocked are both true, InboundNotificationsBlocked takes priority.
13414 */
13415 inboundNotificationsBlocked?: boolean;
13416 /**
13417 * Configures the firewall to block all incoming traffic regardless of other policy settings. When IncomingTrafficRequired
13418 * and IncomingTrafficBlocked are both true, IncomingTrafficBlocked takes priority.
13419 */
13420 incomingTrafficBlocked?: boolean;
13421 /**
13422 * Configures the firewall to block all outgoing connections by default. When OutboundConnectionsRequired and
13423 * OutboundConnectionsBlocked are both true, OutboundConnectionsBlocked takes priority. This setting will get applied to
13424 * Windows releases version 1809 and above.
13425 */
13426 outboundConnectionsBlocked?: boolean;
13427 /**
13428 * Configures the firewall to merge Firewall Rule policies from group policy with those from local store instead of
13429 * ignoring the local store rules. When PolicyRulesFromGroupPolicyNotMerged and PolicyRulesFromGroupPolicyMerged are both
13430 * true, PolicyRulesFromGroupPolicyMerged takes priority.
13431 */
13432 policyRulesFromGroupPolicyMerged?: boolean;
13433 /**
13434 * Configures the firewall to allow the host computer to respond to unsolicited network traffic of that traffic is secured
13435 * by IPSec even when stealthModeBlocked is set to true. When SecuredPacketExemptionBlocked and
13436 * SecuredPacketExemptionAllowed are both true, SecuredPacketExemptionAllowed takes priority.
13437 */
13438 securedPacketExemptionAllowed?: boolean;
13439 /**
13440 * Prevent the server from operating in stealth mode. When StealthModeRequired and StealthModeBlocked are both true,
13441 * StealthModeBlocked takes priority.
13442 */
13443 stealthModeBlocked?: boolean;
13444 /**
13445 * Configures the firewall to block unicast responses to multicast broadcast traffic. When
13446 * UnicastResponsesToMulticastBroadcastsRequired and UnicastResponsesToMulticastBroadcastsBlocked are both true,
13447 * UnicastResponsesToMulticastBroadcastsBlocked takes priority.
13448 */
13449 unicastResponsesToMulticastBroadcastsBlocked?: boolean;
13450}
13451// tslint:disable-next-line: no-empty-interface
13452export interface WindowsUpdateInstallScheduleType {}
13453export interface WindowsUpdateActiveHoursInstall extends WindowsUpdateInstallScheduleType {
13454 // Active Hours End
13455 activeHoursEnd?: string;
13456 // Active Hours Start
13457 activeHoursStart?: string;
13458}
13459export interface WindowsUpdateScheduledInstall extends WindowsUpdateInstallScheduleType {
13460 /**
13461 * Scheduled Install Day in week. Possible values are: userDefined, everyday, sunday, monday, tuesday, wednesday,
13462 * thursday, friday, saturday, noScheduledScan.
13463 */
13464 scheduledInstallDay?: WeeklySchedule;
13465 // Scheduled Install Time during day
13466 scheduledInstallTime?: string;
13467}
13468export interface ConfigurationManagerClientEnabledFeatures {
13469 // Whether compliance policy is managed by Intune
13470 compliancePolicy?: boolean;
13471 // Whether device configuration is managed by Intune
13472 deviceConfiguration?: boolean;
13473 // Whether inventory is managed by Intune
13474 inventory?: boolean;
13475 // Whether modern application is managed by Intune
13476 modernApps?: boolean;
13477 // Whether resource access is managed by Intune
13478 resourceAccess?: boolean;
13479 // Whether Windows Update for Business is managed by Intune
13480 windowsUpdateForBusiness?: boolean;
13481}
13482export interface DeviceActionResult {
13483 // Action name
13484 actionName?: NullableOption<string>;
13485 // State of the action. Possible values are: none, pending, canceled, active, done, failed, notSupported.
13486 actionState?: ActionState;
13487 // Time the action state was last updated
13488 lastUpdatedDateTime?: string;
13489 // Time the action was initiated
13490 startDateTime?: string;
13491}
13492export interface DeviceHealthAttestationState {
13493 /**
13494 * TWhen an Attestation Identity Key (AIK) is present on a device, it indicates that the device has an endorsement key
13495 * (EK) certificate.
13496 */
13497 attestationIdentityKey?: NullableOption<string>;
13498 // On or Off of BitLocker Drive Encryption
13499 bitLockerStatus?: NullableOption<string>;
13500 // The security version number of the Boot Application
13501 bootAppSecurityVersion?: NullableOption<string>;
13502 // When bootDebugging is enabled, the device is used in development and testing
13503 bootDebugging?: NullableOption<string>;
13504 // The security version number of the Boot Application
13505 bootManagerSecurityVersion?: NullableOption<string>;
13506 // The version of the Boot Manager
13507 bootManagerVersion?: NullableOption<string>;
13508 // The Boot Revision List that was loaded during initial boot on the attested device
13509 bootRevisionListInfo?: NullableOption<string>;
13510 // When code integrity is enabled, code execution is restricted to integrity verified code
13511 codeIntegrity?: NullableOption<string>;
13512 // The version of the Boot Manager
13513 codeIntegrityCheckVersion?: NullableOption<string>;
13514 // The Code Integrity policy that is controlling the security of the boot environment
13515 codeIntegrityPolicy?: NullableOption<string>;
13516 // The DHA report version. (Namespace version)
13517 contentNamespaceUrl?: NullableOption<string>;
13518 // The HealthAttestation state schema version
13519 contentVersion?: NullableOption<string>;
13520 // DEP Policy defines a set of hardware and software technologies that perform additional checks on memory
13521 dataExcutionPolicy?: NullableOption<string>;
13522 // The DHA report version. (Namespace version)
13523 deviceHealthAttestationStatus?: NullableOption<string>;
13524 // ELAM provides protection for the computers in your network when they start up
13525 earlyLaunchAntiMalwareDriverProtection?: NullableOption<string>;
13526 // This attribute indicates if DHA is supported for the device
13527 healthAttestationSupportedStatus?: NullableOption<string>;
13528 // This attribute appears if DHA-Service detects an integrity issue
13529 healthStatusMismatchInfo?: NullableOption<string>;
13530 // The DateTime when device was evaluated or issued to MDM
13531 issuedDateTime?: string;
13532 // The Timestamp of the last update.
13533 lastUpdateDateTime?: NullableOption<string>;
13534 // When operatingSystemKernelDebugging is enabled, the device is used in development and testing
13535 operatingSystemKernelDebugging?: NullableOption<string>;
13536 // The Operating System Revision List that was loaded during initial boot on the attested device
13537 operatingSystemRevListInfo?: NullableOption<string>;
13538 // The measurement that is captured in PCR[0]
13539 pcr0?: NullableOption<string>;
13540 // Informational attribute that identifies the HASH algorithm that was used by TPM
13541 pcrHashAlgorithm?: NullableOption<string>;
13542 // The number of times a PC device has hibernated or resumed
13543 resetCount?: number;
13544 // The number of times a PC device has rebooted
13545 restartCount?: number;
13546 // Safe mode is a troubleshooting option for Windows that starts your computer in a limited state
13547 safeMode?: NullableOption<string>;
13548 // When Secure Boot is enabled, the core components must have the correct cryptographic signatures
13549 secureBoot?: NullableOption<string>;
13550 // Fingerprint of the Custom Secure Boot Configuration Policy
13551 secureBootConfigurationPolicyFingerPrint?: NullableOption<string>;
13552 // When test signing is allowed, the device does not enforce signature validation during boot
13553 testSigning?: NullableOption<string>;
13554 // The security version number of the Boot Application
13555 tpmVersion?: NullableOption<string>;
13556 // VSM is a container that protects high value assets from a compromised kernel
13557 virtualSecureMode?: NullableOption<string>;
13558 // Operating system running with limited services that is used to prepare a computer for Windows
13559 windowsPE?: NullableOption<string>;
13560}
13561export interface ComplianceManagementPartnerAssignment {
13562 // Group assignment target.
13563 target?: NullableOption<DeviceAndAppManagementAssignmentTarget>;
13564}
13565export interface DeviceEnrollmentPlatformRestriction {
13566 // Max OS version supported
13567 osMaximumVersion?: NullableOption<string>;
13568 // Min OS version supported
13569 osMinimumVersion?: NullableOption<string>;
13570 // Block personally owned devices from enrolling
13571 personalDeviceEnrollmentBlocked?: boolean;
13572 // Block the platform from enrolling
13573 platformBlocked?: boolean;
13574}
13575export interface RgbColor {
13576 // Blue value
13577 b?: number;
13578 // Green value
13579 g?: number;
13580 // Red value
13581 r?: number;
13582}
13583export interface DeleteUserFromSharedAppleDeviceActionResult extends DeviceActionResult {
13584 // User principal name of the user to be deleted
13585 userPrincipalName?: NullableOption<string>;
13586}
13587export interface DeviceExchangeAccessStateSummary {
13588 // Total count of devices with Exchange Access State: Allowed.
13589 allowedDeviceCount?: number;
13590 // Total count of devices with Exchange Access State: Blocked.
13591 blockedDeviceCount?: number;
13592 // Total count of devices with Exchange Access State: Quarantined.
13593 quarantinedDeviceCount?: number;
13594 // Total count of devices for which no Exchange Access State could be found.
13595 unavailableDeviceCount?: number;
13596 // Total count of devices with Exchange Access State: Unknown.
13597 unknownDeviceCount?: number;
13598}
13599export interface DeviceGeoLocation {
13600 // Altitude, given in meters above sea level
13601 altitude?: number;
13602 // Heading in degrees from true north
13603 heading?: number;
13604 // Accuracy of longitude and latitude in meters
13605 horizontalAccuracy?: number;
13606 // Time at which location was recorded, relative to UTC
13607 lastCollectedDateTime?: string;
13608 // Latitude coordinate of the device's location
13609 latitude?: number;
13610 // Longitude coordinate of the device's location
13611 longitude?: number;
13612 // Speed the device is traveling in meters per second
13613 speed?: number;
13614 // Accuracy of altitude in meters
13615 verticalAccuracy?: number;
13616}
13617export interface DeviceOperatingSystemSummary {
13618 // Number of android device count.
13619 androidCount?: number;
13620 // Number of iOS device count.
13621 iosCount?: number;
13622 // Number of Mac OS X device count.
13623 macOSCount?: number;
13624 // Number of unknown device count.
13625 unknownCount?: number;
13626 // Number of Windows device count.
13627 windowsCount?: number;
13628 // Number of Windows mobile device count.
13629 windowsMobileCount?: number;
13630}
13631export interface LocateDeviceActionResult extends DeviceActionResult {
13632 // device location
13633 deviceLocation?: NullableOption<DeviceGeoLocation>;
13634}
13635export interface RemoteLockActionResult extends DeviceActionResult {
13636 // Pin to unlock the client
13637 unlockPin?: NullableOption<string>;
13638}
13639export interface ResetPasscodeActionResult extends DeviceActionResult {
13640 // Newly generated passcode for the device
13641 passcode?: NullableOption<string>;
13642}
13643export interface UpdateWindowsDeviceAccountActionParameter {
13644 // Not yet documented
13645 calendarSyncEnabled?: NullableOption<boolean>;
13646 // Not yet documented
13647 deviceAccount?: NullableOption<WindowsDeviceAccount>;
13648 // Not yet documented
13649 deviceAccountEmail?: NullableOption<string>;
13650 // Not yet documented
13651 exchangeServer?: NullableOption<string>;
13652 // Not yet documented
13653 passwordRotationEnabled?: NullableOption<boolean>;
13654 // Not yet documented
13655 sessionInitiationProtocalAddress?: NullableOption<string>;
13656}
13657export interface WindowsDeviceAccount {
13658 // Not yet documented
13659 password?: NullableOption<string>;
13660}
13661export interface WindowsDefenderScanActionResult extends DeviceActionResult {
13662 // Scan type either full scan or quick scan
13663 scanType?: NullableOption<string>;
13664}
13665export interface WindowsDeviceADAccount extends WindowsDeviceAccount {
13666 // Not yet documented
13667 domainName?: NullableOption<string>;
13668 // Not yet documented
13669 userName?: NullableOption<string>;
13670}
13671export interface WindowsDeviceAzureADAccount extends WindowsDeviceAccount {
13672 // Not yet documented
13673 userPrincipalName?: NullableOption<string>;
13674}
13675// tslint:disable-next-line: no-empty-interface
13676export interface MobileAppIdentifier {}
13677export interface AndroidMobileAppIdentifier extends MobileAppIdentifier {
13678 // The identifier for an app, as specified in the play store.
13679 packageId?: string;
13680}
13681// tslint:disable-next-line: interface-name
13682export interface IosMobileAppIdentifier extends MobileAppIdentifier {
13683 // The identifier for an app, as specified in the app store.
13684 bundleId?: string;
13685}
13686// tslint:disable-next-line: interface-name
13687export interface IPv4Range extends IpRange {
13688 // Lower address.
13689 lowerAddress?: string;
13690 // Upper address.
13691 upperAddress?: string;
13692}
13693// tslint:disable-next-line: interface-name
13694export interface IPv6Range extends IpRange {
13695 // Lower address.
13696 lowerAddress?: string;
13697 // Upper address.
13698 upperAddress?: string;
13699}
13700export interface KeyValuePair {
13701 // Name for this key-value pair
13702 name?: string;
13703 // Value for this key-value pair
13704 value?: NullableOption<string>;
13705}
13706export interface ManagedAppDiagnosticStatus {
13707 // Instruction on how to mitigate a failed validation
13708 mitigationInstruction?: NullableOption<string>;
13709 // The state of the operation
13710 state?: NullableOption<string>;
13711 // The validation friendly name
13712 validationName?: NullableOption<string>;
13713}
13714export interface ManagedAppPolicyDeploymentSummaryPerApp {
13715 // Number of users the policy is applied.
13716 configurationAppliedUserCount?: number;
13717 // Deployment of an app.
13718 mobileAppIdentifier?: NullableOption<MobileAppIdentifier>;
13719}
13720export interface ProxiedDomain {
13721 // The IP address or FQDN
13722 ipAddressOrFQDN?: string;
13723 // Proxy IP or FQDN
13724 proxy?: NullableOption<string>;
13725}
13726export interface WindowsInformationProtectionApp {
13727 // If true, app is denied protection or exemption.
13728 denied?: boolean;
13729 // The app's description.
13730 description?: NullableOption<string>;
13731 // App display name.
13732 displayName?: string;
13733 // The product name.
13734 productName?: NullableOption<string>;
13735 // The publisher name
13736 publisherName?: NullableOption<string>;
13737}
13738export interface WindowsInformationProtectionDataRecoveryCertificate {
13739 // Data recovery Certificate
13740 certificate?: NullableOption<number>;
13741 // Data recovery Certificate description
13742 description?: NullableOption<string>;
13743 // Data recovery Certificate expiration datetime
13744 expirationDateTime?: string;
13745 // Data recovery Certificate subject name
13746 subjectName?: NullableOption<string>;
13747}
13748export interface WindowsInformationProtectionDesktopApp extends WindowsInformationProtectionApp {
13749 // The binary name.
13750 binaryName?: string;
13751 // The high binary version.
13752 binaryVersionHigh?: NullableOption<string>;
13753 // The lower binary version.
13754 binaryVersionLow?: NullableOption<string>;
13755}
13756export interface WindowsInformationProtectionIPRangeCollection {
13757 // Display name
13758 displayName?: string;
13759 // Collection of ip ranges
13760 ranges?: IpRange[];
13761}
13762export interface WindowsInformationProtectionProxiedDomainCollection {
13763 // Display name
13764 displayName?: string;
13765 // Collection of proxied domains
13766 proxiedDomains?: ProxiedDomain[];
13767}
13768export interface WindowsInformationProtectionResourceCollection {
13769 // Display name
13770 displayName?: string;
13771 // Collection of resources
13772 resources?: NullableOption<string[]>;
13773}
13774// tslint:disable-next-line: no-empty-interface
13775export interface WindowsInformationProtectionStoreApp extends WindowsInformationProtectionApp {}
13776export interface ResourceAction {
13777 // Allowed Actions
13778 allowedResourceActions?: NullableOption<string[]>;
13779 // Not Allowed Actions.
13780 notAllowedResourceActions?: NullableOption<string[]>;
13781}
13782export interface RolePermission {
13783 // Resource Actions each containing a set of allowed and not allowed permissions.
13784 resourceActions?: NullableOption<ResourceAction[]>;
13785}
13786export interface SearchHit {
13787 // The name of the content source which the externalItem is part of .
13788 contentSource?: NullableOption<string>;
13789 // The internal identifier for the item.
13790 hitId?: NullableOption<string>;
13791 // The rank or the order of the result.
13792 rank?: NullableOption<number>;
13793 // A summary of the result, if a summary is available.
13794 summary?: NullableOption<string>;
13795 resource?: NullableOption<Entity>;
13796}
13797export interface SearchHitsContainer {
13798 // A collection of the search results.
13799 hits?: NullableOption<SearchHit[]>;
13800 /**
13801 * Provides information if more results are available. Based on this information, you can adjust the from and size
13802 * properties of the searchRequest accordingly.
13803 */
13804 moreResultsAvailable?: NullableOption<boolean>;
13805 /**
13806 * The total number of results. Note this is not the number of results on the page, but the total number of results
13807 * satisfying the query.
13808 */
13809 total?: NullableOption<number>;
13810}
13811export interface SearchQuery {
13812 // The search query containing the search terms. Required.
13813 queryString?: string;
13814}
13815export interface SearchRequest {
13816 /**
13817 * Contains the connection to be targeted. Respects the following format : /external/connections/connectionid where
13818 * connectionid is the ConnectionId defined in the Connectors Administration. Note : contentSource is only applicable when
13819 * entityType=externalItem. Optional.
13820 */
13821 contentSources?: NullableOption<string[]>;
13822 /**
13823 * This triggers hybrid sort for messages : the first 3 messages are the most relevant. This property is only applicable
13824 * to entityType=message. Optional.
13825 */
13826 enableTopResults?: NullableOption<boolean>;
13827 /**
13828 * One or more types of resources expected in the response. Possible values are: list, site, listItem, message, event,
13829 * drive, driveItem, externalItem. See known limitations for those combinations of two or more entity types that are
13830 * supported in the same search request. Required.
13831 */
13832 entityTypes?: NullableOption<EntityType[]>;
13833 /**
13834 * Contains the fields to be returned for each resource object specified in entityTypes, allowing customization of the
13835 * fields returned by default otherwise, including additional fields such as custom managed properties from SharePoint and
13836 * OneDrive, or custom fields in externalItem from content ingested by Graph connectors. Optional.
13837 */
13838 fields?: NullableOption<string[]>;
13839 // Specifies the offset for the search results. Offset 0 returns the very first result. Optional.
13840 from?: number;
13841 // Contains the query terms. Required.
13842 query?: SearchQuery;
13843 // The size of the page to be retrieved. Optional.
13844 size?: number;
13845}
13846export interface SearchResponse {
13847 // A collection of search results.
13848 hitsContainers?: NullableOption<SearchHitsContainer[]>;
13849 // Contains the search terms sent in the initial search query.
13850 searchTerms?: NullableOption<string[]>;
13851}
13852// tslint:disable-next-line: no-empty-interface
13853export interface PlannerAppliedCategories {}
13854export interface PlannerAssignment {
13855 // The identity of the user that performed the assignment of the task, i.e. the assignor.
13856 assignedBy?: NullableOption<IdentitySet>;
13857 /**
13858 * The time at which the task was assigned. The Timestamp type represents date and time information using ISO 8601 format
13859 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
13860 */
13861 assignedDateTime?: NullableOption<string>;
13862 // Hint used to order assignees in a task. The format is defined as outlined here.
13863 orderHint?: NullableOption<string>;
13864}
13865// tslint:disable-next-line: no-empty-interface
13866export interface PlannerAssignments {}
13867export interface PlannerCategoryDescriptions {
13868 // The label associated with Category 1
13869 category1?: NullableOption<string>;
13870 // The label associated with Category 2
13871 category2?: NullableOption<string>;
13872 // The label associated with Category 3
13873 category3?: NullableOption<string>;
13874 // The label associated with Category 4
13875 category4?: NullableOption<string>;
13876 // The label associated with Category 5
13877 category5?: NullableOption<string>;
13878 // The label associated with Category 6
13879 category6?: NullableOption<string>;
13880}
13881export interface PlannerChecklistItem {
13882 // Value is true if the item is checked and false otherwise.
13883 isChecked?: NullableOption<boolean>;
13884 // Read-only. User ID by which this is last modified.
13885 lastModifiedBy?: NullableOption<IdentitySet>;
13886 /**
13887 * Read-only. Date and time at which this is last modified. The Timestamp type represents date and time information using
13888 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
13889 * '2014-01-01T00:00:00Z'
13890 */
13891 lastModifiedDateTime?: NullableOption<string>;
13892 // Used to set the relative order of items in the checklist. The format is defined as outlined here.
13893 orderHint?: NullableOption<string>;
13894 // Title of the checklist item
13895 title?: NullableOption<string>;
13896}
13897// tslint:disable-next-line: no-empty-interface
13898export interface PlannerChecklistItems {}
13899export interface PlannerExternalReference {
13900 // A name alias to describe the reference.
13901 alias?: NullableOption<string>;
13902 // Read-only. User ID by which this is last modified.
13903 lastModifiedBy?: NullableOption<IdentitySet>;
13904 /**
13905 * Read-only. Date and time at which this is last modified. The Timestamp type represents date and time information using
13906 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
13907 * '2014-01-01T00:00:00Z'
13908 */
13909 lastModifiedDateTime?: NullableOption<string>;
13910 // Used to set the relative priority order in which the reference will be shown as a preview on the task.
13911 previewPriority?: NullableOption<string>;
13912 // Used to describe the type of the reference. Types include: PowerPoint, Word, Excel, Other.
13913 type?: NullableOption<string>;
13914}
13915// tslint:disable-next-line: no-empty-interface
13916export interface PlannerExternalReferences {}
13917// tslint:disable-next-line: no-empty-interface
13918export interface PlannerOrderHintsByAssignee {}
13919// tslint:disable-next-line: no-empty-interface
13920export interface PlannerUserIds {}
13921// tslint:disable-next-line: interface-name
13922export interface InsightIdentity {
13923 // The email address of the user who shared the item.
13924 address?: NullableOption<string>;
13925 // The display name of the user who shared the item.
13926 displayName?: NullableOption<string>;
13927 // The id of the user who shared the item.
13928 id?: NullableOption<string>;
13929}
13930export interface ResourceReference {
13931 // The item's unique identifier.
13932 id?: NullableOption<string>;
13933 // A string value that can be used to classify the item, such as 'microsoft.graph.driveItem'
13934 type?: NullableOption<string>;
13935 // A URL leading to the referenced item.
13936 webUrl?: NullableOption<string>;
13937}
13938export interface ResourceVisualization {
13939 /**
13940 * A string describing where the item is stored. For example, the name of a SharePoint site or the user name identifying
13941 * the owner of the OneDrive storing the item.
13942 */
13943 containerDisplayName?: NullableOption<string>;
13944 // Can be used for filtering by the type of container in which the file is stored. Such as Site or OneDriveBusiness.
13945 containerType?: NullableOption<string>;
13946 // A path leading to the folder in which the item is stored.
13947 containerWebUrl?: NullableOption<string>;
13948 /**
13949 * The item's media type. Can be used for filtering for a specific type of file based on supported IANA Media Mime Types.
13950 * Note that not all Media Mime Types are supported.
13951 */
13952 mediaType?: NullableOption<string>;
13953 // A URL leading to the preview image for the item.
13954 previewImageUrl?: NullableOption<string>;
13955 // A preview text for the item.
13956 previewText?: NullableOption<string>;
13957 // The item's title text.
13958 title?: NullableOption<string>;
13959 /**
13960 * The item's media type. Can be used for filtering for a specific file based on a specific type. See below for supported
13961 * types.
13962 */
13963 type?: NullableOption<string>;
13964}
13965export interface SharingDetail {
13966 // The user who shared the document.
13967 sharedBy?: NullableOption<InsightIdentity>;
13968 /**
13969 * The date and time the file was last shared. The timestamp represents date and time information using ISO 8601 format
13970 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: 2014-01-01T00:00:00Z.
13971 * Read-only.
13972 */
13973 sharedDateTime?: NullableOption<string>;
13974 sharingReference?: NullableOption<ResourceReference>;
13975 // The subject with which the document was shared.
13976 sharingSubject?: NullableOption<string>;
13977 // Determines the way the document was shared, can be by a 'Link', 'Attachment', 'Group', 'Site'.
13978 sharingType?: NullableOption<string>;
13979}
13980export interface UsageDetails {
13981 /**
13982 * The date and time the resource was last accessed by the user. The timestamp represents date and time information using
13983 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
13984 * 2014-01-01T00:00:00Z. Read-only.
13985 */
13986 lastAccessedDateTime?: NullableOption<string>;
13987 /**
13988 * The date and time the resource was last modified by the user. The timestamp represents date and time information using
13989 * ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
13990 * 2014-01-01T00:00:00Z. Read-only.
13991 */
13992 lastModifiedDateTime?: NullableOption<string>;
13993}
13994export interface CopyNotebookModel {
13995 createdBy?: NullableOption<string>;
13996 createdByIdentity?: NullableOption<IdentitySet>;
13997 createdTime?: NullableOption<string>;
13998 id?: NullableOption<string>;
13999 isDefault?: NullableOption<boolean>;
14000 isShared?: NullableOption<boolean>;
14001 lastModifiedBy?: NullableOption<string>;
14002 lastModifiedByIdentity?: NullableOption<IdentitySet>;
14003 lastModifiedTime?: NullableOption<string>;
14004 links?: NullableOption<NotebookLinks>;
14005 name?: NullableOption<string>;
14006 sectionGroupsUrl?: NullableOption<string>;
14007 sectionsUrl?: NullableOption<string>;
14008 self?: NullableOption<string>;
14009 userRole?: NullableOption<OnenoteUserRole>;
14010}
14011export interface NotebookLinks {
14012 // Opens the notebook in the OneNote native client if it's installed.
14013 oneNoteClientUrl?: NullableOption<ExternalLink>;
14014 // Opens the notebook in OneNote on the web.
14015 oneNoteWebUrl?: NullableOption<ExternalLink>;
14016}
14017export interface Diagnostic {
14018 // The message describing the condition that triggered the error or warning.
14019 message?: NullableOption<string>;
14020 // The link to the documentation for this issue.
14021 url?: NullableOption<string>;
14022}
14023export interface ExternalLink {
14024 // The url of the link.
14025 href?: NullableOption<string>;
14026}
14027export interface OnenoteOperationError {
14028 // The error code.
14029 code?: NullableOption<string>;
14030 // The error message.
14031 message?: NullableOption<string>;
14032}
14033export interface OnenotePagePreview {
14034 links?: NullableOption<OnenotePagePreviewLinks>;
14035 previewText?: NullableOption<string>;
14036}
14037export interface OnenotePagePreviewLinks {
14038 previewImageUrl?: NullableOption<ExternalLink>;
14039}
14040export interface OnenotePatchContentCommand {
14041 // The action to perform on the target element. Possible values are: replace, append, delete, insert, or prepend.
14042 action?: OnenotePatchActionType;
14043 /**
14044 * A string of well-formed HTML to add to the page, and any image or file binary data. If the content contains binary
14045 * data, the request must be sent using the multipart/form-data content type with a 'Commands' part.
14046 */
14047 content?: NullableOption<string>;
14048 /**
14049 * The location to add the supplied content, relative to the target element. Possible values are: after (default) or
14050 * before.
14051 */
14052 position?: NullableOption<OnenotePatchInsertPosition>;
14053 /**
14054 * The element to update. Must be the #&amp;lt;data-id&amp;gt; or the generated {id} of the element, or the body or title
14055 * keyword.
14056 */
14057 target?: string;
14058}
14059export interface PageLinks {
14060 // Opens the page in the OneNote native client if it's installed.
14061 oneNoteClientUrl?: NullableOption<ExternalLink>;
14062 // Opens the page in OneNote on the web.
14063 oneNoteWebUrl?: NullableOption<ExternalLink>;
14064}
14065export interface RecentNotebook {
14066 // The name of the notebook.
14067 displayName?: NullableOption<string>;
14068 /**
14069 * The date and time when the notebook was last modified. The timestamp represents date and time information using ISO
14070 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
14071 * '2014-01-01T00:00:00Z'. Read-only.
14072 */
14073 lastAccessedTime?: NullableOption<string>;
14074 /**
14075 * Links for opening the notebook. The oneNoteClientURL link opens the notebook in the OneNote client, if it's installed.
14076 * The oneNoteWebURL link opens the notebook in OneNote on the web.
14077 */
14078 links?: NullableOption<RecentNotebookLinks>;
14079 // The backend store where the Notebook resides, either OneDriveForBusiness or OneDrive.
14080 sourceService?: NullableOption<OnenoteSourceService>;
14081}
14082export interface RecentNotebookLinks {
14083 // Opens the notebook in the OneNote client, if it's installed.
14084 oneNoteClientUrl?: NullableOption<ExternalLink>;
14085 // Opens the notebook in OneNote on the web.
14086 oneNoteWebUrl?: NullableOption<ExternalLink>;
14087}
14088export interface SectionLinks {
14089 // Opens the section in the OneNote native client if it's installed.
14090 oneNoteClientUrl?: NullableOption<ExternalLink>;
14091 // Opens the section in OneNote on the web.
14092 oneNoteWebUrl?: NullableOption<ExternalLink>;
14093}
14094// tslint:disable-next-line: interface-name
14095export interface ImageInfo {
14096 /**
14097 * Optional; parameter used to indicate the server is able to render image dynamically in response to parameterization.
14098 * For example – a high contrast image
14099 */
14100 addImageQuery?: NullableOption<boolean>;
14101 // Optional; alt-text accessible content for the image
14102 alternateText?: NullableOption<string>;
14103 alternativeText?: NullableOption<string>;
14104 // Optional; URI that points to an icon which represents the application used to generate the activity
14105 iconUrl?: NullableOption<string>;
14106}
14107export interface VisualInfo {
14108 // Optional. JSON object used to represent an icon which represents the application used to generate the activity
14109 attribution?: NullableOption<ImageInfo>;
14110 /**
14111 * Optional. Background color used to render the activity in the UI - brand color for the application source of the
14112 * activity. Must be a valid hex color
14113 */
14114 backgroundColor?: NullableOption<string>;
14115 /**
14116 * Optional. Custom piece of data - JSON object used to provide custom content to render the activity in the Windows Shell
14117 * UI
14118 */
14119 content?: NullableOption<any>;
14120 /**
14121 * Optional. Longer text description of the user's unique activity (example: document name, first sentence, and/or
14122 * metadata)
14123 */
14124 description?: NullableOption<string>;
14125 /**
14126 * Required. Short text description of the user's unique activity (for example, document name in cases where an activity
14127 * refers to document creation)
14128 */
14129 displayText?: string;
14130}
14131export interface AlertDetection {
14132 detectionType?: NullableOption<string>;
14133 method?: NullableOption<string>;
14134 name?: NullableOption<string>;
14135}
14136export interface AlertHistoryState {
14137 /**
14138 * The Application ID of the calling application that submitted an update (PATCH) to the alert. The appId should be
14139 * extracted from the auth token and not entered manually by the calling application.
14140 */
14141 appId?: NullableOption<string>;
14142 // UPN of user the alert was assigned to (note: alert.assignedTo only stores the last value/UPN).
14143 assignedTo?: NullableOption<string>;
14144 // Comment entered by signed-in user.
14145 comments?: NullableOption<string[]>;
14146 /**
14147 * Analyst feedback on the alert in this update. Possible values are: unknown, truePositive, falsePositive,
14148 * benignPositive.
14149 */
14150 feedback?: NullableOption<AlertFeedback>;
14151 // Alert status value (if updated). Possible values are: unknown, newAlert, inProgress, resolved, dismissed.
14152 status?: NullableOption<AlertStatus>;
14153 /**
14154 * Date and time of the alert update. The Timestamp type represents date and time information using ISO 8601 format and is
14155 * always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
14156 */
14157 updatedDateTime?: NullableOption<string>;
14158 // UPN of the signed-in user that updated the alert (taken from the bearer token - if in user/delegated auth mode).
14159 user?: NullableOption<string>;
14160}
14161export interface AlertTrigger {
14162 // Name of the property serving as a detection trigger.
14163 name?: NullableOption<string>;
14164 // Type of the property in the key:value pair for interpretation. For example, String, Boolean, etc.
14165 type?: NullableOption<string>;
14166 // Value of the property serving as a detection trigger.
14167 value?: NullableOption<string>;
14168}
14169export interface AverageComparativeScore {
14170 // Average score within specified basis.
14171 averageScore?: NullableOption<number>;
14172 // Scope type. The possible values are: AllTenants, TotalSeats, IndustryTypes.
14173 basis?: NullableOption<string>;
14174}
14175export interface CertificationControl {
14176 // Certification control name
14177 name?: NullableOption<string>;
14178 // URL for the Microsoft Service Trust Portal
14179 url?: NullableOption<string>;
14180}
14181export interface CloudAppSecurityState {
14182 // Destination IP Address of the connection to the cloud application/service.
14183 destinationServiceIp?: NullableOption<string>;
14184 // Cloud application/service name (for example 'Salesforce', 'DropBox', etc.).
14185 destinationServiceName?: NullableOption<string>;
14186 /**
14187 * Provider-generated/calculated risk score of the Cloud Application/Service. Recommended value range of 0-1, which
14188 * equates to a percentage.
14189 */
14190 riskScore?: NullableOption<string>;
14191}
14192export interface ComplianceInformation {
14193 // Collection of the certification controls associated with certification
14194 certificationControls?: NullableOption<CertificationControl[]>;
14195 // Compliance certification name (for example, ISO 27018:2014, GDPR, FedRAMP, NIST 800-171)
14196 certificationName?: NullableOption<string>;
14197}
14198export interface ControlScore {
14199 // Control action category (Identity, Data, Device, Apps, Infrastructure).
14200 controlCategory?: NullableOption<string>;
14201 // Control unique name.
14202 controlName?: NullableOption<string>;
14203 // Description of the control.
14204 description?: NullableOption<string>;
14205 // Tenant achieved score for the control (it varies day by day depending on tenant operations on the control).
14206 score?: NullableOption<number>;
14207}
14208export interface FileHash {
14209 // File hash type. Possible values are: unknown, sha1, sha256, md5, authenticodeHash256, lsHash, ctph, peSha1, peSha256.
14210 hashType?: NullableOption<FileHashType>;
14211 // Value of the file hash.
14212 hashValue?: NullableOption<string>;
14213}
14214export interface FileSecurityState {
14215 // Complex type containing file hashes (cryptographic and location-sensitive).
14216 fileHash?: NullableOption<FileHash>;
14217 // File name (without path).
14218 name?: NullableOption<string>;
14219 // Full file path of the file/imageFile.
14220 path?: NullableOption<string>;
14221 /**
14222 * Provider generated/calculated risk score of the alert file. Recommended value range of 0-1, which equates to a
14223 * percentage.
14224 */
14225 riskScore?: NullableOption<string>;
14226}
14227export interface HostSecurityState {
14228 // Host FQDN (Fully Qualified Domain Name) (for example, machine.company.com).
14229 fqdn?: NullableOption<string>;
14230 isAzureAdJoined?: NullableOption<boolean>;
14231 isAzureAdRegistered?: NullableOption<boolean>;
14232 // True if the host is domain joined to an on-premises Active Directory domain.
14233 isHybridAzureDomainJoined?: NullableOption<boolean>;
14234 // The local host name, without the DNS domain name.
14235 netBiosName?: NullableOption<string>;
14236 // Host Operating System. (For example, Windows10, MacOS, RHEL, etc.).
14237 os?: NullableOption<string>;
14238 // Private (not routable) IPv4 or IPv6 address (see RFC 1918) at the time of the alert.
14239 privateIpAddress?: NullableOption<string>;
14240 // Publicly routable IPv4 or IPv6 address (see RFC 1918) at time of the alert.
14241 publicIpAddress?: NullableOption<string>;
14242 // Provider-generated/calculated risk score of the host. Recommended value range of 0-1, which equates to a percentage.
14243 riskScore?: NullableOption<string>;
14244}
14245// tslint:disable-next-line: interface-name
14246export interface InvestigationSecurityState {
14247 name?: NullableOption<string>;
14248 status?: NullableOption<string>;
14249}
14250export interface MalwareState {
14251 // Provider-generated malware category (for example, trojan, ransomware, etc.).
14252 category?: NullableOption<string>;
14253 // Provider-generated malware family (for example, 'wannacry', 'notpetya', etc.).
14254 family?: NullableOption<string>;
14255 // Provider-generated malware variant name (for example, Trojan:Win32/Powessere.H).
14256 name?: NullableOption<string>;
14257 // Provider-determined severity of this malware.
14258 severity?: NullableOption<string>;
14259 /**
14260 * Indicates whether the detected file (malware/vulnerability) was running at the time of detection or was detected at
14261 * rest on the disk.
14262 */
14263 wasRunning?: NullableOption<boolean>;
14264}
14265export interface MessageSecurityState {
14266 connectingIP?: NullableOption<string>;
14267 deliveryAction?: NullableOption<string>;
14268 deliveryLocation?: NullableOption<string>;
14269 directionality?: NullableOption<string>;
14270 internetMessageId?: NullableOption<string>;
14271 messageFingerprint?: NullableOption<string>;
14272 messageReceivedDateTime?: NullableOption<string>;
14273 messageSubject?: NullableOption<string>;
14274 networkMessageId?: NullableOption<string>;
14275}
14276export interface NetworkConnection {
14277 // Name of the application managing the network connection (for example, Facebook, SMTP, etc.).
14278 applicationName?: NullableOption<string>;
14279 // Destination IP address (of the network connection).
14280 destinationAddress?: NullableOption<string>;
14281 // Destination domain portion of the destination URL. (for example 'www.contoso.com').
14282 destinationDomain?: NullableOption<string>;
14283 // Location (by IP address mapping) associated with the destination of a network connection.
14284 destinationLocation?: NullableOption<string>;
14285 // Destination port (of the network connection).
14286 destinationPort?: NullableOption<string>;
14287 // Network connection URL/URI string - excluding parameters. (for example 'www.contoso.com/products/default.html')
14288 destinationUrl?: NullableOption<string>;
14289 // Network connection direction. Possible values are: unknown, inbound, outbound.
14290 direction?: NullableOption<ConnectionDirection>;
14291 /**
14292 * Date when the destination domain was registered. The Timestamp type represents date and time information using ISO 8601
14293 * format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
14294 */
14295 domainRegisteredDateTime?: NullableOption<string>;
14296 /**
14297 * The local DNS name resolution as it appears in the host's local DNS cache (for example, in case the 'hosts' file was
14298 * tampered with).
14299 */
14300 localDnsName?: NullableOption<string>;
14301 // Network Address Translation destination IP address.
14302 natDestinationAddress?: NullableOption<string>;
14303 // Network Address Translation destination port.
14304 natDestinationPort?: NullableOption<string>;
14305 // Network Address Translation source IP address.
14306 natSourceAddress?: NullableOption<string>;
14307 // Network Address Translation source port.
14308 natSourcePort?: NullableOption<string>;
14309 /**
14310 * Network protocol. Possible values are: unknown, ip, icmp, igmp, ggp, ipv4, tcp, pup, udp, idp, ipv6, ipv6RoutingHeader,
14311 * ipv6FragmentHeader, ipSecEncapsulatingSecurityPayload, ipSecAuthenticationHeader, icmpV6, ipv6NoNextHeader,
14312 * ipv6DestinationOptions, nd, raw, ipx, spx, spxII.
14313 */
14314 protocol?: NullableOption<SecurityNetworkProtocol>;
14315 /**
14316 * Provider generated/calculated risk score of the network connection. Recommended value range of 0-1, which equates to a
14317 * percentage.
14318 */
14319 riskScore?: NullableOption<string>;
14320 // Source (i.e. origin) IP address (of the network connection).
14321 sourceAddress?: NullableOption<string>;
14322 // Location (by IP address mapping) associated with the source of a network connection.
14323 sourceLocation?: NullableOption<string>;
14324 // Source (i.e. origin) IP port (of the network connection).
14325 sourcePort?: NullableOption<string>;
14326 // Network connection status. Possible values are: unknown, attempted, succeeded, blocked, failed.
14327 status?: NullableOption<ConnectionStatus>;
14328 // Parameters (suffix) of the destination URL.
14329 urlParameters?: NullableOption<string>;
14330}
14331export interface Process {
14332 // User account identifier (user account context the process ran under) for example, AccountName, SID, and so on.
14333 accountName?: NullableOption<string>;
14334 // The full process invocation commandline including all parameters.
14335 commandLine?: NullableOption<string>;
14336 /**
14337 * Time at which the process was started. The Timestamp type represents date and time information using ISO 8601 format
14338 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
14339 */
14340 createdDateTime?: NullableOption<string>;
14341 // Complex type containing file hashes (cryptographic and location-sensitive).
14342 fileHash?: NullableOption<FileHash>;
14343 // The integrity level of the process. Possible values are: unknown, untrusted, low, medium, high, system.
14344 integrityLevel?: NullableOption<ProcessIntegrityLevel>;
14345 // True if the process is elevated.
14346 isElevated?: NullableOption<boolean>;
14347 // The name of the process' Image file.
14348 name?: NullableOption<string>;
14349 /**
14350 * DateTime at which the parent process was started. The Timestamp type represents date and time information using ISO
14351 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
14352 * '2014-01-01T00:00:00Z'.
14353 */
14354 parentProcessCreatedDateTime?: NullableOption<string>;
14355 // The Process ID (PID) of the parent process.
14356 parentProcessId?: NullableOption<number>;
14357 // The name of the image file of the parent process.
14358 parentProcessName?: NullableOption<string>;
14359 // Full path, including filename.
14360 path?: NullableOption<string>;
14361 // The Process ID (PID) of the process.
14362 processId?: NullableOption<number>;
14363}
14364export interface RegistryKeyState {
14365 /**
14366 * A Windows registry hive : HKEY_CURRENT_CONFIG HKEY_CURRENT_USER HKEY_LOCAL_MACHINE/SAM HKEY_LOCAL_MACHINE/Security
14367 * HKEY_LOCAL_MACHINE/Software HKEY_LOCAL_MACHINE/System HKEY_USERS/.Default. Possible values are: unknown, currentConfig,
14368 * currentUser, localMachineSam, localMachineSecurity, localMachineSoftware, localMachineSystem, usersDefault.
14369 */
14370 hive?: NullableOption<RegistryHive>;
14371 // Current (i.e. changed) registry key (excludes HIVE).
14372 key?: NullableOption<string>;
14373 // Previous (i.e. before changed) registry key (excludes HIVE).
14374 oldKey?: NullableOption<string>;
14375 // Previous (i.e. before changed) registry key value data (contents).
14376 oldValueData?: NullableOption<string>;
14377 // Previous (i.e. before changed) registry key value name.
14378 oldValueName?: NullableOption<string>;
14379 // Operation that changed the registry key name and/or value. Possible values are: unknown, create, modify, delete.
14380 operation?: NullableOption<RegistryOperation>;
14381 /**
14382 * Process ID (PID) of the process that modified the registry key (process details will appear in the alert 'processes'
14383 * collection).
14384 */
14385 processId?: NullableOption<number>;
14386 // Current (i.e. changed) registry key value data (contents).
14387 valueData?: NullableOption<string>;
14388 // Current (i.e. changed) registry key value name
14389 valueName?: NullableOption<string>;
14390 /**
14391 * Registry key value type REG_BINARY REG_DWORD REG_DWORD_LITTLE_ENDIAN REG_DWORD_BIG_ENDIANREG_EXPAND_SZ REG_LINK
14392 * REG_MULTI_SZ REG_NONE REG_QWORD REG_QWORD_LITTLE_ENDIAN REG_SZ Possible values are: unknown, binary, dword,
14393 * dwordLittleEndian, dwordBigEndian, expandSz, link, multiSz, none, qword, qwordlittleEndian, sz.
14394 */
14395 valueType?: NullableOption<RegistryValueType>;
14396}
14397export interface SecureScoreControlStateUpdate {
14398 assignedTo?: NullableOption<string>;
14399 comment?: NullableOption<string>;
14400 state?: NullableOption<string>;
14401 updatedBy?: NullableOption<string>;
14402 updatedDateTime?: NullableOption<string>;
14403}
14404export interface SecurityResource {
14405 // Name of the resource that is related to current alert. Required.
14406 resource?: NullableOption<string>;
14407 // Represents type of security resources related to an alert. Possible values are: attacked, related.
14408 resourceType?: NullableOption<SecurityResourceType>;
14409}
14410export interface SecurityVendorInformation {
14411 // Specific provider (product/service - not vendor company); for example, WindowsDefenderATP.
14412 provider?: NullableOption<string>;
14413 // Version of the provider or subprovider, if it exists, that generated the alert. Required
14414 providerVersion?: NullableOption<string>;
14415 // Specific subprovider (under aggregating provider); for example, WindowsDefenderATP.SmartScreen.
14416 subProvider?: NullableOption<string>;
14417 // Name of the alert vendor (for example, Microsoft, Dell, FireEye). Required
14418 vendor?: NullableOption<string>;
14419}
14420export interface UriClickSecurityState {
14421 clickAction?: NullableOption<string>;
14422 clickDateTime?: NullableOption<string>;
14423 id?: NullableOption<string>;
14424 sourceId?: NullableOption<string>;
14425 uriDomain?: NullableOption<string>;
14426 verdict?: NullableOption<string>;
14427}
14428export interface UserSecurityState {
14429 // AAD User object identifier (GUID) - represents the physical/multi-account user entity.
14430 aadUserId?: NullableOption<string>;
14431 // Account name of user account (without Active Directory domain or DNS domain) - (also called mailNickName).
14432 accountName?: NullableOption<string>;
14433 // NetBIOS/Active Directory domain of user account (that is, domain/account format).
14434 domainName?: NullableOption<string>;
14435 // For email-related alerts - user account's email 'role'. Possible values are: unknown, sender, recipient.
14436 emailRole?: NullableOption<EmailRole>;
14437 // Indicates whether the user logged on through a VPN.
14438 isVpn?: NullableOption<boolean>;
14439 /**
14440 * Time at which the sign-in occurred. The Timestamp type represents date and time information using ISO 8601 format and
14441 * is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'.
14442 */
14443 logonDateTime?: NullableOption<string>;
14444 // User sign-in ID.
14445 logonId?: NullableOption<string>;
14446 // IP Address the sign-in request originated from.
14447 logonIp?: NullableOption<string>;
14448 // Location (by IP address mapping) associated with a user sign-in event by this user.
14449 logonLocation?: NullableOption<string>;
14450 // Method of user sign in. Possible values are: unknown, interactive, remoteInteractive, network, batch, service.
14451 logonType?: NullableOption<LogonType>;
14452 // Active Directory (on-premises) Security Identifier (SID) of the user.
14453 onPremisesSecurityIdentifier?: NullableOption<string>;
14454 /**
14455 * Provider-generated/calculated risk score of the user account. Recommended value range of 0-1, which equates to a
14456 * percentage.
14457 */
14458 riskScore?: NullableOption<string>;
14459 /**
14460 * User account type (group membership), per Windows definition. Possible values are: unknown, standard, power,
14461 * administrator.
14462 */
14463 userAccountType?: NullableOption<UserAccountSecurityType>;
14464 // User sign-in name - internet format: (user account name)@(user account DNS domain name).
14465 userPrincipalName?: NullableOption<string>;
14466}
14467export interface VulnerabilityState {
14468 // Common Vulnerabilities and Exposures (CVE) for the vulnerability.
14469 cve?: NullableOption<string>;
14470 // Base Common Vulnerability Scoring System (CVSS) severity score for this vulnerability.
14471 severity?: NullableOption<string>;
14472 /**
14473 * Indicates whether the detected vulnerability (file) was running at the time of detection or was the file detected at
14474 * rest on the disk.
14475 */
14476 wasRunning?: NullableOption<boolean>;
14477}
14478// tslint:disable-next-line: no-empty-interface
14479export interface MediaConfig {}
14480export interface AppHostedMediaConfig extends MediaConfig {
14481 // The media configuration blob generated by smart media agent.
14482 blob?: NullableOption<string>;
14483}
14484export interface AudioConferencing {
14485 conferenceId?: NullableOption<string>;
14486 // A URL to the externally-accessible web page that contains dial-in information.
14487 dialinUrl?: NullableOption<string>;
14488 // The toll-free number that connects to the Audio Conference Provider.
14489 tollFreeNumber?: NullableOption<string>;
14490 // The toll number that connects to the Audio Conference Provider.
14491 tollNumber?: NullableOption<string>;
14492}
14493export interface CallMediaState {
14494 // The audio media state. Possible values are: active, inactive.
14495 audio?: NullableOption<MediaState>;
14496}
14497// tslint:disable-next-line: no-empty-interface
14498export interface CallOptions {}
14499export interface CallRoute {
14500 // The identity that was resolved to in the call.
14501 final?: IdentitySet;
14502 // The identity that was originally used in the call.
14503 original?: IdentitySet;
14504 // Possible values are: forwarded, lookup, selfFork.
14505 routingType?: RoutingType;
14506}
14507export interface CallTranscriptionInfo {
14508 // The state modified time in UTC.
14509 lastModifiedDateTime?: NullableOption<string>;
14510 // Possible values are: notStarted, active, inactive.
14511 state?: CallTranscriptionState;
14512}
14513export interface ChatInfo {
14514 // The unique identifier for a message in a Microsoft Teams channel.
14515 messageId?: NullableOption<string>;
14516 // The ID of the reply message.
14517 replyChainMessageId?: NullableOption<string>;
14518 // The unique identifier for a thread in Microsoft Teams.
14519 threadId?: NullableOption<string>;
14520}
14521export interface CommsNotification {
14522 // Possible values are: created, updated, deleted.
14523 changeType?: ChangeType;
14524 // URI of the resource that was changed.
14525 resourceUrl?: string;
14526}
14527export interface CommsNotifications {
14528 // The notification of a change in the resource.
14529 value?: NullableOption<CommsNotification[]>;
14530}
14531// tslint:disable-next-line: interface-name
14532export interface IncomingContext {
14533 // The id of the participant that is under observation. Read-only.
14534 observedParticipantId?: NullableOption<string>;
14535 // The identity that the call is happening on behalf of.
14536 onBehalfOf?: NullableOption<IdentitySet>;
14537 // The id of the participant that triggered the incoming call. Read-only.
14538 sourceParticipantId?: NullableOption<string>;
14539 // The identity that transferred the call.
14540 transferor?: NullableOption<IdentitySet>;
14541}
14542// tslint:disable-next-line: interface-name
14543export interface InvitationParticipantInfo {
14544 // The identitySet associated with this invitation.
14545 identity?: IdentitySet;
14546 /**
14547 * Optional. The call which the target idenity is currently a part of. This call will be dropped once the participant is
14548 * added.
14549 */
14550 replacesCallId?: NullableOption<string>;
14551}
14552export interface LobbyBypassSettings {
14553 // Specifies whether or not to always let dial-in callers bypass the lobby. Optional.
14554 isDialInBypassEnabled?: NullableOption<boolean>;
14555 /**
14556 * Specifies the type of participants that are automatically admitted into a meeting, bypassing the lobby. Possible values
14557 * are listed in the following table. Optional.
14558 */
14559 scope?: NullableOption<LobbyBypassScope>;
14560}
14561export interface MediaInfo {
14562 /**
14563 * Optional, used to uniquely identity the resource. If passed the prompt uri will be cached against this resourceId as
14564 * key.
14565 */
14566 resourceId?: NullableOption<string>;
14567 /**
14568 * Path to the prompt to be played. Currently only Wave file (.wav) format, single-channel, 16-bit samples with a 16,000
14569 * (16KHz) sampling rate is only supported.
14570 */
14571 uri?: string;
14572}
14573// tslint:disable-next-line: no-empty-interface
14574export interface Prompt {}
14575export interface MediaPrompt extends Prompt {
14576 // The media information.
14577 mediaInfo?: MediaInfo;
14578}
14579export interface MediaStream {
14580 // The direction. The possible values are inactive, sendOnly, receiveOnly, sendReceive.
14581 direction?: MediaDirection;
14582 // The media stream label.
14583 label?: NullableOption<string>;
14584 // The media type. The possible value are unknown, audio, video, videoBasedScreenSharing, data.
14585 mediaType?: Modality;
14586 // Indicates whether the media is muted by the server.
14587 serverMuted?: boolean;
14588 // The source ID.
14589 sourceId?: string;
14590}
14591// tslint:disable-next-line: no-empty-interface
14592export interface MeetingInfo {}
14593export interface MeetingParticipantInfo {
14594 // Identity information of the participant.
14595 identity?: NullableOption<IdentitySet>;
14596 // Specifies the participant's role in the meeting. Possible values are attendee, presenter, and unknownFutureValue.
14597 role?: NullableOption<OnlineMeetingRole>;
14598 // User principal name of the participant.
14599 upn?: NullableOption<string>;
14600}
14601export interface MeetingParticipants {
14602 attendees?: NullableOption<MeetingParticipantInfo[]>;
14603 organizer?: NullableOption<MeetingParticipantInfo>;
14604}
14605export interface OrganizerMeetingInfo extends MeetingInfo {
14606 // The organizer Azure Active Directory identity.
14607 organizer?: IdentitySet;
14608}
14609// tslint:disable-next-line: no-empty-interface
14610export interface OutgoingCallOptions extends CallOptions {}
14611export interface ParticipantInfo {
14612 /**
14613 * The ISO 3166-1 Alpha-2 country code of the participant's best estimated physical location at the start of the call.
14614 * Read-only.
14615 */
14616 countryCode?: NullableOption<string>;
14617 /**
14618 * The type of endpoint the participant is using. Possible values are: default, skypeForBusiness, or
14619 * skypeForBusinessVoipPhone. Read-only.
14620 */
14621 endpointType?: NullableOption<EndpointType>;
14622 // The identitySet associated with this participant. Read-only.
14623 identity?: IdentitySet;
14624 // The language culture string. Read-only.
14625 languageId?: NullableOption<string>;
14626 /**
14627 * The home region of the participant. This can be a country, a continent, or a larger geographic region. This does not
14628 * change based on the participant's current physical location, unlike countryCode. Read-only.
14629 */
14630 region?: NullableOption<string>;
14631}
14632export interface RecordingInfo {
14633 // The identities of recording initiator.
14634 initiator?: NullableOption<IdentitySet>;
14635 // Possible values are: unknown, notRecording, recording, or failed.
14636 recordingStatus?: RecordingStatus;
14637}
14638export interface ResultInfo {
14639 // The result code.
14640 code?: number;
14641 // The message.
14642 message?: NullableOption<string>;
14643 // The result sub-code.
14644 subcode?: number;
14645}
14646export interface ServiceHostedMediaConfig extends MediaConfig {
14647 // The list of media to pre-fetch.
14648 preFetchMedia?: NullableOption<MediaInfo[]>;
14649}
14650export interface TeleconferenceDeviceMediaQuality {
14651 // The average inbound stream network jitter.
14652 averageInboundJitter?: NullableOption<string>;
14653 // The average inbound stream packet loss rate in percentage (0-100). For example, 0.01 means 0.01%.
14654 averageInboundPacketLossRateInPercentage?: NullableOption<number>;
14655 // The average inbound stream network round trip delay.
14656 averageInboundRoundTripDelay?: NullableOption<string>;
14657 // The average outbound stream network jitter.
14658 averageOutboundJitter?: NullableOption<string>;
14659 // The average outbound stream packet loss rate in percentage (0-100). For example, 0.01 means 0.01%.
14660 averageOutboundPacketLossRateInPercentage?: NullableOption<number>;
14661 // The average outbound stream network round trip delay.
14662 averageOutboundRoundTripDelay?: NullableOption<string>;
14663 /**
14664 * The channel index of media. Indexing begins with 1. If a media session contains 3 video modalities, channel indexes
14665 * will be 1, 2, and 3.
14666 */
14667 channelIndex?: number;
14668 // The total number of the inbound packets.
14669 inboundPackets?: NullableOption<number>;
14670 // the local IP address for the media session.
14671 localIPAddress?: NullableOption<string>;
14672 // The local media port.
14673 localPort?: NullableOption<number>;
14674 // The maximum inbound stream network jitter.
14675 maximumInboundJitter?: NullableOption<string>;
14676 // The maximum inbound stream packet loss rate in percentage (0-100). For example, 0.01 means 0.01%.
14677 maximumInboundPacketLossRateInPercentage?: NullableOption<number>;
14678 // The maximum inbound stream network round trip delay.
14679 maximumInboundRoundTripDelay?: NullableOption<string>;
14680 // The maximum outbound stream network jitter.
14681 maximumOutboundJitter?: NullableOption<string>;
14682 // The maximum outbound stream packet loss rate in percentage (0-100). For example, 0.01 means 0.01%.
14683 maximumOutboundPacketLossRateInPercentage?: NullableOption<number>;
14684 // The maximum outbound stream network round trip delay.
14685 maximumOutboundRoundTripDelay?: NullableOption<string>;
14686 /**
14687 * The total modality duration. If the media enabled and disabled multiple times, MediaDuration will the summation of all
14688 * of the durations.
14689 */
14690 mediaDuration?: NullableOption<string>;
14691 // The network link speed in bytes
14692 networkLinkSpeedInBytes?: NullableOption<number>;
14693 // The total number of the outbound packets.
14694 outboundPackets?: NullableOption<number>;
14695 // The remote IP address for the media session.
14696 remoteIPAddress?: NullableOption<string>;
14697 // The remote media port.
14698 remotePort?: NullableOption<number>;
14699}
14700// tslint:disable-next-line: no-empty-interface
14701export interface TeleconferenceDeviceAudioQuality extends TeleconferenceDeviceMediaQuality {}
14702export interface TeleconferenceDeviceQuality {
14703 /**
14704 * A unique identifier for all the participant calls in a conference or a unique identifier for two participant calls in
14705 * P2P call. This needs to be copied over from Microsoft.Graph.Call.CallChainId.
14706 */
14707 callChainId?: string;
14708 // A geo-region where the service is deployed, such as ProdNoam.
14709 cloudServiceDeploymentEnvironment?: NullableOption<string>;
14710 // A unique deployment identifier assigned by Azure.
14711 cloudServiceDeploymentId?: NullableOption<string>;
14712 // The Azure deployed cloud service instance name, such as FrontEnd_IN_3.
14713 cloudServiceInstanceName?: NullableOption<string>;
14714 // The Azure deployed cloud service name, such as contoso.cloudapp.net.
14715 cloudServiceName?: NullableOption<string>;
14716 // Any additional description, such as VTC Bldg 30/21.
14717 deviceDescription?: string;
14718 // The user media agent name, such as Cisco SX80.
14719 deviceName?: string;
14720 /**
14721 * A unique identifier for a specific media leg of a participant in a conference. One participant can have multiple media
14722 * leg identifiers if retargeting happens. CVI partner assigns this value.
14723 */
14724 mediaLegId?: string;
14725 /**
14726 * The list of media qualities in a media session (call), such as audio quality, video quality, and/or screen sharing
14727 * quality.
14728 */
14729 mediaQualityList?: TeleconferenceDeviceMediaQuality[];
14730 /**
14731 * A unique identifier for a specific participant in a conference. The CVI partner needs to copy over Call.MyParticipantId
14732 * to this property.
14733 */
14734 participantId?: string;
14735}
14736export interface TeleconferenceDeviceVideoQuality extends TeleconferenceDeviceMediaQuality {
14737 // The average inbound stream video bit rate per second.
14738 averageInboundBitRate?: NullableOption<number>;
14739 // The average inbound stream video frame rate per second.
14740 averageInboundFrameRate?: NullableOption<number>;
14741 // The average outbound stream video bit rate per second.
14742 averageOutboundBitRate?: NullableOption<number>;
14743 // The average outbound stream video frame rate per second.
14744 averageOutboundFrameRate?: NullableOption<number>;
14745}
14746// tslint:disable-next-line: no-empty-interface
14747export interface TeleconferenceDeviceScreenSharingQuality extends TeleconferenceDeviceVideoQuality {}
14748export interface TokenMeetingInfo extends MeetingInfo {
14749 // The token used to join the call.
14750 token?: string;
14751}
14752export interface ToneInfo {
14753 // An incremental identifier used for ordering DTMF events.
14754 sequenceId?: number;
14755 /**
14756 * Possible values are: tone0, tone1, tone2, tone3, tone4, tone5, tone6, tone7, tone8, tone9, star, pound, a, b, c, d,
14757 * flash.
14758 */
14759 tone?: Tone;
14760}
14761export interface ChangeNotification {
14762 /**
14763 * Indicates the type of change that will raise the change notification. The supported values are: created, updated,
14764 * deleted. Required.
14765 */
14766 changeType?: ChangeType;
14767 /**
14768 * Value of the clientState property sent specified in the subscription request (if any). The maximum length is 255
14769 * characters. The client can check whether the change notification came from the service by comparing the values of the
14770 * clientState property. The value of the clientState property sent with the subscription is compared with the value of
14771 * the clientState property received with each change notification. Optional.
14772 */
14773 clientState?: NullableOption<string>;
14774 /**
14775 * (Preview) Encrypted content attached with the change notification. Only provided if encryptionCertificate and
14776 * includeResourceData were defined during the subscription request and if the resource supports it. Optional.
14777 */
14778 encryptedContent?: NullableOption<ChangeNotificationEncryptedContent>;
14779 // Unique ID for the notification. Optional.
14780 id?: NullableOption<string>;
14781 /**
14782 * The type of lifecycle notification if the current notification is a lifecycle notification. Optional. Supported values
14783 * are missed, removed, reauthorizationRequired.
14784 */
14785 lifecycleEvent?: NullableOption<LifecycleEventType>;
14786 // The URI of the resource that emitted the change notification relative to https://graph.microsoft.com. Required.
14787 resource?: string;
14788 // The content of this property depends on the type of resource being subscribed to. Required.
14789 resourceData?: NullableOption<ResourceData>;
14790 // The expiration time for the subscription. Required.
14791 subscriptionExpirationDateTime?: string;
14792 // The unique identifier of the subscription that generated the notification.
14793 subscriptionId?: string;
14794 // The unique identifier of the tenant from which the change notification originated.
14795 tenantId?: string;
14796}
14797export interface ChangeNotificationEncryptedContent {
14798 /**
14799 * Base64-encoded encrypted data that produces a full resource respresented as JSON. The data has been encrypted with the
14800 * provided dataKey using an AES/CBC/PKCS5PADDING cipher suite.
14801 */
14802 data?: string;
14803 /**
14804 * Base64-encoded symmetric key generated by Microsoft Graph to encrypt the data value and to generate the data signature.
14805 * This key is encrypted with the certificate public key that was provided during the subscription. It must be decrypted
14806 * with the certificate private key before it can be used to decrypt the data or verify the signature. This key has been
14807 * encrypted with the following cipher suite: RSA/ECB/OAEPWithSHA1AndMGF1Padding.
14808 */
14809 dataKey?: string;
14810 // Base64-encoded HMAC-SHA256 hash of the data for validation purposes.
14811 dataSignature?: string;
14812 // ID of the certificate used to encrypt the dataKey.
14813 encryptionCertificateId?: string;
14814 // Hexadecimal representation of the thumbprint of the certificate used to encrypt the dataKey.
14815 encryptionCertificateThumbprint?: string;
14816}
14817// tslint:disable-next-line: no-empty-interface
14818export interface ResourceData {}
14819export interface ChangeNotificationCollection {
14820 /**
14821 * Contains an array of JWT tokens generated by Microsoft Graph for the application to validate the origin of the
14822 * notifications. Microsoft Graph generates a single token for each distinct app and tenant pair for an item if it exists
14823 * in the value array. Keep in mind that notifications can contain a mix of items for various apps and tenants that
14824 * subscribed using the same notification URL. Only provided for change notifications with resource data Optional.
14825 */
14826 validationTokens?: NullableOption<string[]>;
14827 // The set of notifications being sent to the notification URL. Required.
14828 value?: ChangeNotification[];
14829}
14830export interface ChatMessageAttachment {
14831 /**
14832 * The content of the attachment. If the attachment is a rich card, set the property to the rich card object. This
14833 * property and contentUrl are mutually exclusive.
14834 */
14835 content?: NullableOption<string>;
14836 /**
14837 * The media type of the content attachment. It can have the following values: reference: Attachment is a link to another
14838 * file. Populate the contentURL with the link to the object.Any contentTypes supported by the Bot Framework's Attachment
14839 * objectapplication/vnd.microsoft.card.codesnippet: A code snippet. application/vnd.microsoft.card.announcement: An
14840 * announcement header.
14841 */
14842 contentType?: NullableOption<string>;
14843 // URL for the content of the attachment. Supported protocols: http, https, file and data.
14844 contentUrl?: NullableOption<string>;
14845 // Read-only. Unique id of the attachment.
14846 id?: NullableOption<string>;
14847 // Name of the attachment.
14848 name?: NullableOption<string>;
14849 /**
14850 * URL to a thumbnail image that the channel can use if it supports using an alternative, smaller form of content or
14851 * contentUrl. For example, if you set contentType to application/word and set contentUrl to the location of the Word
14852 * document, you might include a thumbnail image that represents the document. The channel could display the thumbnail
14853 * image instead of the document. When the user clicks the image, the channel would open the document.
14854 */
14855 thumbnailUrl?: NullableOption<string>;
14856}
14857export interface ChatMessageMention {
14858 /**
14859 * Index of an entity being mentioned in the specified chatMessage. Matches the {index} value in the corresponding
14860 * &amp;lt;at id='{index}'&amp;gt; tag in the message body.
14861 */
14862 id?: NullableOption<number>;
14863 /**
14864 * The entity (user, application, team, or channel) that was mentioned. If it was a channel or team that was @mentioned,
14865 * the identitySet contains a conversation property giving the ID of the team/channel, and a conversationIdentityType
14866 * property that represents either the team or channel.
14867 */
14868 mentioned?: NullableOption<IdentitySet>;
14869 // String used to represent the mention. For example, a user's display name, a team name.
14870 mentionText?: NullableOption<string>;
14871}
14872export interface ChatMessagePolicyViolation {
14873 /**
14874 * The action taken by the DLP provider on the message with sensitive content. Supported values are: NoneNotifySender --
14875 * Inform the sender of the violation but allow readers to read the message.BlockAccess -- Block readers from reading the
14876 * message.BlockAccessExternal -- Block users outside the organization from reading the message, while allowing users
14877 * within the organization to read the message.
14878 */
14879 dlpAction?: NullableOption<ChatMessagePolicyViolationDlpActionTypes>;
14880 // Justification text provided by the sender of the message when overriding a policy violation.
14881 justificationText?: NullableOption<string>;
14882 // Information to display to the message sender about why the message was flagged as a violation.
14883 policyTip?: NullableOption<ChatMessagePolicyViolationPolicyTip>;
14884 /**
14885 * Indicates the action taken by the user on a message blocked by the DLP provider. Supported values are:
14886 * NoneOverrideReportFalsePositiveWhen the DLP provider is updating the message for blocking sensitive content, userAction
14887 * is not required.
14888 */
14889 userAction?: NullableOption<ChatMessagePolicyViolationUserActionTypes>;
14890 /**
14891 * Indicates what actions the sender may take in response to the policy violation. Supported values are:
14892 * NoneAllowFalsePositiveOverride -- Allows the sender to declare the policyViolation to be an error in the DLP app and
14893 * its rules, and allow readers to see the message again if the dlpAction had hidden it.AllowOverrideWithoutJustification
14894 * -- Allows the sender to overriide the DLP violation and allow readers to see the message again if the dlpAction had
14895 * hidden it, without needing to provide an explanation for doing so. AllowOverrideWithJustification -- Allows the sender
14896 * to overriide the DLP violation and allow readers to see the message again if the dlpAction had hidden it, after
14897 * providing an explanation for doing so.AllowOverrideWithoutJustification and AllowOverrideWithJustification are mutually
14898 * exclusive.
14899 */
14900 verdictDetails?: NullableOption<ChatMessagePolicyViolationVerdictDetailsTypes>;
14901}
14902export interface ChatMessagePolicyViolationPolicyTip {
14903 /**
14904 * The URL a user can visit to read about the data loss prevention policies for the organization. (ie, policies about what
14905 * users shouldn't say in chats)
14906 */
14907 complianceUrl?: NullableOption<string>;
14908 // Explanatory text shown to the sender of the message.
14909 generalText?: NullableOption<string>;
14910 /**
14911 * The list of improper data in the message that was detected by the data loss prevention app. Each DLP app defines its
14912 * own conditions, examples include 'Credit Card Number' and 'Social Security Number'.
14913 */
14914 matchedConditionDescriptions?: NullableOption<string[]>;
14915}
14916export interface ChatMessageReaction {
14917 /**
14918 * The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example,
14919 * midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
14920 */
14921 createdDateTime?: string;
14922 // Supported values are like, angry, sad, laugh, heart, surprised.
14923 reactionType?: string;
14924 // The user who reacted to the message.
14925 user?: IdentitySet;
14926}
14927export interface OperationError {
14928 // Operation error code.
14929 code?: NullableOption<string>;
14930 // Operation error message.
14931 message?: NullableOption<string>;
14932}
14933export interface TeamClassSettings {
14934 /**
14935 * If set to true, enables sending of weekly assignments digest emails to parents/guardians, provided the tenant admin has
14936 * enabled the setting globally.
14937 */
14938 notifyGuardiansAboutAssignments?: NullableOption<boolean>;
14939}
14940export interface TeamFunSettings {
14941 // If set to true, enables users to include custom memes.
14942 allowCustomMemes?: NullableOption<boolean>;
14943 // If set to true, enables Giphy use.
14944 allowGiphy?: NullableOption<boolean>;
14945 // If set to true, enables users to include stickers and memes.
14946 allowStickersAndMemes?: NullableOption<boolean>;
14947 // Giphy content rating. Possible values are: moderate, strict.
14948 giphyContentRating?: NullableOption<GiphyRatingType>;
14949}
14950export interface TeamGuestSettings {
14951 // If set to true, guests can add and update channels.
14952 allowCreateUpdateChannels?: NullableOption<boolean>;
14953 // If set to true, guests can delete channels.
14954 allowDeleteChannels?: NullableOption<boolean>;
14955}
14956export interface TeamMemberSettings {
14957 // If set to true, members can add and remove apps.
14958 allowAddRemoveApps?: NullableOption<boolean>;
14959 // If set to true, members can add and update private channels.
14960 allowCreatePrivateChannels?: NullableOption<boolean>;
14961 // If set to true, members can add and update any channels.
14962 allowCreateUpdateChannels?: NullableOption<boolean>;
14963 // If set to true, members can add, update, and remove connectors.
14964 allowCreateUpdateRemoveConnectors?: NullableOption<boolean>;
14965 // If set to true, members can add, update, and remove tabs.
14966 allowCreateUpdateRemoveTabs?: NullableOption<boolean>;
14967 // If set to true, members can delete channels.
14968 allowDeleteChannels?: NullableOption<boolean>;
14969}
14970export interface TeamMessagingSettings {
14971 // If set to true, @channel mentions are allowed.
14972 allowChannelMentions?: NullableOption<boolean>;
14973 // If set to true, owners can delete any message.
14974 allowOwnerDeleteMessages?: NullableOption<boolean>;
14975 // If set to true, @team mentions are allowed.
14976 allowTeamMentions?: NullableOption<boolean>;
14977 // If set to true, users can delete their messages.
14978 allowUserDeleteMessages?: NullableOption<boolean>;
14979 // If set to true, users can edit their messages.
14980 allowUserEditMessages?: NullableOption<boolean>;
14981}
14982export interface TeamsTabConfiguration {
14983 // Url used for rendering tab contents in Teams. Required.
14984 contentUrl?: NullableOption<string>;
14985 // Identifier for the entity hosted by the tab provider.
14986 entityId?: NullableOption<string>;
14987 // Url called by Teams client when a Tab is removed using the Teams Client.
14988 removeUrl?: NullableOption<string>;
14989 // Url for showing tab contents outside of Teams.
14990 websiteUrl?: NullableOption<string>;
14991}
14992export interface ScheduleEntity {
14993 endDateTime?: NullableOption<string>;
14994 startDateTime?: NullableOption<string>;
14995 theme?: ScheduleEntityTheme;
14996}
14997export interface ShiftItem extends ScheduleEntity {
14998 /**
14999 * An incremental part of a shift which can cover details of when and where an employee is during their shift. For
15000 * example, an assignment or a scheduled break or lunch. Required.
15001 */
15002 activities?: NullableOption<ShiftActivity[]>;
15003 // The shift label of the shiftItem.
15004 displayName?: NullableOption<string>;
15005 // The shift notes for the shiftItem.
15006 notes?: NullableOption<string>;
15007}
15008export interface OpenShiftItem extends ShiftItem {
15009 // Count of the number of slots for the given open shift.
15010 openSlotCount?: number;
15011}
15012export interface ShiftActivity {
15013 // Customer defined code for the shiftActivity. Required.
15014 code?: NullableOption<string>;
15015 // The name of the shiftActivity. Required.
15016 displayName?: NullableOption<string>;
15017 /**
15018 * The end date and time for the shiftActivity. The Timestamp type represents date and time information using ISO 8601
15019 * format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
15020 * '2014-01-01T00:00:00Z'. Required.
15021 */
15022 endDateTime?: NullableOption<string>;
15023 // Indicates whether the microsoft.graph.user should be paid for the activity during their shift. Required.
15024 isPaid?: NullableOption<boolean>;
15025 /**
15026 * The start date and time for the shiftActivity. The Timestamp type represents date and time information using ISO 8601
15027 * format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
15028 * '2014-01-01T00:00:00Z'. Required.
15029 */
15030 startDateTime?: NullableOption<string>;
15031 theme?: ScheduleEntityTheme;
15032}
15033export interface ShiftAvailability {
15034 // Specifies the pattern for recurrence
15035 recurrence?: NullableOption<PatternedRecurrence>;
15036 // The time slot(s) preferred by the user.
15037 timeSlots?: NullableOption<TimeRange[]>;
15038 // Specifies the time zone for the indicated time.
15039 timeZone?: NullableOption<string>;
15040}
15041export interface TimeRange {
15042 // End time for the time range.
15043 endTime?: NullableOption<string>;
15044 // Start time for the time range.
15045 startTime?: NullableOption<string>;
15046}
15047export interface TimeOffItem extends ScheduleEntity {
15048 // ID of the timeOffReason for this timeOffItem. Required.
15049 timeOffReasonId?: NullableOption<string>;
15050}
15051export interface WorkforceIntegrationEncryption {
15052 // Possible values are: sharedSecret, unknownFutureValue.
15053 protocol?: NullableOption<WorkforceIntegrationEncryptionProtocol>;
15054 // Encryption shared secret.
15055 secret?: NullableOption<string>;
15056}
15057
15058export namespace CallRecords {
15059 type CallType = "unknown" | "groupCall" | "peerToPeer" | "unknownFutureValue";
15060 type ClientPlatform =
15061 | "unknown"
15062 | "windows"
15063 | "macOS"
15064 | "iOS"
15065 | "android"
15066 | "web"
15067 | "ipPhone"
15068 | "roomSystem"
15069 | "surfaceHub"
15070 | "holoLens"
15071 | "unknownFutureValue";
15072 type FailureStage = "unknown" | "callSetup" | "midcall" | "unknownFutureValue";
15073 type MediaStreamDirection = "callerToCallee" | "calleeToCaller";
15074 type Modality = "audio" | "video" | "videoBasedScreenSharing" | "data" | "screenSharing" | "unknownFutureValue";
15075 type NetworkConnectionType = "unknown" | "wired" | "wifi" | "mobile" | "tunnel" | "unknownFutureValue";
15076 type ProductFamily = "unknown" | "teams" | "skypeForBusiness" | "lync" | "unknownFutureValue";
15077 type ServiceRole =
15078 | "unknown"
15079 | "customBot"
15080 | "skypeForBusinessMicrosoftTeamsGateway"
15081 | "skypeForBusinessAudioVideoMcu"
15082 | "skypeForBusinessApplicationSharingMcu"
15083 | "skypeForBusinessCallQueues"
15084 | "skypeForBusinessAutoAttendant"
15085 | "mediationServer"
15086 | "mediationServerCloudConnectorEdition"
15087 | "exchangeUnifiedMessagingService"
15088 | "mediaController"
15089 | "conferencingAnnouncementService"
15090 | "conferencingAttendant"
15091 | "audioTeleconferencerController"
15092 | "skypeForBusinessUnifiedCommunicationApplicationPlatform"
15093 | "responseGroupServiceAnnouncementService"
15094 | "gateway"
15095 | "skypeTranslator"
15096 | "skypeForBusinessAttendant"
15097 | "responseGroupService"
15098 | "voicemail"
15099 | "unknownFutureValue";
15100 type UserFeedbackRating = "notRated" | "bad" | "poor" | "fair" | "good" | "excellent" | "unknownFutureValue";
15101 type WifiBand = "unknown" | "frequency24GHz" | "frequency50GHz" | "frequency60GHz" | "unknownFutureValue";
15102 type WifiRadioType =
15103 | "unknown"
15104 | "wifi80211a"
15105 | "wifi80211b"
15106 | "wifi80211g"
15107 | "wifi80211n"
15108 | "wifi80211ac"
15109 | "wifi80211ax"
15110 | "unknownFutureValue";
15111 interface CallRecord extends microsoftgraph.Entity {
15112 /**
15113 * UTC time when the last user left the call. The DateTimeOffset type represents date and time information using ISO 8601
15114 * format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
15115 */
15116 endDateTime?: string;
15117 // Meeting URL associated to the call. May not be available for a peerToPeer call record type.
15118 joinWebUrl?: NullableOption<string>;
15119 /**
15120 * UTC time when the call record was created. The DatetimeOffset type represents date and time information using ISO 8601
15121 * format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
15122 */
15123 lastModifiedDateTime?: string;
15124 /**
15125 * List of all the modalities used in the call. Possible values are: unknown, audio, video, videoBasedScreenSharing, data,
15126 * screenSharing, unknownFutureValue.
15127 */
15128 modalities?: Modality[];
15129 // The organizing party's identity.
15130 organizer?: NullableOption<microsoftgraph.IdentitySet>;
15131 // List of distinct identities involved in the call.
15132 participants?: NullableOption<microsoftgraph.IdentitySet[]>;
15133 /**
15134 * UTC time when the first user joined the call. The DatetimeOffset type represents date and time information using ISO
15135 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
15136 * '2014-01-01T00:00:00Z'
15137 */
15138 startDateTime?: string;
15139 // Indicates the type of the call. Possible values are: unknown, groupCall, peerToPeer, unknownFutureValue.
15140 type?: CallType;
15141 /**
15142 * Monotonically increasing version of the call record. Higher version call records with the same ID includes additional
15143 * data compared to the lower version.
15144 */
15145 version?: number;
15146 /**
15147 * List of sessions involved in the call. Peer-to-peer calls typically only have one session, whereas group calls
15148 * typically have at least one session per participant. Read-only. Nullable.
15149 */
15150 sessions?: NullableOption<Session[]>;
15151 }
15152 interface Session extends microsoftgraph.Entity {
15153 // Endpoint that answered the session.
15154 callee?: NullableOption<Endpoint>;
15155 // Endpoint that initiated the session.
15156 caller?: NullableOption<Endpoint>;
15157 /**
15158 * UTC time when the last user left the session. The DateTimeOffset type represents date and time information using ISO
15159 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
15160 * '2014-01-01T00:00:00Z'
15161 */
15162 endDateTime?: string;
15163 // Failure information associated with the session if the session failed.
15164 failureInfo?: NullableOption<FailureInfo>;
15165 /**
15166 * List of modalities present in the session. Possible values are: unknown, audio, video, videoBasedScreenSharing, data,
15167 * screenSharing, unknownFutureValue.
15168 */
15169 modalities?: Modality[];
15170 /**
15171 * UTC fime when the first user joined the session. The DateTimeOffset type represents date and time information using ISO
15172 * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this:
15173 * '2014-01-01T00:00:00Z'
15174 */
15175 startDateTime?: string;
15176 // The list of segments involved in the session. Read-only. Nullable.
15177 segments?: NullableOption<Segment[]>;
15178 }
15179 interface Segment extends microsoftgraph.Entity {
15180 // Endpoint that answered this segment.
15181 callee?: NullableOption<Endpoint>;
15182 // Endpoint that initiated this segment.
15183 caller?: NullableOption<Endpoint>;
15184 /**
15185 * UTC time when the segment ended. The DateTimeOffset type represents date and time information using ISO 8601 format and
15186 * is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
15187 */
15188 endDateTime?: string;
15189 // Failure information associated with the segment if it failed.
15190 failureInfo?: NullableOption<FailureInfo>;
15191 // Media associated with this segment.
15192 media?: NullableOption<Media[]>;
15193 /**
15194 * UTC time when the segment started. The DateTimeOffset type represents date and time information using ISO 8601 format
15195 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
15196 */
15197 startDateTime?: string;
15198 }
15199 interface UserAgent {
15200 // Identifies the version of application software used by this endpoint.
15201 applicationVersion?: NullableOption<string>;
15202 // User-agent header value reported by this endpoint.
15203 headerValue?: NullableOption<string>;
15204 }
15205 interface ClientUserAgent extends UserAgent {
15206 /**
15207 * Identifies the platform used by this endpoint. Possible values are: unknown, windows, macOS, iOS, android, web,
15208 * ipPhone, roomSystem, surfaceHub, holoLens, unknownFutureValue.
15209 */
15210 platform?: ClientPlatform;
15211 /**
15212 * Identifies the family of application software used by this endpoint. Possible values are: unknown, teams,
15213 * skypeForBusiness, lync, unknownFutureValue.
15214 */
15215 productFamily?: ProductFamily;
15216 }
15217 interface DeviceInfo {
15218 // Name of the capture device driver used by the media endpoint.
15219 captureDeviceDriver?: NullableOption<string>;
15220 // Name of the capture device used by the media endpoint.
15221 captureDeviceName?: NullableOption<string>;
15222 // Fraction of the call that the media endpoint detected the capture device was not working properly.
15223 captureNotFunctioningEventRatio?: NullableOption<number>;
15224 /**
15225 * Fraction of the call that the media endpoint detected the CPU resources available were insufficient and caused poor
15226 * quality of the audio sent and received.
15227 */
15228 cpuInsufficentEventRatio?: NullableOption<number>;
15229 /**
15230 * Fraction of the call that the media endpoint detected clipping in the captured audio that caused poor quality of the
15231 * audio being sent.
15232 */
15233 deviceClippingEventRatio?: NullableOption<number>;
15234 /**
15235 * Fraction of the call that the media endpoint detected glitches or gaps in the audio played or captured that caused poor
15236 * quality of the audio being sent or received.
15237 */
15238 deviceGlitchEventRatio?: NullableOption<number>;
15239 // Number of times during the call that the media endpoint detected howling or screeching audio.
15240 howlingEventCount?: NullableOption<number>;
15241 // The root mean square (RMS) of the incoming signal of up to the first 30 seconds of the call.
15242 initialSignalLevelRootMeanSquare?: NullableOption<number>;
15243 /**
15244 * Fraction of the call that the media endpoint detected low speech level that caused poor quality of the audio being
15245 * sent.
15246 */
15247 lowSpeechLevelEventRatio?: NullableOption<number>;
15248 /**
15249 * Fraction of the call that the media endpoint detected low speech to noise level that caused poor quality of the audio
15250 * being sent.
15251 */
15252 lowSpeechToNoiseEventRatio?: NullableOption<number>;
15253 // Glitches per 5 minute interval for the media endpoint's microphone.
15254 micGlitchRate?: NullableOption<number>;
15255 /**
15256 * Average energy level of received audio for audio classified as mono noise or left channel of stereo noise by the media
15257 * endpoint.
15258 */
15259 receivedNoiseLevel?: NullableOption<number>;
15260 /**
15261 * Average energy level of received audio for audio classified as mono speech, or left channel of stereo speech by the
15262 * media endpoint.
15263 */
15264 receivedSignalLevel?: NullableOption<number>;
15265 // Name of the render device driver used by the media endpoint.
15266 renderDeviceDriver?: NullableOption<string>;
15267 // Name of the render device used by the media endpoint.
15268 renderDeviceName?: NullableOption<string>;
15269 // Fraction of the call that media endpoint detected device render is muted.
15270 renderMuteEventRatio?: NullableOption<number>;
15271 // Fraction of the call that the media endpoint detected the render device was not working properly.
15272 renderNotFunctioningEventRatio?: NullableOption<number>;
15273 // Fraction of the call that media endpoint detected device render volume is set to 0.
15274 renderZeroVolumeEventRatio?: NullableOption<number>;
15275 /**
15276 * Average energy level of sent audio for audio classified as mono noise or left channel of stereo noise by the media
15277 * endpoint.
15278 */
15279 sentNoiseLevel?: NullableOption<number>;
15280 /**
15281 * Average energy level of sent audio for audio classified as mono speech, or left channel of stereo speech by the media
15282 * endpoint.
15283 */
15284 sentSignalLevel?: NullableOption<number>;
15285 // Glitches per 5 minute internal for the media endpoint's loudspeaker.
15286 speakerGlitchRate?: NullableOption<number>;
15287 }
15288 interface Endpoint {
15289 // User-agent reported by this endpoint.
15290 userAgent?: NullableOption<UserAgent>;
15291 }
15292 interface FailureInfo {
15293 // Classification of why a call or portion of a call failed.
15294 reason?: NullableOption<string>;
15295 // The stage when the failure occurred. Possible values are: unknown, callSetup, midcall, unknownFutureValue.
15296 stage?: FailureStage;
15297 }
15298// tslint:disable-next-line: no-empty-interface
15299 interface FeedbackTokenSet {}
15300 interface Media {
15301 // Device information associated with the callee endpoint of this media.
15302 calleeDevice?: NullableOption<DeviceInfo>;
15303 // Network information associated with the callee endpoint of this media.
15304 calleeNetwork?: NullableOption<NetworkInfo>;
15305 // Device information associated with the caller endpoint of this media.
15306 callerDevice?: NullableOption<DeviceInfo>;
15307 // Network information associated with the caller endpoint of this media.
15308 callerNetwork?: NullableOption<NetworkInfo>;
15309 // How the media was identified during media negotiation stage.
15310 label?: NullableOption<string>;
15311 // Network streams associated with this media.
15312 streams?: NullableOption<MediaStream[]>;
15313 }
15314 interface NetworkInfo {
15315 /**
15316 * Fraction of the call that the media endpoint detected the available bandwidth or bandwidth policy was low enough to
15317 * cause poor quality of the audio sent.
15318 */
15319 bandwidthLowEventRatio?: NullableOption<number>;
15320 // The wireless LAN basic service set identifier of the media endpoint used to connect to the network.
15321 basicServiceSetIdentifier?: NullableOption<string>;
15322 /**
15323 * Type of network used by the media endpoint. Possible values are: unknown, wired, wifi, mobile, tunnel,
15324 * unknownFutureValue.
15325 */
15326 connectionType?: NetworkConnectionType;
15327 /**
15328 * Fraction of the call that the media endpoint detected the network delay was significant enough to impact the ability to
15329 * have real-time two-way communication.
15330 */
15331 delayEventRatio?: NullableOption<number>;
15332 // DNS suffix associated with the network adapter of the media endpoint.
15333 dnsSuffix?: NullableOption<string>;
15334 // IP address of the media endpoint.
15335 ipAddress?: NullableOption<string>;
15336 // Link speed in bits per second reported by the network adapter used by the media endpoint.
15337 linkSpeed?: NullableOption<number>;
15338 // The media access control (MAC) address of the media endpoint's network device.
15339 macAddress?: NullableOption<string>;
15340 // Network port number used by media endpoint.
15341 port?: NullableOption<number>;
15342 // Fraction of the call that the media endpoint detected the network was causing poor quality of the audio received.
15343 receivedQualityEventRatio?: NullableOption<number>;
15344 /**
15345 * IP address of the media endpoint as seen by the media relay server. This is typically the public internet IP address
15346 * associated to the endpoint.
15347 */
15348 reflexiveIPAddress?: NullableOption<string>;
15349 // IP address of the media relay server allocated by the media endpoint.
15350 relayIPAddress?: NullableOption<string>;
15351 // Network port number allocated on the media relay server by the media endpoint.
15352 relayPort?: NullableOption<number>;
15353 // Fraction of the call that the media endpoint detected the network was causing poor quality of the audio sent.
15354 sentQualityEventRatio?: NullableOption<number>;
15355 // Subnet used for media stream by the media endpoint.
15356 subnet?: NullableOption<string>;
15357 /**
15358 * WiFi band used by the media endpoint. Possible values are: unknown, frequency24GHz, frequency50GHz, frequency60GHz,
15359 * unknownFutureValue.
15360 */
15361 wifiBand?: WifiBand;
15362 // Estimated remaining battery charge in percentage reported by the media endpoint.
15363 wifiBatteryCharge?: NullableOption<number>;
15364 // WiFi channel used by the media endpoint.
15365 wifiChannel?: NullableOption<number>;
15366 /**
15367 * Name of the Microsoft WiFi driver used by the media endpoint. Value may be localized based on the language used by
15368 * endpoint.
15369 */
15370 wifiMicrosoftDriver?: NullableOption<string>;
15371 // Version of the Microsoft WiFi driver used by the media endpoint.
15372 wifiMicrosoftDriverVersion?: NullableOption<string>;
15373 /**
15374 * Type of WiFi radio used by the media endpoint. Possible values are: unknown, wifi80211a, wifi80211b, wifi80211g,
15375 * wifi80211n, wifi80211ac, wifi80211ax, unknownFutureValue.
15376 */
15377 wifiRadioType?: WifiRadioType;
15378 // WiFi signal strength in percentage reported by the media endpoint.
15379 wifiSignalStrength?: NullableOption<number>;
15380 // Name of the WiFi driver used by the media endpoint. Value may be localized based on the language used by endpoint.
15381 wifiVendorDriver?: NullableOption<string>;
15382 // Version of the WiFi driver used by the media endpoint.
15383 wifiVendorDriverVersion?: NullableOption<string>;
15384 }
15385 interface MediaStream {
15386 /**
15387 * Average Network Mean Opinion Score degradation for stream. Represents how much the network loss and jitter has impacted
15388 * the quality of received audio.
15389 */
15390 averageAudioDegradation?: NullableOption<number>;
15391 /**
15392 * Average jitter for the stream computed as specified in [RFC 3550][], denoted in [ISO 8601][] format. For example, 1
15393 * second is denoted as 'PT1S', where 'P' is the duration designator, 'T' is the time designator, and 'S' is the second
15394 * designator.
15395 */
15396 averageAudioNetworkJitter?: NullableOption<string>;
15397 // Average estimated bandwidth available between two endpoints in bits per second.
15398 averageBandwidthEstimate?: NullableOption<number>;
15399 /**
15400 * Average jitter for the stream computed as specified in [RFC 3550][], denoted in [ISO 8601][] format. For example, 1
15401 * second is denoted as 'PT1S', where 'P' is the duration designator, 'T' is the time designator, and 'S' is the second
15402 * designator.
15403 */
15404 averageJitter?: NullableOption<string>;
15405 // Average packet loss rate for stream.
15406 averagePacketLossRate?: NullableOption<number>;
15407 /**
15408 * Ratio of the number of audio frames with samples generated by packet loss concealment to the total number of audio
15409 * frames.
15410 */
15411 averageRatioOfConcealedSamples?: NullableOption<number>;
15412 // Average frames per second received for all video streams computed over the duration of the session.
15413 averageReceivedFrameRate?: NullableOption<number>;
15414 /**
15415 * Average network propagation round-trip time computed as specified in [RFC 3550][], denoted in [ISO 8601][] format. For
15416 * example, 1 second is denoted as 'PT1S', where 'P' is the duration designator, 'T' is the time designator, and 'S' is
15417 * the second designator.
15418 */
15419 averageRoundTripTime?: NullableOption<string>;
15420 // Average percentage of video frames lost as displayed to the user.
15421 averageVideoFrameLossPercentage?: NullableOption<number>;
15422 // Average frames per second received for a video stream, computed over the duration of the session.
15423 averageVideoFrameRate?: NullableOption<number>;
15424 // Average fraction of packets lost, as specified in [RFC 3550][], computed over the duration of the session.
15425 averageVideoPacketLossRate?: NullableOption<number>;
15426 /**
15427 * UTC time when the stream ended. The DateTimeOffset type represents date and time information using ISO 8601 format and
15428 * is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
15429 */
15430 endDateTime?: NullableOption<string>;
15431 // Fraction of the call where frame rate is less than 7.5 frames per second.
15432 lowFrameRateRatio?: NullableOption<number>;
15433 // Fraction of the call that the client is running less than 70% expected video processing capability.
15434 lowVideoProcessingCapabilityRatio?: NullableOption<number>;
15435 /**
15436 * Maximum of audio network jitter computed over each of the 20 second windows during the session, denoted in [ISO 8601][]
15437 * format. For example, 1 second is denoted as 'PT1S', where 'P' is the duration designator, 'T' is the time designator,
15438 * and 'S' is the second designator.
15439 */
15440 maxAudioNetworkJitter?: NullableOption<string>;
15441 /**
15442 * Maximum jitter for the stream computed as specified in RFC 3550, denoted in [ISO 8601][] format. For example, 1 second
15443 * is denoted as 'PT1S', where 'P' is the duration designator, 'T' is the time designator, and 'S' is the second
15444 * designator.
15445 */
15446 maxJitter?: NullableOption<string>;
15447 // Maximum packet loss rate for the stream.
15448 maxPacketLossRate?: NullableOption<number>;
15449 // Maximum ratio of packets concealed by the healer.
15450 maxRatioOfConcealedSamples?: NullableOption<number>;
15451 /**
15452 * Maximum network propagation round-trip time computed as specified in [RFC 3550][], denoted in [ISO 8601][] format. For
15453 * example, 1 second is denoted as 'PT1S', where 'P' is the duration designator, 'T' is the time designator, and 'S' is
15454 * the second designator.
15455 */
15456 maxRoundTripTime?: NullableOption<string>;
15457 // Packet count for the stream.
15458 packetUtilization?: NullableOption<number>;
15459 // Packet loss rate after FEC has been applied aggregated across all video streams and codecs.
15460 postForwardErrorCorrectionPacketLossRate?: NullableOption<number>;
15461 /**
15462 * UTC time when the stream started. The DateTimeOffset type represents date and time information using ISO 8601 format
15463 * and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'
15464 */
15465 startDateTime?: NullableOption<string>;
15466 // Indicates the direction of the media stream. Possible values are: callerToCallee, calleeToCaller.
15467 streamDirection?: MediaStreamDirection;
15468 // Unique identifier for the stream.
15469 streamId?: NullableOption<string>;
15470 /**
15471 * True if the media stream bypassed the Mediation Server and went straight between client and PSTN Gateway/PBX, false
15472 * otherwise.
15473 */
15474 wasMediaBypassed?: NullableOption<boolean>;
15475 }
15476 interface ParticipantEndpoint extends Endpoint {
15477 // The feedback provided by the user of this endpoint about the quality of the session.
15478 feedback?: NullableOption<UserFeedback>;
15479 // Identity associated with the endpoint.
15480 identity?: NullableOption<microsoftgraph.IdentitySet>;
15481 }
15482 interface UserFeedback {
15483 /**
15484 * The rating provided by the user of this endpoint about the quality of this Session. Possible values are: notRated, bad,
15485 * poor, fair, good, excellent, unknownFutureValue.
15486 */
15487 rating?: UserFeedbackRating;
15488 // The feedback text provided by the user of this endpoint for the session.
15489 text?: NullableOption<string>;
15490 /**
15491 * The set of feedback tokens provided by the user of this endpoint for the session. This is a set of Boolean properties.
15492 * The property names should not be relied upon since they may change depending on what tokens are offered to the user.
15493 */
15494 tokens?: NullableOption<FeedbackTokenSet>;
15495 }
15496// tslint:disable-next-line: no-empty-interface
15497 interface ServiceEndpoint extends Endpoint {}
15498 interface ServiceUserAgent extends UserAgent {
15499 /**
15500 * Identifies the role of the service used by this endpoint. Possible values are: unknown, customBot,
15501 * skypeForBusinessMicrosoftTeamsGateway, skypeForBusinessAudioVideoMcu, skypeForBusinessApplicationSharingMcu,
15502 * skypeForBusinessCallQueues, skypeForBusinessAutoAttendant, mediationServer, mediationServerCloudConnectorEdition,
15503 * exchangeUnifiedMessagingService, mediaController, conferencingAnnouncementService, conferencingAttendant,
15504 * audioTeleconferencerController, skypeForBusinessUnifiedCommunicationApplicationPlatform,
15505 * responseGroupServiceAnnouncementService, gateway, skypeTranslator, skypeForBusinessAttendant, responseGroupService,
15506 * voicemail, unknownFutureValue.
15507 */
15508 role?: ServiceRole;
15509 }
15510}