Private/Get-InforcerReportTypeStaticKeys.ps1
|
function Get-InforcerReportTypeStaticKeys { <# .SYNOPSIS Returns the static fallback list of Reports API type keys used by argument completers before the live catalog cache ($script:InforcerReportTypeCache) is primed. .DESCRIPTION Argument completers on -ReportType / -Key prefer the live catalog when populated, but until the first /beta/reports/types call this static list is what shows up at TAB. Centralised here so Get-InforcerReportType and Invoke-InforcerReport stay in lockstep — empirically matched to the production catalog observed against api.inforcer.com. .OUTPUTS System.String[] #> [Diagnostics.CodeAnalysis.SuppressMessageAttribute('PSUseSingularNouns', '', Justification = 'Returns a collection of keys; plural noun is intentional.')] [CmdletBinding()] [OutputType([string[]])] param() ,$script:InforcerReportTypeStaticKeys } # Module-scoped canonical list — both completers read this directly so a single edit keeps # Get-InforcerReportType and Invoke-InforcerReport completion identical. $script:InforcerReportTypeStaticKeys = @( 'ActiveUserCount' 'ActiveUsers' 'Assessment' 'CopilotAdoption' 'CredentialUserRegistrationDetails' 'EncryptionDisabledDevices' 'EncryptionEnabledDevices' 'GetDetectedRisks' 'GetDetectedServicePrincipalRisks' 'GetOneDriveUsageAccountCounts' 'GetOneDriveUsageStorage' 'GetRiskyServicePrincipals' 'GetRiskyUsers' 'GetSharePointSiteUsageDetail' 'GetSharePointSiteUsageStorage' 'GetTenantMFAReport' 'GlobalAdmins' 'NonCompliantDevices' 'SecureScores' 'SecureScoresAverageComparativeScores' 'SecureScoresControlScores' 'ShadowAiDetection' 'SubscribedSkus' 'TenantAuditReport' 'TenantMfaReport' ) |