365TUNE.psd1

@{
    ModuleVersion     = "2.1.6"
    GUID              = "7c9c4650-e980-44ca-8092-50e0ae0ec9bc"
    Author            = "Metawise Consulting LLC"
    CompanyName       = "Metawise Consulting LLC"
    Copyright         = "(c) 2025 Metawise Consulting LLC. All rights reserved."
    Description       = "365TUNE PowerShell toolkit for Microsoft 365 license optimization, security compliance, cost reporting, and Azure permissions management."
    RootModule        = "365TUNE.psm1"
    FunctionsToExport = @(
        "Invoke-365TUNEConnectAll",
        "Invoke-365TUNERevokeAll",
        "Invoke-365TuneConnectAzure",
        "Invoke-365TuneRevokeAzure",
        "Invoke-365TuneConnectExchange",
        "Invoke-365TuneRevokeExchange"
    )
    CmdletsToExport   = @()
    AliasesToExport   = @()
    VariablesToExport = @()
    PrivateData       = @{
        PSData = @{
            Tags         = @("Azure","Microsoft365","M365","MSP","Licensing","Security","Compliance","CIS","Entra","GDAP","ExchangeOnline","365TUNE")
            ProjectUri   = "https://365tune.com"
            LicenseUri   = "https://365tune.com/Gallerylicense"
            ReleaseNotes = @"
v1.7.0
- Added Invoke-365TuneConnect and Invoke-365TuneRevoke for one-step setup and teardown
- All functions auto-detect customer tenant dynamically
- MFA warnings suppressed with -WarningAction SilentlyContinue
- Fixed SecureString token conversion for newer Az module versions
- Dual-token pattern for Exchange: app tenant token for app registration, customer tenant token for consent
- Zero hardcoded IDs — all values resolved at runtime
- Safe to re-run — all steps handle already-exists gracefully
"@

        }
    }
}