exports/ProxyCmdletDefinitions.ps1


# ----------------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.1, generator: @autorest/powershell@)
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# ----------------------------------------------------------------------------------

<#
.Synopsis
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Description
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1Qu5FucAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPaths1Qu5FucAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatesdeploymentaudienceexclusionmemberbyid
#>

function Add-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById {
[Alias('Add-MgBetaWuDeploymentAudienceExclusionMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1Qu5FucAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Description
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1K7YvheAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPaths1K7YvheAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatesdeploymentaudiencememberbyid
#>

function Add-MgBetaWindowsUpdatesDeploymentAudienceMemberById {
[Alias('Add-MgBetaWuDeploymentAudienceMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1K7YvheAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMemberById_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMemberById_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMemberById_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMemberById_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Description
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsWx3DylAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPathsWx3DylAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatesdeploymentaudiencemember
#>

function Add-MgBetaWindowsUpdatesDeploymentAudienceMember {
[Alias('Add-MgBetaWuDeploymentAudienceMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsWx3DylAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMember_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMember_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMember_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesDeploymentAudienceMember_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Description
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsYs6LcwAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPathsYs6LcwAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatespolicyaudienceexclusionmemberbyid
#>

function Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById {
[Alias('Add-MgBetaWuPolicyAudienceExclusionMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsYs6LcwAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Description
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsE23XqfAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPathsE23XqfAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatespolicyaudienceexclusionmember
#>

function Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMember {
[Alias('Add-MgBetaWuPolicyAudienceExclusionMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsE23XqfAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Description
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsB49Il7AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPathsB49Il7AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatespolicyaudiencememberbyid
#>

function Add-MgBetaWindowsUpdatesPolicyAudienceMemberById {
[Alias('Add-MgBetaWuPolicyAudienceMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsB49Il7AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMemberById_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMemberById_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMemberById_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMemberById_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Description
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsVh4QmpAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPathsVh4QmpAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatespolicyaudiencemember
#>

function Add-MgBetaWindowsUpdatesPolicyAudienceMember {
[Alias('Add-MgBetaWuPolicyAudienceMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsVh4QmpAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMember_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMember_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMember_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesPolicyAudienceMember_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Description
Add members of the same type to an updatableAssetGroup.
You can also use the method addMembers to add members.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    Ids = @(
        "String"
        "String"
        "String"
    )
    MemberEntityType = "#microsoft.graph.windowsUpdates.azureADDevice"
}
Add-MgBetaWindowsUpdatesUpdatableAssetMemberById -UpdatableAssetId $updatableAssetId -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsHfkndjAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPathsHfkndjAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatesupdatableassetmemberbyid
#>

function Add-MgBetaWindowsUpdatesUpdatableAssetMemberById {
[Alias('Add-MgBetaWuUpdatableAssetMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsHfkndjAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMemberById_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMemberById_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMemberById_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMemberById_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Description
Add members to an updatableAssetGroup.
You can add azureADDevice resources as members, but may not add updatableAssetGroup resources as members.
Adding a Microsoft Entra device as a member of an updatable asset group automatically creates an azureADDevice object, if it does not already exist.
You can also use the method addMembersById to add members.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    Assets = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
}
Add-MgBetaWindowsUpdatesUpdatableAssetMember -UpdatableAssetId $updatableAssetId -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsH2EvdrAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPathsH2EvdrAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/add-mgbetawindowsupdatesupdatableassetmember
#>

function Add-MgBetaWindowsUpdatesUpdatableAssetMember {
[Alias('Add-MgBetaWuUpdatableAssetMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='AddExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Add', Mandatory)]
    [Parameter(ParameterSetName='AddExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Add', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='AddViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsH2EvdrAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesAddmembersPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='AddExpanded')]
    [Parameter(ParameterSetName='AddViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Add = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMember_Add';
            AddExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMember_AddExpanded';
            AddViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMember_AddViaIdentity';
            AddViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Add-MgBetaWindowsUpdatesUpdatableAssetMember_AddViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatescatalogentrycount
#>

function Get-MgBetaWindowsUpdatesCatalogEntryCount {
[Alias('Get-MgBetaWuCatalogEntryCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesCatalogEntryCount_Get';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Lists the content that you can approve for deployment.
Read-only.
.Description
Lists the content that you can approve for deployment.
Read-only.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesCatalogEntry
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesCatalogEntry
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatescatalogentry
#>

function Get-MgBetaWindowsUpdatesCatalogEntry {
[Alias('Get-MgBetaWuCatalogEntry')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesCatalogEntry])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of catalogEntry
    ${CatalogEntryId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesCatalogEntry_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesCatalogEntry_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesCatalogEntry_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesdeploymentaudienceexclusioncount
#>

function Get-MgBetaWindowsUpdatesDeploymentAudienceExclusionCount {
[Alias('Get-MgBetaWuDeploymentAudienceExclusionCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceExclusionCount_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceExclusionCount_GetViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Specifies the assets to exclude from the audience.
.Description
Specifies the assets to exclude from the audience.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesDeploymentAudienceExclusion -DeploymentId $deploymentId
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesdeploymentaudienceexclusion
#>

function Get-MgBetaWindowsUpdatesDeploymentAudienceExclusion {
[Alias('Get-MgBetaWuDeploymentAudienceExclusion')]
[OutputType([System.String], [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceExclusion_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceExclusion_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceExclusion_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesdeploymentaudiencemembercount
#>

function Get-MgBetaWindowsUpdatesDeploymentAudienceMemberCount {
[Alias('Get-MgBetaWuDeploymentAudienceMemberCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceMemberCount_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceMemberCount_GetViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Specifies the assets to include in the audience.
.Description
Specifies the assets to include in the audience.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesDeploymentAudienceMember -DeploymentId $deploymentId
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesdeploymentaudiencemember
#>

function Get-MgBetaWindowsUpdatesDeploymentAudienceMember {
[Alias('Get-MgBetaWuDeploymentAudienceMember')]
[OutputType([System.String], [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceMember_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceMember_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentAudienceMember_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesdeploymentcount
#>

function Get-MgBetaWindowsUpdatesDeploymentCount {
[Alias('Get-MgBetaWuDeploymentCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeploymentCount_Get';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Read the properties and relationships of a deployment object.
.Description
Read the properties and relationships of a deployment object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesDeployment -DeploymentId $deploymentId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesDeployment
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesdeployment
#>

function Get-MgBetaWindowsUpdatesDeployment {
[Alias('Get-MgBetaWuDeployment')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeployment_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeployment_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesDeployment_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicyaudienceexclusioncount
#>

function Get-MgBetaWindowsUpdatesPolicyAudienceExclusionCount {
[Alias('Get-MgBetaWuPolicyAudienceExclusionCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceExclusionCount_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceExclusionCount_GetViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Specifies the assets to exclude from the audience.
.Description
Specifies the assets to exclude from the audience.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicyaudienceexclusion
#>

function Get-MgBetaWindowsUpdatesPolicyAudienceExclusion {
[Alias('Get-MgBetaWuPolicyAudienceExclusion')]
[OutputType([System.String], [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceExclusion_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceExclusion_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceExclusion_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicyaudiencemembercount
#>

function Get-MgBetaWindowsUpdatesPolicyAudienceMemberCount {
[Alias('Get-MgBetaWuPolicyAudienceMemberCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceMemberCount_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceMemberCount_GetViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Specifies the assets to include in the audience.
.Description
Specifies the assets to include in the audience.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicyaudiencemember
#>

function Get-MgBetaWindowsUpdatesPolicyAudienceMember {
[Alias('Get-MgBetaWuPolicyAudienceMember')]
[OutputType([System.String], [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceMember_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceMember_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudienceMember_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Specifies the audience to target.
.Description
Specifies the audience to target.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicyaudience
#>

function Get-MgBetaWindowsUpdatesPolicyAudience {
[Alias('Get-MgBetaWuPolicyAudience')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudience_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyAudience_GetViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicycompliancechangecount
#>

function Get-MgBetaWindowsUpdatesPolicyComplianceChangeCount {
[Alias('Get-MgBetaWuPolicyComplianceChangeCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyComplianceChangeCount_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyComplianceChangeCount_GetViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
The policy this compliance change is a member of.
.Description
The policy this compliance change is a member of.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicycompliancechangeupdatepolicy
#>

function Get-MgBetaWindowsUpdatesPolicyComplianceChangeUpdatePolicy {
[Alias('Get-MgBetaWuPolicyComplianceChangeUpdatePolicy')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of complianceChange
    ${ComplianceChangeId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyComplianceChangeUpdatePolicy_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyComplianceChangeUpdatePolicy_GetViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Read the properties and relationships of a contentApproval object.
.Description
Read the properties and relationships of a contentApproval object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicycompliancechange
#>

function Get-MgBetaWindowsUpdatesPolicyComplianceChange {
[Alias('Get-MgBetaWuPolicyComplianceChange')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of complianceChange
    ${ComplianceChangeId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyComplianceChange_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyComplianceChange_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyComplianceChange_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicycount
#>

function Get-MgBetaWindowsUpdatesPolicyCount {
[Alias('Get-MgBetaWuPolicyCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicyCount_Get';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Read the properties and relationships of an updatePolicy object.
.Description
Read the properties and relationships of an updatePolicy object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatespolicy
#>

function Get-MgBetaWindowsUpdatesPolicy {
[Alias('Get-MgBetaWuPolicy')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicy_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicy_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesPolicy_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesresourceconnectioncount
#>

function Get-MgBetaWindowsUpdatesResourceConnectionCount {
[Alias('Get-MgBetaWuResourceConnectionCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesResourceConnectionCount_Get';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Read the properties and relationships of a resourceConnection object.
.Description
Read the properties and relationships of a resourceConnection object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesResourceConnection -ResourceConnectionId $resourceConnectionId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesResourceConnection -ResourceConnectionId $resourceConnectionId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesResourceConnection -ResourceConnectionId $resourceConnectionId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesResourceConnection
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesresourceconnection
#>

function Get-MgBetaWindowsUpdatesResourceConnection {
[Alias('Get-MgBetaWuResourceConnection')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of resourceConnection
    ${ResourceConnectionId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesResourceConnection_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesResourceConnection_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesResourceConnection_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Get the number of the resource
.Description
Get the number of the resource
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
System.Collections.IDictionary
.Outputs
System.Int32
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesupdatableassetcount
#>

function Get-MgBetaWindowsUpdatesUpdatableAssetCount {
[Alias('Get-MgBetaWuUpdatableAssetCount')]
[OutputType([System.Int32])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesUpdatableAssetCount_Get';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Read the properties of an azureADDevice object.
.Description
Read the properties of an azureADDevice object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesUpdatableAsset -UpdatableAssetId $updatableAssetId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesUpdatableAsset -UpdatableAssetId $updatableAssetId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesUpdatableAsset -UpdatableAssetId $updatableAssetId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesUpdatableAsset -Filter "isof('microsoft.graph.windowsUpdates.azureADDevice')"
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesUpdatableAsset
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesUpdatableAsset -OutFile $outFileId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Get-MgBetaWindowsUpdatesUpdatableAsset -Filter "isof('microsoft.graph.windowsUpdates.updatableAssetGroup')"
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/get-mgbetawindowsupdatesupdatableasset
#>

function Get-MgBetaWindowsUpdatesUpdatableAsset {
[Alias('Get-MgBetaWuUpdatableAsset')]
[OutputType([System.String], [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='GetViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Alias('Expand')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Expand related entities
    ${ExpandProperty},

    [Parameter()]
    [Alias('Select')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Select properties to be returned
    ${Property},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Filter items by property values
    ${Filter},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String]
    # Search items by search phrases
    ${Search},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Skip the first n items
    ${Skip},

    [Parameter(ParameterSetName='List')]
    [Alias('OrderBy')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.String[]]
    # Order items by property values
    ${Sort},

    [Parameter(ParameterSetName='List')]
    [Alias('Limit')]
    [Microsoft.Graph.Beta.PowerShell.Category('Query')]
    [System.Int32]
    # Show only the first n items
    ${Top},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Int32]
    # Sets the page size of results.
    ${PageSize},

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # List all pages.
    ${All},

    [Parameter(ParameterSetName='List')]
    [Alias('CV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.String]
    # Specifies a count of the total number of items in a collection.
    # By default, this variable will be set in the global scope.
    ${CountVariable}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Get = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesUpdatableAsset_Get';
            GetViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesUpdatableAsset_GetViaIdentity';
            List = 'Microsoft.Graph.Beta.WindowsUpdates.private\Get-MgBetaWindowsUpdatesUpdatableAsset_List';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssetsById
.Description
Invoke action enrollAssetsById
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsUi9WwcAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPathsUi9WwcAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPathsUi9WwcAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatesdeploymentaudienceexclusionassetbyid
#>

function Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceExclusionAssetById {
[Alias('Invoke-MgBetaEnrollWuDeploymentAudienceExclusionAssetGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory)]
    [Parameter(ParameterSetName='EnrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsUi9WwcAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsUi9WwcAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceExclusionAssetById_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceExclusionAssetById_EnrollExpanded';
            EnrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceExclusionAssetById_EnrollViaIdentity';
            EnrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceExclusionAssetById_EnrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssetsById
.Description
Invoke action enrollAssetsById
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1Cgy4T7AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths1Cgy4T7AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths1Cgy4T7AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatesdeploymentaudiencememberassetbyid
#>

function Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceMemberAssetById {
[Alias('Invoke-MgBetaEnrollWuDeploymentAudienceMemberAssetGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory)]
    [Parameter(ParameterSetName='EnrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1Cgy4T7AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1Cgy4T7AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceMemberAssetById_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceMemberAssetById_EnrollExpanded';
            EnrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceMemberAssetById_EnrollViaIdentity';
            EnrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesDeploymentAudienceMemberAssetById_EnrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssetsById
.Description
Invoke action enrollAssetsById
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsVa5WyzAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPathsVa5WyzAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPathsVa5WyzAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatespolicyaudienceexclusionassetbyid
#>

function Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAssetById {
[Alias('Invoke-MgBetaEnrollWuPolicyAudienceExclusionAssetGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory)]
    [Parameter(ParameterSetName='EnrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsVa5WyzAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsVa5WyzAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAssetById_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAssetById_EnrollExpanded';
            EnrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAssetById_EnrollViaIdentity';
            EnrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAssetById_EnrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssets
.Description
Invoke action enrollAssets
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1G2Xg8CAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODY <IPaths1G2Xg8CAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths1G2Xg8CAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatespolicyaudienceexclusionasset
#>

function Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAsset {
[Alias('Invoke-MgBetaEnrollWuPolicyAudienceExclusionAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory)]
    [Parameter(ParameterSetName='EnrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1G2Xg8CAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1G2Xg8CAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAsset_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAsset_EnrollExpanded';
            EnrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAsset_EnrollViaIdentity';
            EnrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceExclusionAsset_EnrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssetsById
.Description
Invoke action enrollAssetsById
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1CrxilqAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths1CrxilqAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths1CrxilqAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatespolicyaudiencememberassetbyid
#>

function Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAssetById {
[Alias('Invoke-MgBetaEnrollWuPolicyAudienceMemberAssetGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory)]
    [Parameter(ParameterSetName='EnrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1CrxilqAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1CrxilqAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAssetById_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAssetById_EnrollExpanded';
            EnrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAssetById_EnrollViaIdentity';
            EnrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAssetById_EnrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssets
.Description
Invoke action enrollAssets
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1V9GilxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODY <IPaths1V9GilxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths1V9GilxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatespolicyaudiencememberasset
#>

function Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAsset {
[Alias('Invoke-MgBetaEnrollWuPolicyAudienceMemberAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory)]
    [Parameter(ParameterSetName='EnrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1V9GilxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Parameter(ParameterSetName='EnrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='EnrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1V9GilxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAsset_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAsset_EnrollExpanded';
            EnrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAsset_EnrollViaIdentity';
            EnrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesPolicyAudienceMemberAsset_EnrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssetsById
.Description
Invoke action enrollAssetsById
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    UpdateCategory = "feature"
    MemberEntityType = "#microsoft.graph.windowsUpdates.azureADDevice"
    Ids = @(
        "String"
        "String"
        "String"
    )
}
Invoke-MgBetaEnrollWindowsUpdatesUpdatableAssetById -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths134Mc7AdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths134Mc7AdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatesupdatableassetbyid
#>

function Invoke-MgBetaEnrollWindowsUpdatesUpdatableAssetById {
[Alias('Invoke-MgBetaEnrollWuUpdatableAssetGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths134Mc7AdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesEnrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesUpdatableAssetById_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesUpdatableAssetById_EnrollExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action enrollAssets
.Description
Invoke action enrollAssets
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    UpdateCategory = "String"
    Assets = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
}
Invoke-MgBetaEnrollWindowsUpdatesUpdatableAsset -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1T34IjjAdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODY <IPaths1T34IjjAdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaenrollwindowsupdatesupdatableasset
#>

function Invoke-MgBetaEnrollWindowsUpdatesUpdatableAsset {
[Alias('Invoke-MgBetaEnrollWuUpdatableAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='EnrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Enroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1T34IjjAdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesEnrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(ParameterSetName='EnrollExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Enroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesUpdatableAsset_Enroll';
            EnrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaEnrollWindowsUpdatesUpdatableAsset_EnrollExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssetsById
.Description
Invoke action unenrollAssetsById
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths17VgwvAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths17VgwvAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths17VgwvAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetagraphwindowsupdatesdeploymentaudienceexclusion
#>

function Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceExclusion {
[Alias('Invoke-MgBetaGraphWuDeploymentAudienceExclusion')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='GraphExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Graph', Mandatory)]
    [Parameter(ParameterSetName='GraphExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Graph', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths17VgwvAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths17VgwvAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Graph = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceExclusion_Graph';
            GraphExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceExclusion_GraphExpanded';
            GraphViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceExclusion_GraphViaIdentity';
            GraphViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceExclusion_GraphViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssetsById
.Description
Invoke action unenrollAssetsById
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1T38YsrAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths1T38YsrAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths1T38YsrAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetagraphwindowsupdatesdeploymentaudiencemember
#>

function Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceMember {
[Alias('Invoke-MgBetaGraphWuDeploymentAudienceMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='GraphExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Graph', Mandatory)]
    [Parameter(ParameterSetName='GraphExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Graph', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1T38YsrAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1T38YsrAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Graph = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceMember_Graph';
            GraphExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceMember_GraphExpanded';
            GraphViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceMember_GraphViaIdentity';
            GraphViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesDeploymentAudienceMember_GraphViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssetsById
.Description
Invoke action unenrollAssetsById
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths148B1XjAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths148B1XjAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths148B1XjAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetagraphwindowsupdatespolicyaudienceexclusion
#>

function Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceExclusion {
[Alias('Invoke-MgBetaGraphWuPolicyAudienceExclusion')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='GraphExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Graph', Mandatory)]
    [Parameter(ParameterSetName='GraphExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Graph', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths148B1XjAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths148B1XjAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Graph = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceExclusion_Graph';
            GraphExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceExclusion_GraphExpanded';
            GraphViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceExclusion_GraphViaIdentity';
            GraphViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceExclusion_GraphViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssetsById
.Description
Invoke action unenrollAssetsById
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1C71JzyAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths1C71JzyAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths1C71JzyAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetagraphwindowsupdatespolicyaudiencemember
#>

function Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceMember {
[Alias('Invoke-MgBetaGraphWuPolicyAudienceMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='GraphExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Graph', Mandatory)]
    [Parameter(ParameterSetName='GraphExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Graph', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1C71JzyAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Parameter(ParameterSetName='GraphViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='GraphViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1C71JzyAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Graph = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceMember_Graph';
            GraphExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceMember_GraphExpanded';
            GraphViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceMember_GraphViaIdentity';
            GraphViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesPolicyAudienceMember_GraphViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssetsById
.Description
Invoke action unenrollAssetsById
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    UpdateCategory = "feature"
    MemberEntityType = "#microsoft.graph.windowsUpdates.azureADDevice"
    Ids = @(
        "String"
        "String"
        "String"
    )
}
Invoke-MgBetaGraphWindowsUpdatesUpdatableAsset -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths4Wme8AdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODY <IPaths4Wme8AdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
  [UpdateCategory <String>]: updateCategory
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetagraphwindowsupdatesupdatableasset
#>

function Invoke-MgBetaGraphWindowsUpdatesUpdatableAsset {
[Alias('Invoke-MgBetaGraphWuUpdatableAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='GraphExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Graph', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths4Wme8AdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesUnenrollassetsbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='GraphExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='GraphExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Graph = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesUpdatableAsset_Graph';
            GraphExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaGraphWindowsUpdatesUpdatableAsset_GraphExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssets
.Description
Invoke action unenrollAssets
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths14C25SeAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODY <IPaths14C25SeAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths14C25SeAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaunenrollwindowsupdatespolicyaudienceexclusionasset
#>

function Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceExclusionAsset {
[Alias('Invoke-MgBetaUnenrollWuPolicyAudienceExclusionAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UnenrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Unenroll', Mandatory)]
    [Parameter(ParameterSetName='UnenrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UnenrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Unenroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths14C25SeAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='UnenrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths14C25SeAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Unenroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceExclusionAsset_Unenroll';
            UnenrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceExclusionAsset_UnenrollExpanded';
            UnenrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceExclusionAsset_UnenrollViaIdentity';
            UnenrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceExclusionAsset_UnenrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssets
.Description
Invoke action unenrollAssets
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths13W0KifAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODY <IPaths13W0KifAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
BODYPARAMETER <IPaths13W0KifAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaunenrollwindowsupdatespolicyaudiencememberasset
#>

function Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceMemberAsset {
[Alias('Invoke-MgBetaUnenrollWuPolicyAudienceMemberAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UnenrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Unenroll', Mandatory)]
    [Parameter(ParameterSetName='UnenrollExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UnenrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Unenroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths13W0KifAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Parameter(ParameterSetName='UnenrollViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(ParameterSetName='UnenrollViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths13W0KifAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Unenroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceMemberAsset_Unenroll';
            UnenrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceMemberAsset_UnenrollExpanded';
            UnenrollViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceMemberAsset_UnenrollViaIdentity';
            UnenrollViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesPolicyAudienceMemberAsset_UnenrollViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Invoke action unenrollAssets
.Description
Invoke action unenrollAssets
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    UpdateCategory = "String"
    Assets = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
}
Invoke-MgBetaUnenrollWindowsUpdatesUpdatableAsset -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsP6Z74XAdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODY <IPathsP6Z74XAdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [UpdateCategory <String>]: updateCategory
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/invoke-mgbetaunenrollwindowsupdatesupdatableasset
#>

function Invoke-MgBetaUnenrollWindowsUpdatesUpdatableAsset {
[Alias('Invoke-MgBetaUnenrollWuUpdatableAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UnenrollExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Unenroll', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsP6Z74XAdminWindowsUpdatesUpdatableassetsMicrosoftGraphWindowsupdatesUnenrollassetsPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODY properties and create a hash table.
    ${Body},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(ParameterSetName='UnenrollExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # updateCategory
    ${UpdateCategory},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Unenroll = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesUpdatableAsset_Unenroll';
            UnenrollExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Invoke-MgBetaUnenrollWindowsUpdatesUpdatableAsset_UnenrollExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Create a new deployment object.
.Description
Create a new deployment object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    "@odata.type" = "#microsoft.graph.windowsUpdates.deployment"
    Content = @{
        "@odata.type" = "microsoft.graph.windowsUpdates.featureUpdateReference"
        Version = "20H2"
    }
    Settings = @{
        "@odata.type" = "microsoft.graph.windowsUpdates.windowsDeploymentSettings"
        Rollout = @{
            DevicesPerOffer = 100
        }
        Monitoring = @{
            MonitoringRules = @(
                @{
                    "@odata.type" = "#microsoft.graph.windowsUpdates.monitoringRule"
                    Signal = "rollback"
                    Threshold = 5
                    Action = "pauseDeployment"
                }
            )
        }
    }
}
New-MgBetaWindowsUpdatesDeployment -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
AUDIENCE <IMicrosoftGraphWindowsUpdatesDeploymentAudience>: deploymentAudience
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
    [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [DisplayName <String>]: The display name of the content. Read-only.
      [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
    [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
      [DeviceId <String>]:
      [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
  [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
    [Id <String>]: The unique identifier for an entity. Read-only.
  [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesDeployment>: deployment
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
      [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
        [(Any) <Object>]: This indicates any property can be added to this object.
        [Id <String>]: The unique identifier for an entity. Read-only.
        [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [DisplayName <String>]: The display name of the content. Read-only.
        [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
        [DeviceId <String>]:
        [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
    [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
      [Id <String>]: The unique identifier for an entity. Read-only.
    [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
  [Content <IMicrosoftGraphWindowsUpdatesDeployableContent>]: deployableContent
    [(Any) <Object>]: This indicates any property can be added to this object.
  [CreatedDateTime <DateTime?>]: The date and time the deployment was created. Returned by default. Read-only.
  [LastModifiedDateTime <DateTime?>]: The date and time the deployment was last modified. Returned by default. Read-only.
  [Settings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
      [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
          [Category <String>]: safeguardCategory
    [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
      [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
    [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
        [Action <String>]: monitoringAction
        [Signal <String>]: monitoringSignal
        [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
    [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
      [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
      [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
  [State <IMicrosoftGraphWindowsUpdatesDeploymentState>]: deploymentState
    [(Any) <Object>]: This indicates any property can be added to this object.
    [EffectiveValue <String>]: deploymentStateValue
    [Reasons <IMicrosoftGraphWindowsUpdatesDeploymentStateReason[]>]: Specifies the reasons the deployment has its state value. Read-only.
      [Value <String>]: deploymentStateReasonValue
    [RequestedValue <String>]: requestedDeploymentStateValue
 
SETTINGS <IMicrosoftGraphWindowsUpdatesDeploymentSettings>: deploymentSettings
  [(Any) <Object>]: This indicates any property can be added to this object.
  [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
    [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
        [Category <String>]: safeguardCategory
  [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
    [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
  [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
      [Action <String>]: monitoringAction
      [Signal <String>]: monitoringSignal
      [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
  [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
    [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
    [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
STATE <IMicrosoftGraphWindowsUpdatesDeploymentState>: deploymentState
  [(Any) <Object>]: This indicates any property can be added to this object.
  [EffectiveValue <String>]: deploymentStateValue
  [Reasons <IMicrosoftGraphWindowsUpdatesDeploymentStateReason[]>]: Specifies the reasons the deployment has its state value. Read-only.
    [Value <String>]: deploymentStateReasonValue
  [RequestedValue <String>]: requestedDeploymentStateValue
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/new-mgbetawindowsupdatesdeployment
#>

function New-MgBetaWindowsUpdatesDeployment {
[Alias('New-MgBetaWuDeployment')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment]
    # deployment
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience]
    # deploymentAudience
    # To construct, see NOTES section for AUDIENCE properties and create a hash table.
    ${Audience},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployableContent]))]
    [System.Collections.Hashtable]
    # deployableContent
    ${Content},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time the deployment was created.
    # Returned by default.
    # Read-only.
    ${CreatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time the deployment was last modified.
    # Returned by default.
    # Read-only.
    ${LastModifiedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentSettings]
    # deploymentSettings
    # To construct, see NOTES section for SETTINGS properties and create a hash table.
    ${Settings},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentState]
    # deploymentState
    # To construct, see NOTES section for STATE properties and create a hash table.
    ${State},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Create = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesDeployment_Create';
            CreateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesDeployment_CreateExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Create new navigation property to exclusions for admin
.Description
Create new navigation property to exclusions for admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.Hashtable
.Inputs
System.Collections.IDictionary
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/new-mgbetawindowsupdatespolicyaudienceexclusion
#>

function New-MgBetaWindowsUpdatesPolicyAudienceExclusion {
[Alias('New-MgBetaWuPolicyAudienceExclusion')]
[OutputType([System.String])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(Required, PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset]))]
    [System.Collections.Hashtable]
    # updatableAsset
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Create = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceExclusion_Create';
            CreateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceExclusion_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceExclusion_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceExclusion_CreateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Create new navigation property to members for admin
.Description
Create new navigation property to members for admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.Hashtable
.Inputs
System.Collections.IDictionary
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/new-mgbetawindowsupdatespolicyaudiencemember
#>

function New-MgBetaWindowsUpdatesPolicyAudienceMember {
[Alias('New-MgBetaWuPolicyAudienceMember')]
[OutputType([System.String])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(Required, PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset]))]
    [System.Collections.Hashtable]
    # updatableAsset
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Create = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceMember_Create';
            CreateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceMember_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceMember_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyAudienceMember_CreateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Create a new contentApproval object.
.Description
Create a new contentApproval object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesComplianceChange>: complianceChange
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
  [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
  [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
  [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
        [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
          [(Any) <Object>]: This indicates any property can be added to this object.
          [Id <String>]: The unique identifier for an entity. Read-only.
          [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
          [DisplayName <String>]: The display name of the content. Read-only.
          [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
          [DeviceId <String>]:
          [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
      [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
        [Id <String>]: The unique identifier for an entity. Read-only.
      [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
    [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
      [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
      [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
      [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
    [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
        [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
            [Category <String>]: safeguardCategory
      [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
        [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
      [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
          [Action <String>]: monitoringAction
          [Signal <String>]: monitoringSignal
          [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
      [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
        [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
      [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
        [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
 
UPDATEPOLICY <IMicrosoftGraphWindowsUpdatesUpdatePolicy>: updatePolicy
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
      [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
        [(Any) <Object>]: This indicates any property can be added to this object.
        [Id <String>]: The unique identifier for an entity. Read-only.
        [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [DisplayName <String>]: The display name of the content. Read-only.
        [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
        [DeviceId <String>]:
        [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
    [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
      [Id <String>]: The unique identifier for an entity. Read-only.
    [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
  [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
    [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
    [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
    [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
  [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
    [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
    [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
    [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
  [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
      [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
          [Category <String>]: safeguardCategory
    [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
      [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
    [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
        [Action <String>]: monitoringAction
        [Signal <String>]: monitoringSignal
        [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
    [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
      [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
      [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/new-mgbetawindowsupdatespolicycompliancechange
#>

function New-MgBetaWindowsUpdatesPolicyComplianceChange {
[Alias('New-MgBetaWuPolicyComplianceChange')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange]
    # complianceChange
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time when a compliance change was created.
    ${CreatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Management.Automation.SwitchParameter]
    # True indicates that a compliance change is revoked, preventing further application.
    # Revoking a compliance change is a final action.
    ${IsRevoked},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time when the compliance change was revoked.
    ${RevokedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy]
    # updatePolicy
    # To construct, see NOTES section for UPDATEPOLICY properties and create a hash table.
    ${UpdatePolicy},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Create = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyComplianceChange_Create';
            CreateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyComplianceChange_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyComplianceChange_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicyComplianceChange_CreateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Create a new updatePolicy object.
.Description
Create a new updatePolicy object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
AUDIENCE <IMicrosoftGraphWindowsUpdatesDeploymentAudience>: deploymentAudience
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
    [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [DisplayName <String>]: The display name of the content. Read-only.
      [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
    [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
      [DeviceId <String>]:
      [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
  [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
    [Id <String>]: The unique identifier for an entity. Read-only.
  [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesUpdatePolicy>: updatePolicy
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
      [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
        [(Any) <Object>]: This indicates any property can be added to this object.
        [Id <String>]: The unique identifier for an entity. Read-only.
        [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [DisplayName <String>]: The display name of the content. Read-only.
        [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
        [DeviceId <String>]:
        [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
    [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
      [Id <String>]: The unique identifier for an entity. Read-only.
    [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
  [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
    [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
    [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
    [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
  [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
    [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
    [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
    [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
  [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
      [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
          [Category <String>]: safeguardCategory
    [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
      [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
    [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
        [Action <String>]: monitoringAction
        [Signal <String>]: monitoringSignal
        [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
    [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
      [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
      [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
COMPLIANCECHANGERULES <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>: Rules for governing the automatic creation of compliance changes.
  [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
  [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
  [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
 
COMPLIANCECHANGES <IMicrosoftGraphWindowsUpdatesComplianceChange[]>: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
  [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
  [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
  [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
        [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
          [(Any) <Object>]: This indicates any property can be added to this object.
          [Id <String>]: The unique identifier for an entity. Read-only.
          [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
          [DisplayName <String>]: The display name of the content. Read-only.
          [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
          [DeviceId <String>]:
          [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
      [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
        [Id <String>]: The unique identifier for an entity. Read-only.
      [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
    [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
      [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
      [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
      [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
    [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
        [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
            [Category <String>]: safeguardCategory
      [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
        [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
      [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
          [Action <String>]: monitoringAction
          [Signal <String>]: monitoringSignal
          [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
      [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
        [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
      [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
        [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
DEPLOYMENTSETTINGS <IMicrosoftGraphWindowsUpdatesDeploymentSettings>: deploymentSettings
  [(Any) <Object>]: This indicates any property can be added to this object.
  [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
    [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
        [Category <String>]: safeguardCategory
  [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
    [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
  [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
      [Action <String>]: monitoringAction
      [Signal <String>]: monitoringSignal
      [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
  [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
    [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
    [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/new-mgbetawindowsupdatespolicy
#>

function New-MgBetaWindowsUpdatesPolicy {
[Alias('New-MgBetaWuPolicy')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy]
    # updatePolicy
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience]
    # deploymentAudience
    # To construct, see NOTES section for AUDIENCE properties and create a hash table.
    ${Audience},

    [Parameter(ParameterSetName='CreateExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]]
    # Rules for governing the automatic creation of compliance changes.
    # To construct, see NOTES section for COMPLIANCECHANGERULES properties and create a hash table.
    ${ComplianceChangeRules},

    [Parameter(ParameterSetName='CreateExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange[]]
    # Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    # To construct, see NOTES section for COMPLIANCECHANGES properties and create a hash table.
    ${ComplianceChanges},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time when the update policy was created.
    # The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time.
    # For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    ${CreatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentSettings]
    # deploymentSettings
    # To construct, see NOTES section for DEPLOYMENTSETTINGS properties and create a hash table.
    ${DeploymentSettings},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Create = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicy_Create';
            CreateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesPolicy_CreateExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Create a new operationalInsightsConnection object.
.Description
Create a new operationalInsightsConnection object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    "@odata.type" = "#microsoft.graph.windowsUpdates.operationalInsightsConnection"
    AzureSubscriptionId = "322ec614-e9c2-4cd5-a55c-5711fdecf02e"
    AzureResourceGroupName = "target-resource-group"
    WorkspaceName = "my-workspace"
}
New-MgBetaWindowsUpdatesResourceConnection -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesResourceConnection>: resourceConnection
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [State <String>]: resourceConnectionState
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/new-mgbetawindowsupdatesresourceconnection
#>

function New-MgBetaWindowsUpdatesResourceConnection {
[Alias('New-MgBetaWuResourceConnection')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection]
    # resourceConnection
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # resourceConnectionState
    ${State},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Create = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesResourceConnection_Create';
            CreateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesResourceConnection_CreateExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Create a new updatableAssetGroup object.
The updatableAssetGroup resource inherits from updatableAsset.
.Description
Create a new updatableAssetGroup object.
The updatableAssetGroup resource inherits from updatableAsset.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    "@odata.type" = "#microsoft.graph.windowsUpdates.updatableAssetGroup"
}
New-MgBetaWindowsUpdatesUpdatableAsset -BodyParameter $params
 
.Inputs
System.Collections.Hashtable
.Inputs
System.Collections.IDictionary
.Outputs
System.String
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/new-mgbetawindowsupdatesupdatableasset
#>

function New-MgBetaWindowsUpdatesUpdatableAsset {
[Alias('New-MgBetaWuUpdatableAsset')]
[OutputType([System.String])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(Required, PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset]))]
    [System.Collections.Hashtable]
    # updatableAsset
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Create = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesUpdatableAsset_Create';
            CreateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\New-MgBetaWindowsUpdatesUpdatableAsset_CreateExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Description
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsVhkrfxAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPathsVhkrfxAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatesdeploymentaudienceexclusionmemberbyid
#>

function Remove-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById {
[Alias('Remove-MgBetaWuDeploymentAudienceExclusionMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='RemoveExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsVhkrfxAdminWindowsUpdatesDeploymentsDeploymentIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceExclusionMemberById_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Description
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1Xlrv16AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPaths1Xlrv16AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatesdeploymentaudiencememberbyid
#>

function Remove-MgBetaWindowsUpdatesDeploymentAudienceMemberById {
[Alias('Remove-MgBetaWuDeploymentAudienceMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='RemoveExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1Xlrv16AdminWindowsUpdatesDeploymentsDeploymentIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceMemberById_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceMemberById_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceMemberById_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeploymentAudienceMemberById_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete a deployment object.
.Description
Delete a deployment object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Remove-MgBetaWindowsUpdatesDeployment -DeploymentId $deploymentId
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatesdeployment
#>

function Remove-MgBetaWindowsUpdatesDeployment {
[Alias('Remove-MgBetaWuDeployment')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeployment_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesDeployment_DeleteViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Description
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsJzgwz3AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPathsJzgwz3AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicyaudienceexclusionmemberbyid
#>

function Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById {
[Alias('Remove-MgBetaWuPolicyAudienceExclusionMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='RemoveExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsJzgwz3AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMemberById_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Remove members from an updatableAssetGroup.
You can also use the method removeMembersById to remove members.
.Description
Remove members from an updatableAssetGroup.
You can also use the method removeMembersById to remove members.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths18W40I3AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPaths18W40I3AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicyaudienceexclusionmember
#>

function Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMember {
[Alias('Remove-MgBetaWuPolicyAudienceExclusionMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='RemoveExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths18W40I3AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceExclusionsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusionMember_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete navigation property exclusions for admin
.Description
Delete navigation property exclusions for admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicyaudienceexclusion
#>

function Remove-MgBetaWindowsUpdatesPolicyAudienceExclusion {
[Alias('Remove-MgBetaWuPolicyAudienceExclusion')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusion_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceExclusion_DeleteViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Description
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths9QtqoxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPaths9QtqoxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicyaudiencememberbyid
#>

function Remove-MgBetaWindowsUpdatesPolicyAudienceMemberById {
[Alias('Remove-MgBetaWuPolicyAudienceMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='RemoveExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths9QtqoxAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMemberById_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMemberById_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMemberById_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMemberById_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete navigation property members for admin
.Description
Delete navigation property members for admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsQtoif1AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPathsQtoif1AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicyaudiencemember
#>

function Remove-MgBetaWindowsUpdatesPolicyAudienceMember {
[Alias('Remove-MgBetaWuPolicyAudienceMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Delete')]
    [Parameter(ParameterSetName='DeleteViaIdentity')]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsQtoif1AdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMembersUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMember_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMember_DeleteViaIdentity';
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMember_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMember_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMember_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudienceMember_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete navigation property audience for admin
.Description
Delete navigation property audience for admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicyaudience
#>

function Remove-MgBetaWindowsUpdatesPolicyAudience {
[Alias('Remove-MgBetaWuPolicyAudience')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudience_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyAudience_DeleteViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete a complianceChange object.
.Description
Delete a complianceChange object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicycompliancechange
#>

function Remove-MgBetaWindowsUpdatesPolicyComplianceChange {
[Alias('Remove-MgBetaWuPolicyComplianceChange')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of complianceChange
    ${ComplianceChangeId},

    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyComplianceChange_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicyComplianceChange_DeleteViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete an updatePolicy object.
.Description
Delete an updatePolicy object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatespolicy
#>

function Remove-MgBetaWindowsUpdatesPolicy {
[Alias('Remove-MgBetaWuPolicy')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicy_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesPolicy_DeleteViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete an operationalInsightsConnection object.
.Description
Delete an operationalInsightsConnection object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Remove-MgBetaWindowsUpdatesResourceConnection -ResourceConnectionId $resourceConnectionId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Remove-MgBetaWindowsUpdatesResourceConnection -ResourceConnectionId $resourceConnectionId
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatesresourceconnection
#>

function Remove-MgBetaWindowsUpdatesResourceConnection {
[Alias('Remove-MgBetaWuResourceConnection')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of resourceConnection
    ${ResourceConnectionId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesResourceConnection_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesResourceConnection_DeleteViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Description
Remove members of the same type from an updatableAssetGroup.
You can also use the method removeMembers to remove members.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    Ids = @(
        "String"
        "String"
        "String"
    )
    MemberEntityType = "#microsoft.graph.windowsUpdates.azureADDevice"
}
Remove-MgBetaWindowsUpdatesUpdatableAssetMemberById -UpdatableAssetId $updatableAssetId -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1Kqj7RfAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPaths1Kqj7RfAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Ids <String[]>]:
  [MemberEntityType <String>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatesupdatableassetmemberbyid
#>

function Remove-MgBetaWindowsUpdatesUpdatableAssetMemberById {
[Alias('Remove-MgBetaWuUpdatableAssetMemberGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='RemoveExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1Kqj7RfAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersbyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${Ids},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMemberById_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMemberById_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMemberById_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMemberById_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Remove members from an updatableAssetGroup.
You can also use the method removeMembersById to remove members.
.Description
Remove members from an updatableAssetGroup.
You can also use the method removeMembersById to remove members.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    Assets = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
}
Remove-MgBetaWindowsUpdatesUpdatableAssetMember -UpdatableAssetId $updatableAssetId -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1Tnhm2YAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ASSETS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPaths1Tnhm2YAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Assets <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatesupdatableassetmember
#>

function Remove-MgBetaWindowsUpdatesUpdatableAssetMember {
[Alias('Remove-MgBetaWuUpdatableAssetMember')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='RemoveExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Remove', Mandatory)]
    [Parameter(ParameterSetName='RemoveExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Remove', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='RemoveViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1Tnhm2YAdminWindowsUpdatesUpdatableassetsUpdatableassetIdMicrosoftGraphWindowsupdatesRemovemembersPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='RemoveExpanded')]
    [Parameter(ParameterSetName='RemoveViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ASSETS properties and create a hash table.
    ${Assets},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Remove = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMember_Remove';
            RemoveExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMember_RemoveExpanded';
            RemoveViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMember_RemoveViaIdentity';
            RemoveViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAssetMember_RemoveViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Delete an updatableAssetGroup object.
When an updatableAssetGroup object, its member updatableAsset objects are not deleted.
.Description
Delete an updatableAssetGroup object.
When an updatableAssetGroup object, its member updatableAsset objects are not deleted.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Remove-MgBetaWindowsUpdatesUpdatableAsset -UpdatableAssetId $updatableAssetId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Remove-MgBetaWindowsUpdatesUpdatableAsset -UpdatableAssetId $updatableAssetId
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
Remove-MgBetaWindowsUpdatesUpdatableAsset -UpdatableAssetId $updatableAssetId
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/remove-mgbetawindowsupdatesupdatableasset
#>

function Remove-MgBetaWindowsUpdatesUpdatableAsset {
[Alias('Remove-MgBetaWuUpdatableAsset')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='DeleteViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Delete = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAsset_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Remove-MgBetaWindowsUpdatesUpdatableAsset_DeleteViaIdentity';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the members and exclusions collections of a deploymentAudience with updatableAsset resources of the same type.
Adding an azureADDevice to the members or exclusions collections of a deployment audience automatically creates a Microsoft Entra device object if it does not already exist.
If the same updatableAsset gets included in the exclusions and members collections of a deploymentAudience, deployment will not apply to that asset.
You can also use the method updateAudience to update the deploymentAudience.
.Description
Update the members and exclusions collections of a deploymentAudience with updatableAsset resources of the same type.
Adding an azureADDevice to the members or exclusions collections of a deployment audience automatically creates a Microsoft Entra device object if it does not already exist.
If the same updatableAsset gets included in the exclusions and members collections of a deploymentAudience, deployment will not apply to that asset.
You can also use the method updateAudience to update the deploymentAudience.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    MemberEntityType = "String"
    AddMembers = @(
        "String"
    )
    RemoveMembers = @(
        "String"
    )
    AddExclusions = @(
        "String"
    )
    RemoveExclusions = @(
        "String"
    )
}
Update-MgBetaWindowsUpdatesDeploymentAudienceById -DeploymentId $deploymentId -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPaths1Yczx1TAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencebyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPaths1Yczx1TAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencebyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [AddExclusions <String[]>]:
  [AddMembers <String[]>]:
  [MemberEntityType <String>]:
  [RemoveExclusions <String[]>]:
  [RemoveMembers <String[]>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatesdeploymentaudiencebyid
#>

function Update-MgBetaWindowsUpdatesDeploymentAudienceById {
[Alias('Update-MgBetaWuDeploymentAudienceGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPaths1Yczx1TAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencebyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${AddExclusions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${AddMembers},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${RemoveExclusions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${RemoveMembers},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudienceById_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudienceById_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudienceById_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudienceById_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the members and exclusions collections of a deploymentAudience.
Adding an azureADDevice to the members or exclusions collections of a deployment audience automatically creates a Microsoft Entra device object, if it does not already exist.
If the same updatableAsset gets included in the exclusions and members collections of a deploymentAudience, deployment will not apply to that asset.
If all updatableAsset objects are the same type, you can also use the method updateAudienceById to update the deploymentAudience.
.Description
Update the members and exclusions collections of a deploymentAudience.
Adding an azureADDevice to the members or exclusions collections of a deployment audience automatically creates a Microsoft Entra device object, if it does not already exist.
If the same updatableAsset gets included in the exclusions and members collections of a deploymentAudience, deployment will not apply to that asset.
If all updatableAsset objects are the same type, you can also use the method updateAudienceById to update the deploymentAudience.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    AddMembers = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
    RemoveMembers = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
    AddExclusions = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
    RemoveExclusions = @(
        @{
            "@odata.type" = "#microsoft.graph.windowsUpdates.azureADDevice"
            Id = "String (identifier)"
        }
    )
}
Update-MgBetaWindowsUpdatesDeploymentAudience -DeploymentId $deploymentId -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsGxoqhAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencePostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
ADDEXCLUSIONS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
ADDMEMBERS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
BODYPARAMETER <IPathsGxoqhAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencePostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [AddExclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
    [Id <String>]: The unique identifier for an entity. Read-only.
  [AddMembers <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
  [RemoveExclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
  [RemoveMembers <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
 
REMOVEEXCLUSIONS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
 
REMOVEMEMBERS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: .
  [Id <String>]: The unique identifier for an entity. Read-only.
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatesdeploymentaudience
#>

function Update-MgBetaWindowsUpdatesDeploymentAudience {
[Alias('Update-MgBetaWuDeploymentAudience')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsGxoqhAdminWindowsUpdatesDeploymentsDeploymentIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencePostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ADDEXCLUSIONS properties and create a hash table.
    ${AddExclusions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for ADDMEMBERS properties and create a hash table.
    ${AddMembers},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for REMOVEEXCLUSIONS properties and create a hash table.
    ${RemoveExclusions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # .
    # To construct, see NOTES section for REMOVEMEMBERS properties and create a hash table.
    ${RemoveMembers},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudience_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudience_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudience_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeploymentAudience_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the properties of a deployment object.
.Description
Update the properties of a deployment object.
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    "@odata.type" = "#microsoft.graph.windowsUpdates.deployment"
    State = @{
        "@odata.type" = "microsoft.graph.windowsUpdates.deploymentState"
        RequestedValue = "paused"
    }
}
Update-MgBetaWindowsUpdatesDeployment -DeploymentId $deploymentId -BodyParameter $params
.Example
Import-Module Microsoft.Graph.Beta.WindowsUpdates
$params = @{
    "@odata.type" = "#microsoft.graph.windowsUpdates.deployment"
    Settings = @{
        "@odata.type" = "microsoft.graph.windowsUpdates.windowsDeploymentSettings"
        Monitoring = @{
            MonitoringRules = @(
                @{
                    Signal = "rollback"
                    Threshold = 5
                    Action = "pauseDeployment"
                }
            )
        }
    }
}
Update-MgBetaWindowsUpdatesDeployment -DeploymentId $deploymentId -BodyParameter $params
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
AUDIENCE <IMicrosoftGraphWindowsUpdatesDeploymentAudience>: deploymentAudience
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
    [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [DisplayName <String>]: The display name of the content. Read-only.
      [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
    [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
      [DeviceId <String>]:
      [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
  [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
    [Id <String>]: The unique identifier for an entity. Read-only.
  [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesDeployment>: deployment
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
      [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
        [(Any) <Object>]: This indicates any property can be added to this object.
        [Id <String>]: The unique identifier for an entity. Read-only.
        [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [DisplayName <String>]: The display name of the content. Read-only.
        [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
        [DeviceId <String>]:
        [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
    [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
      [Id <String>]: The unique identifier for an entity. Read-only.
    [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
  [Content <IMicrosoftGraphWindowsUpdatesDeployableContent>]: deployableContent
    [(Any) <Object>]: This indicates any property can be added to this object.
  [CreatedDateTime <DateTime?>]: The date and time the deployment was created. Returned by default. Read-only.
  [LastModifiedDateTime <DateTime?>]: The date and time the deployment was last modified. Returned by default. Read-only.
  [Settings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
      [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
          [Category <String>]: safeguardCategory
    [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
      [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
    [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
        [Action <String>]: monitoringAction
        [Signal <String>]: monitoringSignal
        [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
    [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
      [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
      [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
  [State <IMicrosoftGraphWindowsUpdatesDeploymentState>]: deploymentState
    [(Any) <Object>]: This indicates any property can be added to this object.
    [EffectiveValue <String>]: deploymentStateValue
    [Reasons <IMicrosoftGraphWindowsUpdatesDeploymentStateReason[]>]: Specifies the reasons the deployment has its state value. Read-only.
      [Value <String>]: deploymentStateReasonValue
    [RequestedValue <String>]: requestedDeploymentStateValue
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
 
SETTINGS <IMicrosoftGraphWindowsUpdatesDeploymentSettings>: deploymentSettings
  [(Any) <Object>]: This indicates any property can be added to this object.
  [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
    [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
        [Category <String>]: safeguardCategory
  [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
    [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
  [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
      [Action <String>]: monitoringAction
      [Signal <String>]: monitoringSignal
      [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
  [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
    [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
    [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
STATE <IMicrosoftGraphWindowsUpdatesDeploymentState>: deploymentState
  [(Any) <Object>]: This indicates any property can be added to this object.
  [EffectiveValue <String>]: deploymentStateValue
  [Reasons <IMicrosoftGraphWindowsUpdatesDeploymentStateReason[]>]: Specifies the reasons the deployment has its state value. Read-only.
    [Value <String>]: deploymentStateReasonValue
  [RequestedValue <String>]: requestedDeploymentStateValue
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatesdeployment
#>

function Update-MgBetaWindowsUpdatesDeployment {
[Alias('Update-MgBetaWuDeployment')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of deployment
    ${DeploymentId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployment]
    # deployment
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience]
    # deploymentAudience
    # To construct, see NOTES section for AUDIENCE properties and create a hash table.
    ${Audience},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeployableContent]))]
    [System.Collections.Hashtable]
    # deployableContent
    ${Content},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time the deployment was created.
    # Returned by default.
    # Read-only.
    ${CreatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time the deployment was last modified.
    # Returned by default.
    # Read-only.
    ${LastModifiedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentSettings]
    # deploymentSettings
    # To construct, see NOTES section for SETTINGS properties and create a hash table.
    ${Settings},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentState]
    # deploymentState
    # To construct, see NOTES section for STATE properties and create a hash table.
    ${State},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeployment_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeployment_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeployment_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesDeployment_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the members and exclusions collections of a deploymentAudience with updatableAsset resources of the same type.
Adding an azureADDevice to the members or exclusions collections of a deployment audience automatically creates a Microsoft Entra device object if it does not already exist.
If the same updatableAsset gets included in the exclusions and members collections of a deploymentAudience, deployment will not apply to that asset.
You can also use the method updateAudience to update the deploymentAudience.
.Description
Update the members and exclusions collections of a deploymentAudience with updatableAsset resources of the same type.
Adding an azureADDevice to the members or exclusions collections of a deployment audience automatically creates a Microsoft Entra device object if it does not already exist.
If the same updatableAsset gets included in the exclusions and members collections of a deploymentAudience, deployment will not apply to that asset.
You can also use the method updateAudience to update the deploymentAudience.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IPathsObvu5AAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencebyidPostRequestbodyContentApplicationJsonSchema
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
System.Boolean
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IPathsObvu5AAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencebyidPostRequestbodyContentApplicationJsonSchema>: .
  [(Any) <Object>]: This indicates any property can be added to this object.
  [AddExclusions <String[]>]:
  [AddMembers <String[]>]:
  [MemberEntityType <String>]:
  [RemoveExclusions <String[]>]:
  [RemoveMembers <String[]>]:
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatespolicyaudiencebyid
#>

function Update-MgBetaWindowsUpdatesPolicyAudienceById {
[Alias('Update-MgBetaWuPolicyAudienceGraphBPreId')]
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IPathsObvu5AAdminWindowsUpdatesUpdatepoliciesUpdatepolicyIdAudienceMicrosoftGraphWindowsupdatesUpdateaudiencebyidPostRequestbodyContentApplicationJsonSchema]
    # .
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${AddExclusions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${AddMembers},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # .
    ${MemberEntityType},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${RemoveExclusions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String[]]
    # .
    ${RemoveMembers},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Returns true when the command succeeds
    ${PassThru},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceById_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceById_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceById_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceById_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the navigation property exclusions in admin
.Description
Update the navigation property exclusions in admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.Hashtable
.Inputs
System.Collections.IDictionary
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatespolicyaudienceexclusion
#>

function Update-MgBetaWindowsUpdatesPolicyAudienceExclusion {
[Alias('Update-MgBetaWuPolicyAudienceExclusion')]
[OutputType([System.String])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(Required, PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset]))]
    [System.Collections.Hashtable]
    # updatableAsset
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceExclusion_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceExclusion_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceExclusion_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceExclusion_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the navigation property members in admin
.Description
Update the navigation property members in admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.Hashtable
.Inputs
System.Collections.IDictionary
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatespolicyaudiencemember
#>

function Update-MgBetaWindowsUpdatesPolicyAudienceMember {
[Alias('Update-MgBetaWuPolicyAudienceMember')]
[OutputType([System.String])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(Required, PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset]))]
    [System.Collections.Hashtable]
    # updatableAsset
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceMember_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceMember_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceMember_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudienceMember_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the navigation property audience in admin
.Description
Update the navigation property audience in admin
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
APPLICABLECONTENT <IMicrosoftGraphWindowsUpdatesApplicableContent[]>: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
  [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
    [DisplayName <String>]: The display name of the content. Read-only.
    [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
  [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
    [DeviceId <String>]:
    [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesDeploymentAudience>: deploymentAudience
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
    [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [DisplayName <String>]: The display name of the content. Read-only.
      [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
    [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
      [DeviceId <String>]:
      [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
  [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
    [Id <String>]: The unique identifier for an entity. Read-only.
  [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
 
EXCLUSIONS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: Specifies the assets to exclude from the audience.
  [Id <String>]: The unique identifier for an entity. Read-only.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
 
MEMBERS <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>: Specifies the assets to include in the audience.
  [Id <String>]: The unique identifier for an entity. Read-only.
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatespolicyaudience
#>

function Update-MgBetaWindowsUpdatesPolicyAudience {
[Alias('Update-MgBetaWuPolicyAudience')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience]
    # deploymentAudience
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesApplicableContent[]]
    # Content eligible to deploy to devices in the audience.
    # Not nullable.
    # Read-only.
    # To construct, see NOTES section for APPLICABLECONTENT properties and create a hash table.
    ${ApplicableContent},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # Specifies the assets to exclude from the audience.
    # To construct, see NOTES section for EXCLUSIONS properties and create a hash table.
    ${Exclusions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset[]]
    # Specifies the assets to include in the audience.
    # To construct, see NOTES section for MEMBERS properties and create a hash table.
    ${Members},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudience_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudience_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudience_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyAudience_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the properties of a complianceChange object.
.Description
Update the properties of a complianceChange object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesComplianceChange>: complianceChange
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
  [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
  [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
  [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
        [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
          [(Any) <Object>]: This indicates any property can be added to this object.
          [Id <String>]: The unique identifier for an entity. Read-only.
          [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
          [DisplayName <String>]: The display name of the content. Read-only.
          [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
          [DeviceId <String>]:
          [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
      [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
        [Id <String>]: The unique identifier for an entity. Read-only.
      [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
    [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
      [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
      [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
      [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
    [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
        [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
            [Category <String>]: safeguardCategory
      [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
        [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
      [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
          [Action <String>]: monitoringAction
          [Signal <String>]: monitoringSignal
          [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
      [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
        [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
      [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
        [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
 
UPDATEPOLICY <IMicrosoftGraphWindowsUpdatesUpdatePolicy>: updatePolicy
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
      [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
        [(Any) <Object>]: This indicates any property can be added to this object.
        [Id <String>]: The unique identifier for an entity. Read-only.
        [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [DisplayName <String>]: The display name of the content. Read-only.
        [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
        [DeviceId <String>]:
        [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
    [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
      [Id <String>]: The unique identifier for an entity. Read-only.
    [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
  [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
    [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
    [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
    [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
  [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
    [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
    [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
    [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
  [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
      [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
          [Category <String>]: safeguardCategory
    [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
      [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
    [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
        [Action <String>]: monitoringAction
        [Signal <String>]: monitoringSignal
        [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
    [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
      [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
      [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatespolicycompliancechange
#>

function Update-MgBetaWindowsUpdatesPolicyComplianceChange {
[Alias('Update-MgBetaWuPolicyComplianceChange')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of complianceChange
    ${ComplianceChangeId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange]
    # complianceChange
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time when a compliance change was created.
    ${CreatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Management.Automation.SwitchParameter]
    # True indicates that a compliance change is revoked, preventing further application.
    # Revoking a compliance change is a final action.
    ${IsRevoked},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time when the compliance change was revoked.
    ${RevokedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy]
    # updatePolicy
    # To construct, see NOTES section for UPDATEPOLICY properties and create a hash table.
    ${UpdatePolicy},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyComplianceChange_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyComplianceChange_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyComplianceChange_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicyComplianceChange_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the properties of an updatePolicy object.
.Description
Update the properties of an updatePolicy object.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
AUDIENCE <IMicrosoftGraphWindowsUpdatesDeploymentAudience>: deploymentAudience
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
    [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [DisplayName <String>]: The display name of the content. Read-only.
      [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
    [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
      [DeviceId <String>]:
      [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
  [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
    [Id <String>]: The unique identifier for an entity. Read-only.
  [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesUpdatePolicy>: updatePolicy
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
      [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
        [(Any) <Object>]: This indicates any property can be added to this object.
        [Id <String>]: The unique identifier for an entity. Read-only.
        [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [DisplayName <String>]: The display name of the content. Read-only.
        [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
      [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
        [DeviceId <String>]:
        [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
    [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
      [Id <String>]: The unique identifier for an entity. Read-only.
    [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
  [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
    [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
    [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
    [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
  [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
    [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
    [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
    [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
  [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
      [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
          [Category <String>]: safeguardCategory
    [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
      [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
    [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
        [Action <String>]: monitoringAction
        [Signal <String>]: monitoringSignal
        [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
    [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
      [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
      [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
COMPLIANCECHANGERULES <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>: Rules for governing the automatic creation of compliance changes.
  [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
  [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
  [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
 
COMPLIANCECHANGES <IMicrosoftGraphWindowsUpdatesComplianceChange[]>: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [CreatedDateTime <DateTime?>]: The date and time when a compliance change was created.
  [IsRevoked <Boolean?>]: True indicates that a compliance change is revoked, preventing further application. Revoking a compliance change is a final action.
  [RevokedDateTime <DateTime?>]: The date and time when the compliance change was revoked.
  [UpdatePolicy <IMicrosoftGraphWindowsUpdatesUpdatePolicy>]: updatePolicy
    [(Any) <Object>]: This indicates any property can be added to this object.
    [Id <String>]: The unique identifier for an entity. Read-only.
    [Audience <IMicrosoftGraphWindowsUpdatesDeploymentAudience>]: deploymentAudience
      [(Any) <Object>]: This indicates any property can be added to this object.
      [Id <String>]: The unique identifier for an entity. Read-only.
      [ApplicableContent <IMicrosoftGraphWindowsUpdatesApplicableContent[]>]: Content eligible to deploy to devices in the audience. Not nullable. Read-only.
        [CatalogEntry <IMicrosoftGraphWindowsUpdatesCatalogEntry>]: catalogEntry
          [(Any) <Object>]: This indicates any property can be added to this object.
          [Id <String>]: The unique identifier for an entity. Read-only.
          [DeployableUntilDateTime <DateTime?>]: The date on which the content is no longer available to deploy using the service. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
          [DisplayName <String>]: The display name of the content. Read-only.
          [ReleaseDateTime <DateTime?>]: The release date for the content. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z. Read-only.
        [MatchedDevices <IMicrosoftGraphWindowsUpdatesApplicableContentDeviceMatch[]>]: Collection of devices and recommendations for applicable catalog content.
          [DeviceId <String>]:
          [RecommendedBy <String[]>]: Collection of vendors who recommend the content.
      [Exclusions <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to exclude from the audience.
        [Id <String>]: The unique identifier for an entity. Read-only.
      [Members <IMicrosoftGraphWindowsUpdatesUpdatableAsset[]>]: Specifies the assets to include in the audience.
    [ComplianceChangeRules <IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]>]: Rules for governing the automatic creation of compliance changes.
      [CreatedDateTime <DateTime?>]: The date and time when the rule was created.
      [LastEvaluatedDateTime <DateTime?>]: The date and time when the rule was last evaluated.
      [LastModifiedDateTime <DateTime?>]: The date and time when the rule was last modified.
    [ComplianceChanges <IMicrosoftGraphWindowsUpdatesComplianceChange[]>]: Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    [CreatedDateTime <DateTime?>]: The date and time when the update policy was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    [DeploymentSettings <IMicrosoftGraphWindowsUpdatesDeploymentSettings>]: deploymentSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
        [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
            [Category <String>]: safeguardCategory
      [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
        [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
      [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
          [Action <String>]: monitoringAction
          [Signal <String>]: monitoringSignal
          [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
      [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
          [(Any) <Object>]: This indicates any property can be added to this object.
          [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
        [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
      [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
        [(Any) <Object>]: This indicates any property can be added to this object.
        [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
        [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
DEPLOYMENTSETTINGS <IMicrosoftGraphWindowsUpdatesDeploymentSettings>: deploymentSettings
  [(Any) <Object>]: This indicates any property can be added to this object.
  [ContentApplicability <IMicrosoftGraphWindowsUpdatesContentApplicabilitySettings>]: contentApplicabilitySettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [OfferWhileRecommendedBy <String[]>]: Offer if the update is recommended by a vendor in the list, otherwise withhold the offer.
    [Safeguard <IMicrosoftGraphWindowsUpdatesSafeguardSettings>]: safeguardSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DisabledSafeguardProfiles <IMicrosoftGraphWindowsUpdatesSafeguardProfile[]>]: List of safeguards to ignore per device.
        [Category <String>]: safeguardCategory
  [Expedite <IMicrosoftGraphWindowsUpdatesExpediteSettings>]: expediteSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [IsExpedited <Boolean?>]: True indicates that the deployment of the content is expedited.
    [IsReadinessTest <Boolean?>]: True indicates that the deployment is an expedite readiness test.
  [Monitoring <IMicrosoftGraphWindowsUpdatesMonitoringSettings>]: monitoringSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [MonitoringRules <IMicrosoftGraphWindowsUpdatesMonitoringRule[]>]: Specifies the rules through which monitoring signals can trigger actions on the deployment. Rules are combined using 'or.'
      [Action <String>]: monitoringAction
      [Signal <String>]: monitoringSignal
      [Threshold <Int32?>]: The threshold for a signal at which to trigger the action. An integer from 1 to 100 (inclusive). This value is ignored when the signal is ineligible and the action is offerFallback.
  [Schedule <IMicrosoftGraphWindowsUpdatesScheduleSettings>]: scheduleSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [GradualRollout <IMicrosoftGraphWindowsUpdatesGradualRolloutSettings>]: gradualRolloutSettings
      [(Any) <Object>]: This indicates any property can be added to this object.
      [DurationBetweenOffers <TimeSpan?>]: The duration between each set of devices being offered the update. The value is represented in ISO 8601 format for duration. Default value is P1D (one day).
    [StartDateTime <DateTime?>]: The date on which devices in the deployment start receiving the update. When not set, the deployment starts as soon as devices are assigned. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
  [UserExperience <IMicrosoftGraphWindowsUpdatesUserExperienceSettings>]: userExperienceSettings
    [(Any) <Object>]: This indicates any property can be added to this object.
    [DaysUntilForcedReboot <Int32?>]: Specifies the number of days after an update is installed, during which the user of the device can control when the device restarts.
    [OfferAsOptional <Boolean?>]: Specifies whether the update is offered as Optional rather than Required.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatespolicy
#>

function Update-MgBetaWindowsUpdatesPolicy {
[Alias('Update-MgBetaWuPolicy')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatePolicy
    ${UpdatePolicyId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatePolicy]
    # updatePolicy
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentAudience]
    # deploymentAudience
    # To construct, see NOTES section for AUDIENCE properties and create a hash table.
    ${Audience},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChangeRule[]]
    # Rules for governing the automatic creation of compliance changes.
    # To construct, see NOTES section for COMPLIANCECHANGERULES properties and create a hash table.
    ${ComplianceChangeRules},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [AllowEmptyCollection()]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesComplianceChange[]]
    # Compliance changes like content approvals which result in the automatic creation of deployments using the audience and deploymentSettings of the policy.
    # To construct, see NOTES section for COMPLIANCECHANGES properties and create a hash table.
    ${ComplianceChanges},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.DateTime]
    # The date and time when the update policy was created.
    # The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time.
    # For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.
    ${CreatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesDeploymentSettings]
    # deploymentSettings
    # To construct, see NOTES section for DEPLOYMENTSETTINGS properties and create a hash table.
    ${DeploymentSettings},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicy_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicy_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicy_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesPolicy_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the navigation property resourceConnections in admin
.Description
Update the navigation property resourceConnections in admin
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.IDictionary
.Outputs
Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
BODYPARAMETER <IMicrosoftGraphWindowsUpdatesResourceConnection>: resourceConnection
  [(Any) <Object>]: This indicates any property can be added to this object.
  [Id <String>]: The unique identifier for an entity. Read-only.
  [State <String>]: resourceConnectionState
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatesresourceconnection
#>

function Update-MgBetaWindowsUpdatesResourceConnection {
[Alias('Update-MgBetaWuResourceConnection')]
[OutputType([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of resourceConnection
    ${ResourceConnectionId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesResourceConnection]
    # resourceConnection
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # resourceConnectionState
    ${State},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesResourceConnection_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesResourceConnection_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesResourceConnection_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesResourceConnection_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

<#
.Synopsis
Update the navigation property updatableAssets in admin
.Description
Update the navigation property updatableAssets in admin
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
.Example
PS C:\> {{ Add code here }}
 
{{ Add output here }}
 
.Inputs
Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity
.Inputs
System.Collections.Hashtable
.Inputs
System.Collections.IDictionary
.Outputs
System.String
.Notes
COMPLEX PARAMETER PROPERTIES
 
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
INPUTOBJECT <IWindowsUpdatesIdentity>: Identity Parameter
  [CatalogEntryId <String>]: The unique identifier of catalogEntry
  [ComplianceChangeId <String>]: The unique identifier of complianceChange
  [DeploymentId <String>]: The unique identifier of deployment
  [ResourceConnectionId <String>]: The unique identifier of resourceConnection
  [UpdatableAssetId <String>]: The unique identifier of updatableAsset
  [UpdatePolicyId <String>]: The unique identifier of updatePolicy
.Link
https://learn.microsoft.com/powershell/module/microsoft.graph.beta.windowsupdates/update-mgbetawindowsupdatesupdatableasset
#>

function Update-MgBetaWindowsUpdatesUpdatableAsset {
[Alias('Update-MgBetaWuUpdatableAsset')]
[OutputType([System.String])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [System.String]
    # The unique identifier of updatableAsset
    ${UpdatableAssetId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Path')]
    [Microsoft.Graph.Beta.PowerShell.Models.IWindowsUpdatesIdentity]
    # Identity Parameter
    # To construct, see NOTES section for INPUTOBJECT properties and create a hash table.
    ${InputObject},

    [Parameter(ParameterSetName='Update', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.Info(Required, PossibleTypes=([Microsoft.Graph.Beta.PowerShell.Models.IMicrosoftGraphWindowsUpdatesUpdatableAsset]))]
    [System.Collections.Hashtable]
    # updatableAsset
    ${BodyParameter},

    [Parameter()]
    [Alias('RHV')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # Optional Response Headers Variable.
    ${ResponseHeadersVariable},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.Collections.Hashtable]
    # Additional Parameters
    ${AdditionalProperties},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.Beta.PowerShell.Category('Body')]
    [System.String]
    # The unique identifier for an entity.
    # Read-only.
    ${Id},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(ValueFromPipeline)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Collections.IDictionary]
    # Optional headers that will be added to the request.
    ${Headers},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [Microsoft.Graph.Beta.PowerShell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [Microsoft.Graph.Beta.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Update = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesUpdatableAsset_Update';
            UpdateExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesUpdatableAsset_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesUpdatableAsset_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Beta.WindowsUpdates.private\Update-MgBetaWindowsUpdatesUpdatableAsset_UpdateViaIdentityExpanded';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Microsoft.Graph.Beta.PowerShell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}

# SIG # Begin signature block
# MIInvwYJKoZIhvcNAQcCoIInsDCCJ6wCAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCBKmdJZJpjkjhXb
# CVHISPOlhX5ISL17mvfXjDhP3PUkY6CCDXYwggX0MIID3KADAgECAhMzAAADrzBA
# DkyjTQVBAAAAAAOvMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMRMwEQYD
# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNpZ25p
# bmcgUENBIDIwMTEwHhcNMjMxMTE2MTkwOTAwWhcNMjQxMTE0MTkwOTAwWjB0MQsw
# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u
# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMR4wHAYDVQQDExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
# AQDOS8s1ra6f0YGtg0OhEaQa/t3Q+q1MEHhWJhqQVuO5amYXQpy8MDPNoJYk+FWA
# hePP5LxwcSge5aen+f5Q6WNPd6EDxGzotvVpNi5ve0H97S3F7C/axDfKxyNh21MG
# 0W8Sb0vxi/vorcLHOL9i+t2D6yvvDzLlEefUCbQV/zGCBjXGlYJcUj6RAzXyeNAN
# xSpKXAGd7Fh+ocGHPPphcD9LQTOJgG7Y7aYztHqBLJiQQ4eAgZNU4ac6+8LnEGAL
# go1ydC5BJEuJQjYKbNTy959HrKSu7LO3Ws0w8jw6pYdC1IMpdTkk2puTgY2PDNzB
# tLM4evG7FYer3WX+8t1UMYNTAgMBAAGjggFzMIIBbzAfBgNVHSUEGDAWBgorBgEE
# AYI3TAgBBggrBgEFBQcDAzAdBgNVHQ4EFgQURxxxNPIEPGSO8kqz+bgCAQWGXsEw
# RQYDVR0RBD4wPKQ6MDgxHjAcBgNVBAsTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEW
# MBQGA1UEBRMNMjMwMDEyKzUwMTgyNjAfBgNVHSMEGDAWgBRIbmTlUAXTgqoXNzci
# tW2oynUClTBUBgNVHR8ETTBLMEmgR6BFhkNodHRwOi8vd3d3Lm1pY3Jvc29mdC5j
# b20vcGtpb3BzL2NybC9NaWNDb2RTaWdQQ0EyMDExXzIwMTEtMDctMDguY3JsMGEG
# CCsGAQUFBwEBBFUwUzBRBggrBgEFBQcwAoZFaHR0cDovL3d3dy5taWNyb3NvZnQu
# Y29tL3BraW9wcy9jZXJ0cy9NaWNDb2RTaWdQQ0EyMDExXzIwMTEtMDctMDguY3J0
# MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQELBQADggIBAISxFt/zR2frTFPB45Yd
# mhZpB2nNJoOoi+qlgcTlnO4QwlYN1w/vYwbDy/oFJolD5r6FMJd0RGcgEM8q9TgQ
# 2OC7gQEmhweVJ7yuKJlQBH7P7Pg5RiqgV3cSonJ+OM4kFHbP3gPLiyzssSQdRuPY
# 1mIWoGg9i7Y4ZC8ST7WhpSyc0pns2XsUe1XsIjaUcGu7zd7gg97eCUiLRdVklPmp
# XobH9CEAWakRUGNICYN2AgjhRTC4j3KJfqMkU04R6Toyh4/Toswm1uoDcGr5laYn
# TfcX3u5WnJqJLhuPe8Uj9kGAOcyo0O1mNwDa+LhFEzB6CB32+wfJMumfr6degvLT
# e8x55urQLeTjimBQgS49BSUkhFN7ois3cZyNpnrMca5AZaC7pLI72vuqSsSlLalG
# OcZmPHZGYJqZ0BacN274OZ80Q8B11iNokns9Od348bMb5Z4fihxaBWebl8kWEi2O
# PvQImOAeq3nt7UWJBzJYLAGEpfasaA3ZQgIcEXdD+uwo6ymMzDY6UamFOfYqYWXk
# ntxDGu7ngD2ugKUuccYKJJRiiz+LAUcj90BVcSHRLQop9N8zoALr/1sJuwPrVAtx
# HNEgSW+AKBqIxYWM4Ev32l6agSUAezLMbq5f3d8x9qzT031jMDT+sUAoCw0M5wVt
# CUQcqINPuYjbS1WgJyZIiEkBMIIHejCCBWKgAwIBAgIKYQ6Q0gAAAAAAAzANBgkq
# hkiG9w0BAQsFADCBiDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24x
# EDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlv
# bjEyMDAGA1UEAxMpTWljcm9zb2Z0IFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5
# IDIwMTEwHhcNMTEwNzA4MjA1OTA5WhcNMjYwNzA4MjEwOTA5WjB+MQswCQYDVQQG
# EwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwG
# A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSgwJgYDVQQDEx9NaWNyb3NvZnQg
# Q29kZSBTaWduaW5nIFBDQSAyMDExMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC
# CgKCAgEAq/D6chAcLq3YbqqCEE00uvK2WCGfQhsqa+laUKq4BjgaBEm6f8MMHt03
# a8YS2AvwOMKZBrDIOdUBFDFC04kNeWSHfpRgJGyvnkmc6Whe0t+bU7IKLMOv2akr
# rnoJr9eWWcpgGgXpZnboMlImEi/nqwhQz7NEt13YxC4Ddato88tt8zpcoRb0Rrrg
# OGSsbmQ1eKagYw8t00CT+OPeBw3VXHmlSSnnDb6gE3e+lD3v++MrWhAfTVYoonpy
# 4BI6t0le2O3tQ5GD2Xuye4Yb2T6xjF3oiU+EGvKhL1nkkDstrjNYxbc+/jLTswM9
# sbKvkjh+0p2ALPVOVpEhNSXDOW5kf1O6nA+tGSOEy/S6A4aN91/w0FK/jJSHvMAh
# dCVfGCi2zCcoOCWYOUo2z3yxkq4cI6epZuxhH2rhKEmdX4jiJV3TIUs+UsS1Vz8k
# A/DRelsv1SPjcF0PUUZ3s/gA4bysAoJf28AVs70b1FVL5zmhD+kjSbwYuER8ReTB
# w3J64HLnJN+/RpnF78IcV9uDjexNSTCnq47f7Fufr/zdsGbiwZeBe+3W7UvnSSmn
# Eyimp31ngOaKYnhfsi+E11ecXL93KCjx7W3DKI8sj0A3T8HhhUSJxAlMxdSlQy90
# lfdu+HggWCwTXWCVmj5PM4TasIgX3p5O9JawvEagbJjS4NaIjAsCAwEAAaOCAe0w
# ggHpMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBRIbmTlUAXTgqoXNzcitW2o
# ynUClTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMCAYYwDwYD
# VR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBRyLToCMZBDuRQFTuHqp8cx0SOJNDBa
# BgNVHR8EUzBRME+gTaBLhklodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpL2Ny
# bC9wcm9kdWN0cy9NaWNSb29DZXJBdXQyMDExXzIwMTFfMDNfMjIuY3JsMF4GCCsG
# AQUFBwEBBFIwUDBOBggrBgEFBQcwAoZCaHR0cDovL3d3dy5taWNyb3NvZnQuY29t
# L3BraS9jZXJ0cy9NaWNSb29DZXJBdXQyMDExXzIwMTFfMDNfMjIuY3J0MIGfBgNV
# HSAEgZcwgZQwgZEGCSsGAQQBgjcuAzCBgzA/BggrBgEFBQcCARYzaHR0cDovL3d3
# dy5taWNyb3NvZnQuY29tL3BraW9wcy9kb2NzL3ByaW1hcnljcHMuaHRtMEAGCCsG
# AQUFBwICMDQeMiAdAEwAZQBnAGEAbABfAHAAbwBsAGkAYwB5AF8AcwB0AGEAdABl
# AG0AZQBuAHQALiAdMA0GCSqGSIb3DQEBCwUAA4ICAQBn8oalmOBUeRou09h0ZyKb
# C5YR4WOSmUKWfdJ5DJDBZV8uLD74w3LRbYP+vj/oCso7v0epo/Np22O/IjWll11l
# hJB9i0ZQVdgMknzSGksc8zxCi1LQsP1r4z4HLimb5j0bpdS1HXeUOeLpZMlEPXh6
# I/MTfaaQdION9MsmAkYqwooQu6SpBQyb7Wj6aC6VoCo/KmtYSWMfCWluWpiW5IP0
# wI/zRive/DvQvTXvbiWu5a8n7dDd8w6vmSiXmE0OPQvyCInWH8MyGOLwxS3OW560
# STkKxgrCxq2u5bLZ2xWIUUVYODJxJxp/sfQn+N4sOiBpmLJZiWhub6e3dMNABQam
# ASooPoI/E01mC8CzTfXhj38cbxV9Rad25UAqZaPDXVJihsMdYzaXht/a8/jyFqGa
# J+HNpZfQ7l1jQeNbB5yHPgZ3BtEGsXUfFL5hYbXw3MYbBL7fQccOKO7eZS/sl/ah
# XJbYANahRr1Z85elCUtIEJmAH9AAKcWxm6U/RXceNcbSoqKfenoi+kiVH6v7RyOA
# 9Z74v2u3S5fi63V4GuzqN5l5GEv/1rMjaHXmr/r8i+sLgOppO6/8MO0ETI7f33Vt
# Y5E90Z1WTk+/gFcioXgRMiF670EKsT/7qMykXcGhiJtXcVZOSEXAQsmbdlsKgEhr
# /Xmfwb1tbWrJUnMTDXpQzTGCGZ8wghmbAgEBMIGVMH4xCzAJBgNVBAYTAlVTMRMw
# EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVN
# aWNyb3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNp
# Z25pbmcgUENBIDIwMTECEzMAAAOvMEAOTKNNBUEAAAAAA68wDQYJYIZIAWUDBAIB
# BQCgga4wGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEO
# MAwGCisGAQQBgjcCARUwLwYJKoZIhvcNAQkEMSIEIBTEgMqeo4FqTAdfLurfL3/z
# Jx4GZcTa2dqksgT6rkZnMEIGCisGAQQBgjcCAQwxNDAyoBSAEgBNAGkAYwByAG8A
# cwBvAGYAdKEagBhodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20wDQYJKoZIhvcNAQEB
# BQAEggEAjCvPWeB8/yDka4479zze+ssF9JEwobwG5sHTN/hXyTbyU6GfWQElL6o3
# KLlwfwOmkvazRhFBJLJDWG/I65pPBhDYXomxOYMO/GIfgVEESSMUIglDZ2IqfV62
# 4CPnT/zMrAN/CQxGh8UZfpu65nplM49O60joxs99cTZ12AOv+6mEB+g4hBfv/Oxd
# v0m6xttQXaj5BhB6B1lTstSo2XYRFvguQ2gsU3tSWM0X8yEcin79yZVGe1ZH62R/
# 9f3PzEGJts2h/hGOhE9J3jElxd6NurkcZ3CCyMeeTqOvCk5W1g3ERDMijJqWqs2k
# ZVjifmHJW8/5qBDg2o+MeXdu4vPNzqGCFykwghclBgorBgEEAYI3AwMBMYIXFTCC
# FxEGCSqGSIb3DQEHAqCCFwIwghb+AgEDMQ8wDQYJYIZIAWUDBAIBBQAwggFZBgsq
# hkiG9w0BCRABBKCCAUgEggFEMIIBQAIBAQYKKwYBBAGEWQoDATAxMA0GCWCGSAFl
# AwQCAQUABCC6LzGBIgW6qoPFUBnZpKlimFrZ9Ov7nCMfLFTjhQTrswIGZbqiAgfd
# GBMyMDI0MDIyMDAwNDYwNy41MTZaMASAAgH0oIHYpIHVMIHSMQswCQYDVQQGEwJV
# UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UE
# ChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMS0wKwYDVQQLEyRNaWNyb3NvZnQgSXJl
# bGFuZCBPcGVyYXRpb25zIExpbWl0ZWQxJjAkBgNVBAsTHVRoYWxlcyBUU1MgRVNO
# Ojg2REYtNEJCQy05MzM1MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBT
# ZXJ2aWNloIIReDCCBycwggUPoAMCAQICEzMAAAHdXVcdldStqhsAAQAAAd0wDQYJ
# KoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24x
# EDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlv
# bjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAwHhcNMjMx
# MDEyMTkwNzA5WhcNMjUwMTEwMTkwNzA5WjCB0jELMAkGA1UEBhMCVVMxEzARBgNV
# BAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jv
# c29mdCBDb3Jwb3JhdGlvbjEtMCsGA1UECxMkTWljcm9zb2Z0IElyZWxhbmQgT3Bl
# cmF0aW9ucyBMaW1pdGVkMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjo4NkRGLTRC
# QkMtOTMzNTElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2VydmljZTCC
# AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKhOA5RE6i53nHURH4lnfKLp
# +9JvipuTtctairCxMUSrPSy5CWK2DtriQP+T52HXbN2g7AktQ1pQZbTDGFzK6d03
# vYYNrCPuJK+PRsP2FPVDjBXy5mrLRFzIHHLaiAaobE5vFJuoxZ0ZWdKMCs8acjhH
# UmfaY+79/CR7uN+B4+xjJqwvdpU/mp0mAq3earyH+AKmv6lkrQN8zgrcbCgHwsqv
# vqT6lEFqYpi7uKn7MAYbSeLe0pMdatV5EW6NVnXMYOTRKuGPfyfBKdShualLo88k
# G7qa2mbA5l77+X06JAesMkoyYr4/9CgDFjHUpcHSODujlFBKMi168zRdLerdpW0b
# BX9EDux2zBMMaEK8NyxawCEuAq7++7ktFAbl3hUKtuzYC1FUZuUl2Bq6U17S4CKs
# qR3itLT9qNcb2pAJ4jrIDdll5Tgoqef5gpv+YcvBM834bXFNwytd3ujDD24P9Dd8
# xfVJvumjsBQQkK5T/qy3HrQJ8ud1nHSvtFVi5Sa/ubGuYEpS8gF6GDWN5/KbveFk
# dsoTVIPo8pkWhjPs0Q7nA5+uBxQB4zljEjKz5WW7BA4wpmFm24fhBmRjV4Nbp+n7
# 8cgAjvDSfTlA6DYBcv2kx1JH2dIhaRnSeOXePT6hMF0Il598LMu0rw35ViUWcAQk
# UNUTxRnqGFxz5w+ZusMDAgMBAAGjggFJMIIBRTAdBgNVHQ4EFgQUbqL1toyPUdpF
# yyHSDKWj0I4lw/EwHwYDVR0jBBgwFoAUn6cVXQBeYl2D9OXSZacbUzUZ6XIwXwYD
# VR0fBFgwVjBUoFKgUIZOaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9j
# cmwvTWljcm9zb2Z0JTIwVGltZS1TdGFtcCUyMFBDQSUyMDIwMTAoMSkuY3JsMGwG
# CCsGAQUFBwEBBGAwXjBcBggrBgEFBQcwAoZQaHR0cDovL3d3dy5taWNyb3NvZnQu
# Y29tL3BraW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBUaW1lLVN0YW1wJTIwUENBJTIw
# MjAxMCgxKS5jcnQwDAYDVR0TAQH/BAIwADAWBgNVHSUBAf8EDDAKBggrBgEFBQcD
# CDAOBgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggIBAC5U2bINLgXIHWbM
# cqVuf9jkUT/K8zyLBvu5h8JrqYR2z/eaO2yo1Ooc9Shyvxbe9GZDu7kkUzxSyJ1I
# ZksZZw6FDq6yZNT3PEjAEnREpRBL8S+mbXg+O4VLS0LSmb8XIZiLsaqZ0fDEcv3H
# eA+/y/qKnCQWkXghpaEMwGMQzRkhGwcGdXr1zGpQ7HTxvfu57xFxZX1MkKnWFENJ
# 6urd+4teUgXj0ngIOx//l3XMK3Ht8T2+zvGJNAF+5/5qBk7nr079zICbFXvxtidN
# N5eoXdW+9rAIkS+UGD19AZdBrtt6dZ+OdAquBiDkYQ5kVfUMKS31yHQOGgmFxuCO
# zTpWHalrqpdIllsy8KNsj5U9sONiWAd9PNlyEHHbQZDmi9/BNlOYyTt0YehLbDov
# mZUNazk79Od/A917mqCdTqrExwBGUPbMP+/vdYUqaJspupBnUtjOf/76DAhVy8e/
# e6zR98PkplmliO2brL3Q3rD6+ZCVdrGM9Rm6hUDBBkvYh+YjmGdcQ5HB6WT9Rec8
# +qDHmbhLhX4Zdaard5/OXeLbgx2f7L4QQQj3KgqjqDOWInVhNE1gYtTWLHe4882d
# /k7Lui0K1g8EZrKD7maOrsJLKPKlegceJ9FCqY1sDUKUhRa0EHUW+ZkKLlohKrS7
# FwjdrINWkPBgbQznCjdE2m47QjTbMIIHcTCCBVmgAwIBAgITMwAAABXF52ueAptJ
# mQAAAAAAFTANBgkqhkiG9w0BAQsFADCBiDELMAkGA1UEBhMCVVMxEzARBgNVBAgT
# Cldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29m
# dCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFJvb3QgQ2VydGlmaWNh
# dGUgQXV0aG9yaXR5IDIwMTAwHhcNMjEwOTMwMTgyMjI1WhcNMzAwOTMwMTgzMjI1
# WjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMH
# UmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYDVQQD
# Ex1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDCCAiIwDQYJKoZIhvcNAQEB
# BQADggIPADCCAgoCggIBAOThpkzntHIhC3miy9ckeb0O1YLT/e6cBwfSqWxOdcjK
# NVf2AX9sSuDivbk+F2Az/1xPx2b3lVNxWuJ+Slr+uDZnhUYjDLWNE893MsAQGOhg
# fWpSg0S3po5GawcU88V29YZQ3MFEyHFcUTE3oAo4bo3t1w/YJlN8OWECesSq/XJp
# rx2rrPY2vjUmZNqYO7oaezOtgFt+jBAcnVL+tuhiJdxqD89d9P6OU8/W7IVWTe/d
# vI2k45GPsjksUZzpcGkNyjYtcI4xyDUoveO0hyTD4MmPfrVUj9z6BVWYbWg7mka9
# 7aSueik3rMvrg0XnRm7KMtXAhjBcTyziYrLNueKNiOSWrAFKu75xqRdbZ2De+JKR
# Hh09/SDPc31BmkZ1zcRfNN0Sidb9pSB9fvzZnkXftnIv231fgLrbqn427DZM9itu
# qBJR6L8FA6PRc6ZNN3SUHDSCD/AQ8rdHGO2n6Jl8P0zbr17C89XYcz1DTsEzOUyO
# ArxCaC4Q6oRRRuLRvWoYWmEBc8pnol7XKHYC4jMYctenIPDC+hIK12NvDMk2ZItb
# oKaDIV1fMHSRlJTYuVD5C4lh8zYGNRiER9vcG9H9stQcxWv2XFJRXRLbJbqvUAV6
# bMURHXLvjflSxIUXk8A8FdsaN8cIFRg/eKtFtvUeh17aj54WcmnGrnu3tz5q4i6t
# AgMBAAGjggHdMIIB2TASBgkrBgEEAYI3FQEEBQIDAQABMCMGCSsGAQQBgjcVAgQW
# BBQqp1L+ZMSavoKRPEY1Kc8Q/y8E7jAdBgNVHQ4EFgQUn6cVXQBeYl2D9OXSZacb
# UzUZ6XIwXAYDVR0gBFUwUzBRBgwrBgEEAYI3TIN9AQEwQTA/BggrBgEFBQcCARYz
# aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9zaXRvcnku
# aHRtMBMGA1UdJQQMMAoGCCsGAQUFBwMIMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIA
# QwBBMAsGA1UdDwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFNX2
# VsuP6KJcYmjRPZSQW9fOmhjEMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9jcmwu
# bWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY1Jvb0NlckF1dF8yMDEw
# LTA2LTIzLmNybDBaBggrBgEFBQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6Ly93
# d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljUm9vQ2VyQXV0XzIwMTAtMDYt
# MjMuY3J0MA0GCSqGSIb3DQEBCwUAA4ICAQCdVX38Kq3hLB9nATEkW+Geckv8qW/q
# XBS2Pk5HZHixBpOXPTEztTnXwnE2P9pkbHzQdTltuw8x5MKP+2zRoZQYIu7pZmc6
# U03dmLq2HnjYNi6cqYJWAAOwBb6J6Gngugnue99qb74py27YP0h1AdkY3m2CDPVt
# I1TkeFN1JFe53Z/zjj3G82jfZfakVqr3lbYoVSfQJL1AoL8ZthISEV09J+BAljis
# 9/kpicO8F7BUhUKz/AyeixmJ5/ALaoHCgRlCGVJ1ijbCHcNhcy4sa3tuPywJeBTp
# kbKpW99Jo3QMvOyRgNI95ko+ZjtPu4b6MhrZlvSP9pEB9s7GdP32THJvEKt1MMU0
# sHrYUP4KWN1APMdUbZ1jdEgssU5HLcEUBHG/ZPkkvnNtyo4JvbMBV0lUZNlz138e
# W0QBjloZkWsNn6Qo3GcZKCS6OEuabvshVGtqRRFHqfG3rsjoiV5PndLQTHa1V1QJ
# sWkBRH58oWFsc/4Ku+xBZj1p/cvBQUl+fpO+y/g75LcVv7TOPqUxUYS8vwLBgqJ7
# Fx0ViY1w/ue10CgaiQuPNtq6TPmb/wrpNPgkNWcr4A245oyZ1uEi6vAnQj0llOZ0
# dFtq0Z4+7X6gMTN9vMvpe784cETRkPHIqzqKOghif9lwY1NNje6CbaUFEMFxBmoQ
# tB1VM1izoXBm8qGCAtQwggI9AgEBMIIBAKGB2KSB1TCB0jELMAkGA1UEBhMCVVMx
# EzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoT
# FU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEtMCsGA1UECxMkTWljcm9zb2Z0IElyZWxh
# bmQgT3BlcmF0aW9ucyBMaW1pdGVkMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjo4
# NkRGLTRCQkMtOTMzNTElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2Vy
# dmljZaIjCgEBMAcGBSsOAwIaAxUANiNHGWXbNaDPxnyiDbEOciSjFhCggYMwgYCk
# fjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMH
# UmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYDVQQD
# Ex1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDANBgkqhkiG9w0BAQUFAAIF
# AOl+LA0wIhgPMjAyNDAyMjAwMzM1NDFaGA8yMDI0MDIyMTAzMzU0MVowdDA6Bgor
# BgEEAYRZCgQBMSwwKjAKAgUA6X4sDQIBADAHAgEAAgIRPjAHAgEAAgIRbzAKAgUA
# 6X99jQIBADA2BgorBgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZCgMCoAowCAIBAAID
# B6EgoQowCAIBAAIDAYagMA0GCSqGSIb3DQEBBQUAA4GBAKPHxGJ5Su7VZLv3Ba5i
# Ij2TiRK1Eknupo36VJhUAjdQqDfWRis9mEvoxrdnEgbqkN8kvth0bKsTjyHZIXU6
# yTLthrMcXeVNkT3oGX9wI2b1pr9RpgvhNr5RsfNCBgFTkvU/dnN4bPXGSyF3yX8c
# +9PL85HTQJfj4cxHKGqTctFzMYIEDTCCBAkCAQEwgZMwfDELMAkGA1UEBhMCVVMx
# EzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoT
# FU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUt
# U3RhbXAgUENBIDIwMTACEzMAAAHdXVcdldStqhsAAQAAAd0wDQYJYIZIAWUDBAIB
# BQCgggFKMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAvBgkqhkiG9w0BCQQx
# IgQgCMKWXxSFqR0B6qu6EBLaYsSPl/sPwIrQQQZmiZmUUpQwgfoGCyqGSIb3DQEJ
# EAIvMYHqMIHnMIHkMIG9BCBh/w4tmmWsT3iZnHtH0Vk37UCN02lRxY+RiON6wDFj
# ZjCBmDCBgKR+MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAw
# DgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24x
# JjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwAhMzAAAB3V1X
# HZXUraobAAEAAAHdMCIEIEXKm9pbP+lph9V+giwCh77C3QoSB5DAVUezi4oA/U1K
# MA0GCSqGSIb3DQEBCwUABIICAJZy++OvONFKryJlXl3igvN2/wBz6uIyVo7hDo+K
# 3a3GiNVdeRGdnzrR+rArvCNXOZ+IZMrp0ELC3brphraqCJWZ39Jy4Y2TxuK8jLS5
# HLn7YcMrM9Sencf/W4dI7eTnS5PCwn3DoZjcKUlMk3Vl76bWvKXsZ8IeO3BWKXL2
# G19f+kKzktVmOFw0AU5w8sjkUnrlGPA1yHVIo8FiXlInmfjuamH32jV2Aw0oKq7C
# pxLEwIkcKy+XK5xXffgQp1Rsjfg+TQk05BCB/CX4KeFwJWq2wT0GYogxHLSh2d8o
# FVfIN8SMutXF5qbA+E6lNDqcBYZu+PPtKST9s723RSKVOEQFTBBc5WaociSZ8olk
# 7H31JmYujXlP6DfC6tYzJIUvsJme6ovLtf7c1gZgll5fMukrBEk1+3mZnxnS+Jeb
# DY24Fn1J2IL5pZuEIayU8igFNr8YEsnZl/ouooVlWepMYYoiiDlJer4BiVY+MCNu
# WgSO5S4flyjQhu2zt/dAjvIcfF+CD/o3nEiMptnDYGSmowqQZhLKs0MI0LhOc7Uo
# f6DzRpwxUGP03S2AKHvQWOT2FMShaAmkX9Mz5Rw9x12hl1yjoDQ2nHZGn61qBgvD
# L11RycoNYQeTSgi6PwujEttl/RTrDYmoXeuJ1CjGQIYWh+dkgR0U3HmMyZ9I7tan
# 4Ohk
# SIG # End signature block