exports/ProxyCmdletDefinitions.ps1


# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get teamsAppDefinition from chats
.Description
Get teamsAppDefinition from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatinstalledappteamappdefinition
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppDefinition
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatinstalledappteamappdefinition
#>

function Get-MgChatInstalledAppTeamAppDefinition {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppDefinition])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: teamsAppInstallation-id of teamsAppInstallation
    ${TeamsAppInstallationId},

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChatInstalledAppTeamAppDefinition_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatInstalledAppTeamAppDefinition_GetViaIdentity';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get teamsApp from chats
.Description
Get teamsApp from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatinstalledappteamapp
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsApp
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatinstalledappteamapp
#>

function Get-MgChatInstalledAppTeamApp {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsApp])]
[CmdletBinding(DefaultParameterSetName='Get', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: teamsAppInstallation-id of teamsAppInstallation
    ${TeamsAppInstallationId},

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChatInstalledAppTeamApp_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatInstalledAppTeamApp_GetViaIdentity';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get installedApps from chats
.Description
Get installedApps from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatinstalledapp
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatinstalledapp
#>

function Get-MgChatInstalledApp {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: teamsAppInstallation-id of teamsAppInstallation
    ${TeamsAppInstallationId},

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

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

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

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.PowerShell.Category('Query')]
    [System.Management.Automation.SwitchParameter]
    # Include count of items
    ${Count},

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

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

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChatInstalledApp_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatInstalledApp_GetViaIdentity';
            List = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatInstalledApp_List';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get members from chats
.Description
Get members from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmember
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmember
#>

function Get-MgChatMember {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: conversationMember-id of conversationMember
    ${ConversationMemberId},

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

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

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

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.PowerShell.Category('Query')]
    [System.Management.Automation.SwitchParameter]
    # Include count of items
    ${Count},

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

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

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChatMember_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMember_GetViaIdentity';
            List = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMember_List';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Invoke function delta
.Description
Invoke function delta
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagedelta
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagedelta
#>

function Get-MgChatMessageDelta {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage])]
[CmdletBinding(DefaultParameterSetName='Delta', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Delta', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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 = @{
            Delta = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageDelta_Delta';
            DeltaViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageDelta_DeltaViaIdentity';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get hostedContents from chats
.Description
Get hostedContents from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagehostedcontent
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagehostedcontent
#>

function Get-MgChatMessageHostedContent {
[OutputType([System.String], [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessageHostedContent-id of chatMessageHostedContent
    ${ChatMessageHostedContentId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

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

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

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

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.PowerShell.Category('Query')]
    [System.Management.Automation.SwitchParameter]
    # Include count of items
    ${Count},

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

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

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChatMessageHostedContent_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageHostedContent_GetViaIdentity';
            List = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageHostedContent_List';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Invoke function delta
.Description
Invoke function delta
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagereplydelta
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagereplydelta
#>

function Get-MgChatMessageReplyDelta {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage])]
[CmdletBinding(DefaultParameterSetName='Delta', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Delta', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Delta', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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 = @{
            Delta = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageReplyDelta_Delta';
            DeltaViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageReplyDelta_DeltaViaIdentity';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get replies from chats
.Description
Get replies from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagereply
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessagereply
#>

function Get-MgChatMessageReply {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId1},

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

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

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

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.PowerShell.Category('Query')]
    [System.Management.Automation.SwitchParameter]
    # Include count of items
    ${Count},

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

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

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChatMessageReply_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageReply_GetViaIdentity';
            List = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessageReply_List';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get messages from chats
.Description
Get messages from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessage
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchatmessage
#>

function Get-MgChatMessage {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

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

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

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

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.PowerShell.Category('Query')]
    [System.Management.Automation.SwitchParameter]
    # Include count of items
    ${Count},

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

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

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChatMessage_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessage_GetViaIdentity';
            List = 'Microsoft.Graph.Teams.Chats.private\Get-MgChatMessage_List';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get entity from chats by key
.Description
Get entity from chats by key
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchat
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mgchat
#>

function Get-MgChat {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

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

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

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

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.PowerShell.Category('Query')]
    [System.Management.Automation.SwitchParameter]
    # Include count of items
    ${Count},

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

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

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgChat_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgChat_GetViaIdentity';
            List = 'Microsoft.Graph.Teams.Chats.private\Get-MgChat_List';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Get chats from users
.Description
Get chats from users
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mguserchat
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/get-mguserchat
#>

function Get-MgUserChat {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
    [Parameter(ParameterSetName='Get', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Get', Mandatory)]
    [Parameter(ParameterSetName='List', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: user-id of user
    ${UserId},

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

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

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

    [Parameter(ParameterSetName='List')]
    [Microsoft.Graph.PowerShell.Category('Query')]
    [System.Management.Automation.SwitchParameter]
    # Include count of items
    ${Count},

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

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

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

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

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Get-MgUserChat_Get';
            GetViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Get-MgUserChat_GetViaIdentity';
            List = 'Microsoft.Graph.Teams.Chats.private\Get-MgUserChat_List';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Invoke function allMessages
.Description
Invoke function allMessages
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/invoke-mgmessagechat
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/invoke-mgmessagechat
#>

function Invoke-MgMessageChat {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage])]
[CmdletBinding(DefaultParameterSetName='Messages', PositionalBinding=$false)]
param(
    [Parameter(DontShow)]
    [Microsoft.Graph.PowerShell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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 = @{
            Messages = 'Microsoft.Graph.Teams.Chats.private\Invoke-MgMessageChat_Messages';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Create new navigation property to installedApps for chats
.Description
Create new navigation property to installedApps for chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatinstalledapp
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation
.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 <IMicrosoftGraphTeamsAppInstallation>: HELP MESSAGE MISSING
  [Id <String>]:
  [TeamAppDefinitionDisplayName <String>]:
  [TeamAppDefinitionId <String>]:
  [TeamAppDefinitionTeamsAppId <String>]:
  [TeamAppDefinitionVersion <String>]:
  [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [TeamsAppId <String>]:
    [Version <String>]:
  [TeamAppDisplayName <String>]:
  [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
  [TeamAppExternalId <String>]:
  [TeamAppId <String>]:
  [TeamAppName <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
TEAMAPPDEFINITIONS <IMicrosoftGraphTeamsAppDefinition[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [TeamsAppId <String>]:
  [Version <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatinstalledapp
#>

function New-MgChatInstalledApp {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionDisplayName},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionId},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionTeamsAppId},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionVersion},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppDefinition[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for TEAMAPPDEFINITIONS properties and create a hash table.
    ${TeamAppDefinitions},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDisplayName},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # teamsAppDistributionMethod
    ${TeamAppDistributionMethod},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppExternalId},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppId},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppName},

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\New-MgChatInstalledApp_Create';
            CreateExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatInstalledApp_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\New-MgChatInstalledApp_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatInstalledApp_CreateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Create new navigation property to members for chats
.Description
Create new navigation property to members for chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmember
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember
.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 <IMicrosoftGraphConversationMember>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [Roles <String[]>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmember
#>

function New-MgChatMember {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${DisplayName},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String[]]
    # HELP MESSAGE MISSING
    ${Roles},

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\New-MgChatMember_Create';
            CreateExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMember_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMember_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMember_CreateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Create new navigation property to hostedContents for chats
.Description
Create new navigation property to hostedContents for chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmessagehostedcontent
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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.
 
BODYPARAMETER <IMicrosoftGraphChatMessageHostedContent>: HELP MESSAGE MISSING
  [Id <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmessagehostedcontent
#>

function New-MgChatMessageHostedContent {
[OutputType([System.String])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\New-MgChatMessageHostedContent_Create';
            CreateExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessageHostedContent_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessageHostedContent_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessageHostedContent_CreateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Create new navigation property to replies for chats
.Description
Create new navigation property to replies for chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmessagereply
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.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.
 
ATTACHMENTS <IMicrosoftGraphChatMessageAttachment[]>: HELP MESSAGE MISSING
  [Content <String>]:
  [ContentType <String>]:
  [ContentUrl <String>]:
  [Id <String>]:
  [Name <String>]:
  [ThumbnailUrl <String>]:
 
BODYPARAMETER <IMicrosoftGraphChatMessage>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
 
FROM <IMicrosoftGraphIdentitySet>: identitySet
  [Application <IMicrosoftGraphIdentity>]: identity
    [DisplayName <String>]:
    [Id <String>]:
  [Device <IMicrosoftGraphIdentity>]: identity
  [User <IMicrosoftGraphIdentity>]: identity
 
HOSTEDCONTENTS <IMicrosoftGraphChatMessageHostedContent[]>: HELP MESSAGE MISSING
  [Id <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
MENTIONS <IMicrosoftGraphChatMessageMention[]>: HELP MESSAGE MISSING
  [Id <Int32?>]:
  [MentionText <String>]:
  [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REACTIONS <IMicrosoftGraphChatMessageReaction[]>: HELP MESSAGE MISSING
  [CreatedDateTime <DateTime?>]:
  [ReactionType <String>]:
  [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REPLIES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmessagereply
#>

function New-MgChatMessageReply {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageAttachment[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for ATTACHMENTS properties and create a hash table.
    ${Attachments},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${BodyContent},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # bodyType
    ${BodyContentType},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${DeletedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Etag},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphIdentitySet]
    # identitySet
    # To construct, see NOTES section for FROM properties and create a hash table.
    ${From},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for HOSTEDCONTENTS properties and create a hash table.
    ${HostedContents},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageImportance
    ${Importance},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastModifiedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Locale},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageMention[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MENTIONS properties and create a hash table.
    ${Mentions},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageType
    ${MessageType},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipComplianceUrl},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipGeneralText},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String[]]
    # HELP MESSAGE MISSING
    ${PolicyTipMatchedConditionDescriptions},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationDlpActionTypes
    ${PolicyViolationDlpAction},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyViolationJustificationText},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationUserActionTypes
    ${PolicyViolationUserAction},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationVerdictDetailsTypes
    ${PolicyViolationVerdictDetails},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageReaction[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REACTIONS properties and create a hash table.
    ${Reactions},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REPLIES properties and create a hash table.
    ${Replies},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${ReplyToId},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Subject},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Summary},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${WebUrl},

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\New-MgChatMessageReply_Create';
            CreateExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessageReply_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessageReply_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessageReply_CreateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Create new navigation property to messages for chats
.Description
Create new navigation property to messages for chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmessage
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.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.
 
ATTACHMENTS <IMicrosoftGraphChatMessageAttachment[]>: HELP MESSAGE MISSING
  [Content <String>]:
  [ContentType <String>]:
  [ContentUrl <String>]:
  [Id <String>]:
  [Name <String>]:
  [ThumbnailUrl <String>]:
 
BODYPARAMETER <IMicrosoftGraphChatMessage>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
 
FROM <IMicrosoftGraphIdentitySet>: identitySet
  [Application <IMicrosoftGraphIdentity>]: identity
    [DisplayName <String>]:
    [Id <String>]:
  [Device <IMicrosoftGraphIdentity>]: identity
  [User <IMicrosoftGraphIdentity>]: identity
 
HOSTEDCONTENTS <IMicrosoftGraphChatMessageHostedContent[]>: HELP MESSAGE MISSING
  [Id <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
MENTIONS <IMicrosoftGraphChatMessageMention[]>: HELP MESSAGE MISSING
  [Id <Int32?>]:
  [MentionText <String>]:
  [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REACTIONS <IMicrosoftGraphChatMessageReaction[]>: HELP MESSAGE MISSING
  [CreatedDateTime <DateTime?>]:
  [ReactionType <String>]:
  [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REPLIES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchatmessage
#>

function New-MgChatMessage {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageAttachment[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for ATTACHMENTS properties and create a hash table.
    ${Attachments},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${BodyContent},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # bodyType
    ${BodyContentType},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${DeletedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Etag},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphIdentitySet]
    # identitySet
    # To construct, see NOTES section for FROM properties and create a hash table.
    ${From},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for HOSTEDCONTENTS properties and create a hash table.
    ${HostedContents},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageImportance
    ${Importance},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastModifiedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Locale},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageMention[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MENTIONS properties and create a hash table.
    ${Mentions},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageType
    ${MessageType},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipComplianceUrl},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipGeneralText},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String[]]
    # HELP MESSAGE MISSING
    ${PolicyTipMatchedConditionDescriptions},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationDlpActionTypes
    ${PolicyViolationDlpAction},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyViolationJustificationText},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationUserActionTypes
    ${PolicyViolationUserAction},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationVerdictDetailsTypes
    ${PolicyViolationVerdictDetails},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageReaction[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REACTIONS properties and create a hash table.
    ${Reactions},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REPLIES properties and create a hash table.
    ${Replies},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${ReplyToId},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Subject},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Summary},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${WebUrl},

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\New-MgChatMessage_Create';
            CreateExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessage_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessage_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChatMessage_CreateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Add new entity to chats
.Description
Add new entity to chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchat
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.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 <IMicrosoftGraphChat>: HELP MESSAGE MISSING
  [Id <String>]:
  [CreatedDateTime <DateTime?>]:
  [InstalledApps <IMicrosoftGraphTeamsAppInstallation[]>]:
    [Id <String>]:
    [TeamAppDefinitionDisplayName <String>]:
    [TeamAppDefinitionId <String>]:
    [TeamAppDefinitionTeamsAppId <String>]:
    [TeamAppDefinitionVersion <String>]:
    [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
      [Id <String>]:
      [DisplayName <String>]:
      [TeamsAppId <String>]:
      [Version <String>]:
    [TeamAppDisplayName <String>]:
    [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
    [TeamAppExternalId <String>]:
    [TeamAppId <String>]:
    [TeamAppName <String>]:
  [LastUpdatedDateTime <DateTime?>]:
  [Members <IMicrosoftGraphConversationMember[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [Roles <String[]>]:
  [Messages <IMicrosoftGraphChatMessage[]>]:
    [Id <String>]:
    [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
      [Content <String>]:
      [ContentType <String>]:
      [ContentUrl <String>]:
      [Id <String>]:
      [Name <String>]:
      [ThumbnailUrl <String>]:
    [BodyContent <String>]:
    [BodyContentType <String>]: bodyType
    [CreatedDateTime <DateTime?>]:
    [DeletedDateTime <DateTime?>]:
    [Etag <String>]:
    [From <IMicrosoftGraphIdentitySet>]: identitySet
      [Application <IMicrosoftGraphIdentity>]: identity
        [DisplayName <String>]:
        [Id <String>]:
      [Device <IMicrosoftGraphIdentity>]: identity
      [User <IMicrosoftGraphIdentity>]: identity
    [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
      [Id <String>]:
    [Importance <String>]: chatMessageImportance
    [LastModifiedDateTime <DateTime?>]:
    [Locale <String>]:
    [Mentions <IMicrosoftGraphChatMessageMention[]>]:
      [Id <Int32?>]:
      [MentionText <String>]:
      [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [MessageType <String>]: chatMessageType
    [PolicyTipComplianceUrl <String>]:
    [PolicyTipGeneralText <String>]:
    [PolicyTipMatchedConditionDescriptions <String[]>]:
    [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
    [PolicyViolationJustificationText <String>]:
    [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
    [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
    [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
      [CreatedDateTime <DateTime?>]:
      [ReactionType <String>]:
      [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Replies <IMicrosoftGraphChatMessage[]>]:
    [ReplyToId <String>]:
    [Subject <String>]:
    [Summary <String>]:
    [WebUrl <String>]:
  [Topic <String>]:
 
INSTALLEDAPPS <IMicrosoftGraphTeamsAppInstallation[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [TeamAppDefinitionDisplayName <String>]:
  [TeamAppDefinitionId <String>]:
  [TeamAppDefinitionTeamsAppId <String>]:
  [TeamAppDefinitionVersion <String>]:
  [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [TeamsAppId <String>]:
    [Version <String>]:
  [TeamAppDisplayName <String>]:
  [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
  [TeamAppExternalId <String>]:
  [TeamAppId <String>]:
  [TeamAppName <String>]:
 
MEMBERS <IMicrosoftGraphConversationMember[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [Roles <String[]>]:
 
MESSAGES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mgchat
#>

function New-MgChat {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for INSTALLEDAPPS properties and create a hash table.
    ${InstalledApps},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastUpdatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MEMBERS properties and create a hash table.
    ${Members},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MESSAGES properties and create a hash table.
    ${Messages},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Topic},

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\New-MgChat_Create';
            CreateExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgChat_CreateExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Create new navigation property to chats for users
.Description
Create new navigation property to chats for users
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mguserchat
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.Outputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.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 <IMicrosoftGraphChat>: HELP MESSAGE MISSING
  [Id <String>]:
  [CreatedDateTime <DateTime?>]:
  [InstalledApps <IMicrosoftGraphTeamsAppInstallation[]>]:
    [Id <String>]:
    [TeamAppDefinitionDisplayName <String>]:
    [TeamAppDefinitionId <String>]:
    [TeamAppDefinitionTeamsAppId <String>]:
    [TeamAppDefinitionVersion <String>]:
    [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
      [Id <String>]:
      [DisplayName <String>]:
      [TeamsAppId <String>]:
      [Version <String>]:
    [TeamAppDisplayName <String>]:
    [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
    [TeamAppExternalId <String>]:
    [TeamAppId <String>]:
    [TeamAppName <String>]:
  [LastUpdatedDateTime <DateTime?>]:
  [Members <IMicrosoftGraphConversationMember[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [Roles <String[]>]:
  [Messages <IMicrosoftGraphChatMessage[]>]:
    [Id <String>]:
    [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
      [Content <String>]:
      [ContentType <String>]:
      [ContentUrl <String>]:
      [Id <String>]:
      [Name <String>]:
      [ThumbnailUrl <String>]:
    [BodyContent <String>]:
    [BodyContentType <String>]: bodyType
    [CreatedDateTime <DateTime?>]:
    [DeletedDateTime <DateTime?>]:
    [Etag <String>]:
    [From <IMicrosoftGraphIdentitySet>]: identitySet
      [Application <IMicrosoftGraphIdentity>]: identity
        [DisplayName <String>]:
        [Id <String>]:
      [Device <IMicrosoftGraphIdentity>]: identity
      [User <IMicrosoftGraphIdentity>]: identity
    [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
      [Id <String>]:
    [Importance <String>]: chatMessageImportance
    [LastModifiedDateTime <DateTime?>]:
    [Locale <String>]:
    [Mentions <IMicrosoftGraphChatMessageMention[]>]:
      [Id <Int32?>]:
      [MentionText <String>]:
      [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [MessageType <String>]: chatMessageType
    [PolicyTipComplianceUrl <String>]:
    [PolicyTipGeneralText <String>]:
    [PolicyTipMatchedConditionDescriptions <String[]>]:
    [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
    [PolicyViolationJustificationText <String>]:
    [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
    [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
    [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
      [CreatedDateTime <DateTime?>]:
      [ReactionType <String>]:
      [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Replies <IMicrosoftGraphChatMessage[]>]:
    [ReplyToId <String>]:
    [Subject <String>]:
    [Summary <String>]:
    [WebUrl <String>]:
  [Topic <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
INSTALLEDAPPS <IMicrosoftGraphTeamsAppInstallation[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [TeamAppDefinitionDisplayName <String>]:
  [TeamAppDefinitionId <String>]:
  [TeamAppDefinitionTeamsAppId <String>]:
  [TeamAppDefinitionVersion <String>]:
  [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [TeamsAppId <String>]:
    [Version <String>]:
  [TeamAppDisplayName <String>]:
  [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
  [TeamAppExternalId <String>]:
  [TeamAppId <String>]:
  [TeamAppName <String>]:
 
MEMBERS <IMicrosoftGraphConversationMember[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [Roles <String[]>]:
 
MESSAGES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/new-mguserchat
#>

function New-MgUserChat {
[OutputType([Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat])]
[CmdletBinding(DefaultParameterSetName='CreateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Create', Mandatory)]
    [Parameter(ParameterSetName='CreateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: user-id of user
    ${UserId},

    [Parameter(ParameterSetName='CreateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for INSTALLEDAPPS properties and create a hash table.
    ${InstalledApps},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastUpdatedDateTime},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MEMBERS properties and create a hash table.
    ${Members},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MESSAGES properties and create a hash table.
    ${Messages},

    [Parameter(ParameterSetName='CreateExpanded')]
    [Parameter(ParameterSetName='CreateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Topic},

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\New-MgUserChat_Create';
            CreateExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgUserChat_CreateExpanded';
            CreateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\New-MgUserChat_CreateViaIdentity';
            CreateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\New-MgUserChat_CreateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Delete entity from chats
.Description
Delete entity from chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/remove-mgchat
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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 <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/remove-mgchat
#>

function Remove-MgChat {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='Delete', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Delete', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

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

    [Parameter()]
    [Microsoft.Graph.PowerShell.Category('Header')]
    [System.String]
    # ETag
    ${IfMatch},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Remove-MgChat_Delete';
            DeleteViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Remove-MgChat_DeleteViaIdentity';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Update the navigation property installedApps in chats
.Description
Update the navigation property installedApps in chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatinstalledapp
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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 <IMicrosoftGraphTeamsAppInstallation>: HELP MESSAGE MISSING
  [Id <String>]:
  [TeamAppDefinitionDisplayName <String>]:
  [TeamAppDefinitionId <String>]:
  [TeamAppDefinitionTeamsAppId <String>]:
  [TeamAppDefinitionVersion <String>]:
  [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [TeamsAppId <String>]:
    [Version <String>]:
  [TeamAppDisplayName <String>]:
  [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
  [TeamAppExternalId <String>]:
  [TeamAppId <String>]:
  [TeamAppName <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
TEAMAPPDEFINITIONS <IMicrosoftGraphTeamsAppDefinition[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [TeamsAppId <String>]:
  [Version <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatinstalledapp
#>

function Update-MgChatInstalledApp {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Parameter(ParameterSetName='Upgrade', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Parameter(ParameterSetName='Upgrade', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: teamsAppInstallation-id of teamsAppInstallation
    ${TeamsAppInstallationId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpgradeViaIdentity', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionDisplayName},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionId},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionTeamsAppId},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDefinitionVersion},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppDefinition[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for TEAMAPPDEFINITIONS properties and create a hash table.
    ${TeamAppDefinitions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppDisplayName},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # teamsAppDistributionMethod
    ${TeamAppDistributionMethod},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppExternalId},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppId},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${TeamAppName},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Update-MgChatInstalledApp_Update';
            UpdateExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatInstalledApp_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatInstalledApp_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatInstalledApp_UpdateViaIdentityExpanded';
            Upgrade = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatInstalledApp_Upgrade';
            UpgradeViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatInstalledApp_UpgradeViaIdentity';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Update the navigation property members in chats
.Description
Update the navigation property members in chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmember
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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 <IMicrosoftGraphConversationMember>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [Roles <String[]>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmember
#>

function Update-MgChatMember {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: conversationMember-id of conversationMember
    ${ConversationMemberId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${DisplayName},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String[]]
    # HELP MESSAGE MISSING
    ${Roles},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Update-MgChatMember_Update';
            UpdateExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMember_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMember_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMember_UpdateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Update the navigation property hostedContents in chats
.Description
Update the navigation property hostedContents in chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmessagehostedcontent
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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 <IMicrosoftGraphChatMessageHostedContent>: HELP MESSAGE MISSING
  [Id <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmessagehostedcontent
#>

function Update-MgChatMessageHostedContent {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessageHostedContent-id of chatMessageHostedContent
    ${ChatMessageHostedContentId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Update-MgChatMessageHostedContent_Update';
            UpdateExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessageHostedContent_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessageHostedContent_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessageHostedContent_UpdateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Update the navigation property replies in chats
.Description
Update the navigation property replies in chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmessagereply
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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.
 
ATTACHMENTS <IMicrosoftGraphChatMessageAttachment[]>: HELP MESSAGE MISSING
  [Content <String>]:
  [ContentType <String>]:
  [ContentUrl <String>]:
  [Id <String>]:
  [Name <String>]:
  [ThumbnailUrl <String>]:
 
BODYPARAMETER <IMicrosoftGraphChatMessage>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
 
FROM <IMicrosoftGraphIdentitySet>: identitySet
  [Application <IMicrosoftGraphIdentity>]: identity
    [DisplayName <String>]:
    [Id <String>]:
  [Device <IMicrosoftGraphIdentity>]: identity
  [User <IMicrosoftGraphIdentity>]: identity
 
HOSTEDCONTENTS <IMicrosoftGraphChatMessageHostedContent[]>: HELP MESSAGE MISSING
  [Id <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
MENTIONS <IMicrosoftGraphChatMessageMention[]>: HELP MESSAGE MISSING
  [Id <Int32?>]:
  [MentionText <String>]:
  [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REACTIONS <IMicrosoftGraphChatMessageReaction[]>: HELP MESSAGE MISSING
  [CreatedDateTime <DateTime?>]:
  [ReactionType <String>]:
  [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REPLIES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmessagereply
#>

function Update-MgChatMessageReply {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId1},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageAttachment[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for ATTACHMENTS properties and create a hash table.
    ${Attachments},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${BodyContent},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # bodyType
    ${BodyContentType},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${DeletedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Etag},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphIdentitySet]
    # identitySet
    # To construct, see NOTES section for FROM properties and create a hash table.
    ${From},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for HOSTEDCONTENTS properties and create a hash table.
    ${HostedContents},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageImportance
    ${Importance},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastModifiedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Locale},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageMention[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MENTIONS properties and create a hash table.
    ${Mentions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageType
    ${MessageType},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipComplianceUrl},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipGeneralText},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String[]]
    # HELP MESSAGE MISSING
    ${PolicyTipMatchedConditionDescriptions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationDlpActionTypes
    ${PolicyViolationDlpAction},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyViolationJustificationText},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationUserActionTypes
    ${PolicyViolationUserAction},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationVerdictDetailsTypes
    ${PolicyViolationVerdictDetails},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageReaction[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REACTIONS properties and create a hash table.
    ${Reactions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REPLIES properties and create a hash table.
    ${Replies},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${ReplyToId},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Subject},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Summary},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${WebUrl},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Update-MgChatMessageReply_Update';
            UpdateExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessageReply_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessageReply_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessageReply_UpdateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Update the navigation property messages in chats
.Description
Update the navigation property messages in chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmessage
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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.
 
ATTACHMENTS <IMicrosoftGraphChatMessageAttachment[]>: HELP MESSAGE MISSING
  [Content <String>]:
  [ContentType <String>]:
  [ContentUrl <String>]:
  [Id <String>]:
  [Name <String>]:
  [ThumbnailUrl <String>]:
 
BODYPARAMETER <IMicrosoftGraphChatMessage>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
 
FROM <IMicrosoftGraphIdentitySet>: identitySet
  [Application <IMicrosoftGraphIdentity>]: identity
    [DisplayName <String>]:
    [Id <String>]:
  [Device <IMicrosoftGraphIdentity>]: identity
  [User <IMicrosoftGraphIdentity>]: identity
 
HOSTEDCONTENTS <IMicrosoftGraphChatMessageHostedContent[]>: HELP MESSAGE MISSING
  [Id <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
MENTIONS <IMicrosoftGraphChatMessageMention[]>: HELP MESSAGE MISSING
  [Id <Int32?>]:
  [MentionText <String>]:
  [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REACTIONS <IMicrosoftGraphChatMessageReaction[]>: HELP MESSAGE MISSING
  [CreatedDateTime <DateTime?>]:
  [ReactionType <String>]:
  [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
 
REPLIES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchatmessage
#>

function Update-MgChatMessage {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chatMessage-id of chatMessage
    ${ChatMessageId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageAttachment[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for ATTACHMENTS properties and create a hash table.
    ${Attachments},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${BodyContent},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # bodyType
    ${BodyContentType},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${DeletedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Etag},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphIdentitySet]
    # identitySet
    # To construct, see NOTES section for FROM properties and create a hash table.
    ${From},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageHostedContent[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for HOSTEDCONTENTS properties and create a hash table.
    ${HostedContents},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageImportance
    ${Importance},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastModifiedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Locale},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageMention[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MENTIONS properties and create a hash table.
    ${Mentions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessageType
    ${MessageType},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipComplianceUrl},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyTipGeneralText},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String[]]
    # HELP MESSAGE MISSING
    ${PolicyTipMatchedConditionDescriptions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationDlpActionTypes
    ${PolicyViolationDlpAction},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${PolicyViolationJustificationText},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationUserActionTypes
    ${PolicyViolationUserAction},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # chatMessagePolicyViolationVerdictDetailsTypes
    ${PolicyViolationVerdictDetails},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessageReaction[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REACTIONS properties and create a hash table.
    ${Reactions},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for REPLIES properties and create a hash table.
    ${Replies},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${ReplyToId},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Subject},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Summary},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${WebUrl},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Update-MgChatMessage_Update';
            UpdateExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessage_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessage_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChatMessage_UpdateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Update entity in chats
.Description
Update entity in chats
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchat
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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 <IMicrosoftGraphChat>: HELP MESSAGE MISSING
  [Id <String>]:
  [CreatedDateTime <DateTime?>]:
  [InstalledApps <IMicrosoftGraphTeamsAppInstallation[]>]:
    [Id <String>]:
    [TeamAppDefinitionDisplayName <String>]:
    [TeamAppDefinitionId <String>]:
    [TeamAppDefinitionTeamsAppId <String>]:
    [TeamAppDefinitionVersion <String>]:
    [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
      [Id <String>]:
      [DisplayName <String>]:
      [TeamsAppId <String>]:
      [Version <String>]:
    [TeamAppDisplayName <String>]:
    [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
    [TeamAppExternalId <String>]:
    [TeamAppId <String>]:
    [TeamAppName <String>]:
  [LastUpdatedDateTime <DateTime?>]:
  [Members <IMicrosoftGraphConversationMember[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [Roles <String[]>]:
  [Messages <IMicrosoftGraphChatMessage[]>]:
    [Id <String>]:
    [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
      [Content <String>]:
      [ContentType <String>]:
      [ContentUrl <String>]:
      [Id <String>]:
      [Name <String>]:
      [ThumbnailUrl <String>]:
    [BodyContent <String>]:
    [BodyContentType <String>]: bodyType
    [CreatedDateTime <DateTime?>]:
    [DeletedDateTime <DateTime?>]:
    [Etag <String>]:
    [From <IMicrosoftGraphIdentitySet>]: identitySet
      [Application <IMicrosoftGraphIdentity>]: identity
        [DisplayName <String>]:
        [Id <String>]:
      [Device <IMicrosoftGraphIdentity>]: identity
      [User <IMicrosoftGraphIdentity>]: identity
    [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
      [Id <String>]:
    [Importance <String>]: chatMessageImportance
    [LastModifiedDateTime <DateTime?>]:
    [Locale <String>]:
    [Mentions <IMicrosoftGraphChatMessageMention[]>]:
      [Id <Int32?>]:
      [MentionText <String>]:
      [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [MessageType <String>]: chatMessageType
    [PolicyTipComplianceUrl <String>]:
    [PolicyTipGeneralText <String>]:
    [PolicyTipMatchedConditionDescriptions <String[]>]:
    [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
    [PolicyViolationJustificationText <String>]:
    [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
    [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
    [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
      [CreatedDateTime <DateTime?>]:
      [ReactionType <String>]:
      [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Replies <IMicrosoftGraphChatMessage[]>]:
    [ReplyToId <String>]:
    [Subject <String>]:
    [Summary <String>]:
    [WebUrl <String>]:
  [Topic <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
INSTALLEDAPPS <IMicrosoftGraphTeamsAppInstallation[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [TeamAppDefinitionDisplayName <String>]:
  [TeamAppDefinitionId <String>]:
  [TeamAppDefinitionTeamsAppId <String>]:
  [TeamAppDefinitionVersion <String>]:
  [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [TeamsAppId <String>]:
    [Version <String>]:
  [TeamAppDisplayName <String>]:
  [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
  [TeamAppExternalId <String>]:
  [TeamAppId <String>]:
  [TeamAppName <String>]:
 
MEMBERS <IMicrosoftGraphConversationMember[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [Roles <String[]>]:
 
MESSAGES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mgchat
#>

function Update-MgChat {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for INSTALLEDAPPS properties and create a hash table.
    ${InstalledApps},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastUpdatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MEMBERS properties and create a hash table.
    ${Members},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MESSAGES properties and create a hash table.
    ${Messages},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Topic},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Update-MgChat_Update';
            UpdateExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChat_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgChat_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgChat_UpdateViaIdentityExpanded';
        }
        $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
    }
}
}

# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------
<#
.Synopsis
Update the navigation property chats in users
.Description
Update the navigation property chats in users
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mguserchat
.Inputs
Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat
.Inputs
Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity
.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 <IMicrosoftGraphChat>: HELP MESSAGE MISSING
  [Id <String>]:
  [CreatedDateTime <DateTime?>]:
  [InstalledApps <IMicrosoftGraphTeamsAppInstallation[]>]:
    [Id <String>]:
    [TeamAppDefinitionDisplayName <String>]:
    [TeamAppDefinitionId <String>]:
    [TeamAppDefinitionTeamsAppId <String>]:
    [TeamAppDefinitionVersion <String>]:
    [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
      [Id <String>]:
      [DisplayName <String>]:
      [TeamsAppId <String>]:
      [Version <String>]:
    [TeamAppDisplayName <String>]:
    [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
    [TeamAppExternalId <String>]:
    [TeamAppId <String>]:
    [TeamAppName <String>]:
  [LastUpdatedDateTime <DateTime?>]:
  [Members <IMicrosoftGraphConversationMember[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [Roles <String[]>]:
  [Messages <IMicrosoftGraphChatMessage[]>]:
    [Id <String>]:
    [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
      [Content <String>]:
      [ContentType <String>]:
      [ContentUrl <String>]:
      [Id <String>]:
      [Name <String>]:
      [ThumbnailUrl <String>]:
    [BodyContent <String>]:
    [BodyContentType <String>]: bodyType
    [CreatedDateTime <DateTime?>]:
    [DeletedDateTime <DateTime?>]:
    [Etag <String>]:
    [From <IMicrosoftGraphIdentitySet>]: identitySet
      [Application <IMicrosoftGraphIdentity>]: identity
        [DisplayName <String>]:
        [Id <String>]:
      [Device <IMicrosoftGraphIdentity>]: identity
      [User <IMicrosoftGraphIdentity>]: identity
    [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
      [Id <String>]:
    [Importance <String>]: chatMessageImportance
    [LastModifiedDateTime <DateTime?>]:
    [Locale <String>]:
    [Mentions <IMicrosoftGraphChatMessageMention[]>]:
      [Id <Int32?>]:
      [MentionText <String>]:
      [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
    [MessageType <String>]: chatMessageType
    [PolicyTipComplianceUrl <String>]:
    [PolicyTipGeneralText <String>]:
    [PolicyTipMatchedConditionDescriptions <String[]>]:
    [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
    [PolicyViolationJustificationText <String>]:
    [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
    [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
    [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
      [CreatedDateTime <DateTime?>]:
      [ReactionType <String>]:
      [User <IMicrosoftGraphIdentitySet>]: identitySet
    [Replies <IMicrosoftGraphChatMessage[]>]:
    [ReplyToId <String>]:
    [Subject <String>]:
    [Summary <String>]:
    [WebUrl <String>]:
  [Topic <String>]:
 
INPUTOBJECT <ITeamsChatsIdentity>: Identity Parameter
  [ChatId <String>]: key: chat-id of chat
  [ChatMessageHostedContentId <String>]: key: chatMessageHostedContent-id of chatMessageHostedContent
  [ChatMessageId <String>]: key: chatMessage-id of chatMessage
  [ChatMessageId1 <String>]: key: chatMessage-id of chatMessage
  [ConversationMemberId <String>]: key: conversationMember-id of conversationMember
  [TeamsAppInstallationId <String>]: key: teamsAppInstallation-id of teamsAppInstallation
  [UserId <String>]: key: user-id of user
 
INSTALLEDAPPS <IMicrosoftGraphTeamsAppInstallation[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [TeamAppDefinitionDisplayName <String>]:
  [TeamAppDefinitionId <String>]:
  [TeamAppDefinitionTeamsAppId <String>]:
  [TeamAppDefinitionVersion <String>]:
  [TeamAppDefinitions <IMicrosoftGraphTeamsAppDefinition[]>]:
    [Id <String>]:
    [DisplayName <String>]:
    [TeamsAppId <String>]:
    [Version <String>]:
  [TeamAppDisplayName <String>]:
  [TeamAppDistributionMethod <String>]: teamsAppDistributionMethod
  [TeamAppExternalId <String>]:
  [TeamAppId <String>]:
  [TeamAppName <String>]:
 
MEMBERS <IMicrosoftGraphConversationMember[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [DisplayName <String>]:
  [Roles <String[]>]:
 
MESSAGES <IMicrosoftGraphChatMessage[]>: HELP MESSAGE MISSING
  [Id <String>]:
  [Attachments <IMicrosoftGraphChatMessageAttachment[]>]:
    [Content <String>]:
    [ContentType <String>]:
    [ContentUrl <String>]:
    [Id <String>]:
    [Name <String>]:
    [ThumbnailUrl <String>]:
  [BodyContent <String>]:
  [BodyContentType <String>]: bodyType
  [CreatedDateTime <DateTime?>]:
  [DeletedDateTime <DateTime?>]:
  [Etag <String>]:
  [From <IMicrosoftGraphIdentitySet>]: identitySet
    [Application <IMicrosoftGraphIdentity>]: identity
      [DisplayName <String>]:
      [Id <String>]:
    [Device <IMicrosoftGraphIdentity>]: identity
    [User <IMicrosoftGraphIdentity>]: identity
  [HostedContents <IMicrosoftGraphChatMessageHostedContent[]>]:
    [Id <String>]:
  [Importance <String>]: chatMessageImportance
  [LastModifiedDateTime <DateTime?>]:
  [Locale <String>]:
  [Mentions <IMicrosoftGraphChatMessageMention[]>]:
    [Id <Int32?>]:
    [MentionText <String>]:
    [Mentioned <IMicrosoftGraphIdentitySet>]: identitySet
  [MessageType <String>]: chatMessageType
  [PolicyTipComplianceUrl <String>]:
  [PolicyTipGeneralText <String>]:
  [PolicyTipMatchedConditionDescriptions <String[]>]:
  [PolicyViolationDlpAction <String>]: chatMessagePolicyViolationDlpActionTypes
  [PolicyViolationJustificationText <String>]:
  [PolicyViolationUserAction <String>]: chatMessagePolicyViolationUserActionTypes
  [PolicyViolationVerdictDetails <String>]: chatMessagePolicyViolationVerdictDetailsTypes
  [Reactions <IMicrosoftGraphChatMessageReaction[]>]:
    [CreatedDateTime <DateTime?>]:
    [ReactionType <String>]:
    [User <IMicrosoftGraphIdentitySet>]: identitySet
  [Replies <IMicrosoftGraphChatMessage[]>]:
  [ReplyToId <String>]:
  [Subject <String>]:
  [Summary <String>]:
  [WebUrl <String>]:
.Link
https://docs.microsoft.com/en-us/powershell/module/microsoft.graph.teams.chats/update-mguserchat
#>

function Update-MgUserChat {
[OutputType([System.Boolean])]
[CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: chat-id of chat
    ${ChatId},

    [Parameter(ParameterSetName='Update', Mandatory)]
    [Parameter(ParameterSetName='UpdateExpanded', Mandatory)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [System.String]
    # key: user-id of user
    ${UserId},

    [Parameter(ParameterSetName='UpdateViaIdentity', Mandatory, ValueFromPipeline)]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline)]
    [Microsoft.Graph.PowerShell.Category('Path')]
    [Microsoft.Graph.PowerShell.Models.ITeamsChatsIdentity]
    # 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.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChat]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for BODYPARAMETER properties and create a hash table.
    ${BodyParameter},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${CreatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Id},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphTeamsAppInstallation[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for INSTALLEDAPPS properties and create a hash table.
    ${InstalledApps},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.DateTime]
    # HELP MESSAGE MISSING
    ${LastUpdatedDateTime},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphConversationMember[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MEMBERS properties and create a hash table.
    ${Members},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [Microsoft.Graph.PowerShell.Models.IMicrosoftGraphChatMessage[]]
    # HELP MESSAGE MISSING
    # To construct, see NOTES section for MESSAGES properties and create a hash table.
    ${Messages},

    [Parameter(ParameterSetName='UpdateExpanded')]
    [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
    [Microsoft.Graph.PowerShell.Category('Body')]
    [System.String]
    # HELP MESSAGE MISSING
    ${Topic},

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

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

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

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

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

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

    [Parameter(DontShow)]
    [Microsoft.Graph.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.Teams.Chats.private\Update-MgUserChat_Update';
            UpdateExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgUserChat_UpdateExpanded';
            UpdateViaIdentity = 'Microsoft.Graph.Teams.Chats.private\Update-MgUserChat_UpdateViaIdentity';
            UpdateViaIdentityExpanded = 'Microsoft.Graph.Teams.Chats.private\Update-MgUserChat_UpdateViaIdentityExpanded';
        }
        $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
# MIIkYwYJKoZIhvcNAQcCoIIkVDCCJFACAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAQkOZeR0NTab8m
# 7ZbHE4bISVdjggBEUdhls2KakqIkIaCCDXYwggX0MIID3KADAgECAhMzAAABUMiP
# lnfeTPFHAAAAAAFQMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMRMwEQYD
# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNpZ25p
# bmcgUENBIDIwMTEwHhcNMTkwNTAyMjEzNzQ1WhcNMjAwNTAyMjEzNzQ1WjB0MQsw
# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u
# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMR4wHAYDVQQDExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
# AQCh2V193EGtu49awDgcJ1E8WB5mAim/gAFVpWUVOlk/haZWAiffh/k3W/GPhgYl
# t2WH/FQS4BcGpeWRb2Wi4seOUWb5lbgIuUKBORF0iiEiPNMLueuD3PAChl/h3WE2
# N1T8zsQg6UMrWtNRdby48xCI6zdD+26yNei3tOccrOWWullOehpBF5Z4vp8Xvq1n
# ysaSkGgAZNaKrb3F6et3V5Tq+gJ0DaLm/TGxATcTJ1mrHJOx+cHorSIeGKKzwa19
# uBuUbGALZx8Isus+3KiK7h2YcZ+AHU+qeUCLbKhU3l97Kg9E6/dvAMa+42/BXSmZ
# 9+F3WfagixcbNWGaZA1Pn8mPAgMBAAGjggFzMIIBbzAfBgNVHSUEGDAWBgorBgEE
# AYI3TAgBBggrBgEFBQcDAzAdBgNVHQ4EFgQUGxNB+9SPshuMPQ+xlMnFMiKVkDgw
# RQYDVR0RBD4wPKQ6MDgxHjAcBgNVBAsTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEW
# MBQGA1UEBRMNMjMwMDEyKzQ1NDEzNDAfBgNVHSMEGDAWgBRIbmTlUAXTgqoXNzci
# tW2oynUClTBUBgNVHR8ETTBLMEmgR6BFhkNodHRwOi8vd3d3Lm1pY3Jvc29mdC5j
# b20vcGtpb3BzL2NybC9NaWNDb2RTaWdQQ0EyMDExXzIwMTEtMDctMDguY3JsMGEG
# CCsGAQUFBwEBBFUwUzBRBggrBgEFBQcwAoZFaHR0cDovL3d3dy5taWNyb3NvZnQu
# Y29tL3BraW9wcy9jZXJ0cy9NaWNDb2RTaWdQQ0EyMDExXzIwMTEtMDctMDguY3J0
# MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQELBQADggIBADSrnbMt49ZGUc9KnW7S
# VkzITe55ApMwgxE8jl06lBkMZLd9QatyUt6g2/0RG0boaMHpWzypk6pGDLRD5y/P
# 6sj6fQYkrGihAw3W4ObLE3rrY8e5GPTrp/AlMFzsywHhD0+ETwgU8PuMvwQfB6ak
# 2ejWP0M1a1tkyAHfEMEGKd7RVPRmlLX+kPkJoFPz/uSlKxXi/acGH1qISQc0pkRt
# UE/ufrfpR+LlEOPg5aNZdAwIJAuDWInMeQM7kIoUTShSAJTzT58mrwVXgrfBbZnA
# NpsC/v8/amGL43MhTN0V2sWBHZNL7N0X9Z2qldu+jj8HdaNRGQyuru1W+IjNV914
# nk3qp9T/bZmy0elNYkCdNFjapARu6TZ0wwlEkvFW0HuzwtQ2gGDddGuhRFQRrdbU
# 68ifXf3dtvUDb0Nr+tnw9k0mV4s9jkTraDBaSJV0v1ixeR6WEBgGcc+uL/rHnci8
# 9cMcZqqcY8gGw0T1GpdDbWYLsYsqfPu5ZP4ga0kZa/ne7Bi3zu8XZ72kM893t5Ib
# Z96/2xp2Q+I6vIVfZJ7fh7vQ3OcLAZDvN+y6jNq3jtnQSYHuhX+Du074DXhQeVTB
# qTzBiuZPbnJhmI525u1GVoGemw0fqwk4cpeh3d1cDMN5eWlmqEdRwgaWozpj3a4I
# BzxVWkDJSJ4ZEq2odtK6eoYcMIIHejCCBWKgAwIBAgIKYQ6Q0gAAAAAAAzANBgkq
# 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
# /Xmfwb1tbWrJUnMTDXpQzTGCFkMwghY/AgEBMIGVMH4xCzAJBgNVBAYTAlVTMRMw
# EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVN
# aWNyb3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNp
# Z25pbmcgUENBIDIwMTECEzMAAAFQyI+Wd95M8UcAAAAAAVAwDQYJYIZIAWUDBAIB
# BQCgga4wGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEO
# MAwGCisGAQQBgjcCARUwLwYJKoZIhvcNAQkEMSIEIPqoMK/UOqV3Wg/VGhDk+tma
# xuawpAI2Jk5S+QlmHsGuMEIGCisGAQQBgjcCAQwxNDAyoBSAEgBNAGkAYwByAG8A
# cwBvAGYAdKEagBhodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20wDQYJKoZIhvcNAQEB
# BQAEggEAcmbWuofVbLWQVWsYs5l7+3oEysNE9TAAwICxBXsX4+xOoWXeVBgmENVw
# gOH8HivU4XIer+dVsLi5g2fZ8EbTZ1dVMk6gYgZoPPWsdKdJGuSgMstxq4G/kOA7
# 43N+/VVW3zeJd2v+ES9Vymonzc3ObN/uUZQerqhITBq1rJ46oo2mhF9R3Efaz8V3
# E2n2UXwmQc6fuMZMDfROmYSnpmLrl0MQTw7IdXda31KI1fpWWCnX4hOMs/2KURMR
# qamJuJKDH8Cmhs8gPiDq4PwnLjY5F7Lu5hcewC2+V8KRNdVsW0JIscVMmwnUgEY+
# FPeABHmmVrOWZwcGed2jxHYN/bUVoKGCE80wghPJBgorBgEEAYI3AwMBMYITuTCC
# E7UGCSqGSIb3DQEHAqCCE6YwghOiAgEDMQ8wDQYJYIZIAWUDBAIBBQAwggFXBgsq
# hkiG9w0BCRABBKCCAUYEggFCMIIBPgIBAQYKKwYBBAGEWQoDATAxMA0GCWCGSAFl
# AwQCAQUABCBe/R+TAeNPj0583f3NX+3rNB1SdDyxKZ5l+JqMphicJQIGXfpEoZ31
# GBIyMDIwMDExMDIzMzMyNC4wMVowBwIBAYACAfSggdSkgdEwgc4xCzAJBgNVBAYT
# AlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYD
# VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKTAnBgNVBAsTIE1pY3Jvc29mdCBP
# cGVyYXRpb25zIFB1ZXJ0byBSaWNvMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjo5
# OEZELUM2MUUtRTY0MTElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2Vy
# dmljZaCCDx4wggT1MIID3aADAgECAhMzAAAA++CUDxRBhNvFAAAAAAD7MA0GCSqG
# SIb3DQEBCwUAMHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAw
# DgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24x
# JjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwMB4XDTE5MDkw
# NjIwNDEwNloXDTIwMTIwNDIwNDEwNlowgc4xCzAJBgNVBAYTAlVTMRMwEQYDVQQI
# EwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3Nv
# ZnQgQ29ycG9yYXRpb24xKTAnBgNVBAsTIE1pY3Jvc29mdCBPcGVyYXRpb25zIFB1
# ZXJ0byBSaWNvMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjo5OEZELUM2MUUtRTY0
# MTElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2VydmljZTCCASIwDQYJ
# KoZIhvcNAQEBBQADggEPADCCAQoCggEBAKAhY+5J8HXlmAVU+70WH7Tm4GcoAWQz
# zKyzLYgQjL+mViTGe5p0zbwF49ZJcdXgwQkDM/uA2j8xj0ory2Uh5CefDW/AUHz9
# R2qkIe5AbjbjLADgCKg6U3SAlWfz8NoKNE8xu2Uy/8zpLDcVc0jw4B36Kq6Yjm8x
# XcsyxjObbaVzIicl23bsuJgkkCD1sathSBFrwDVEYQHk8R1YwgFE8NB/ngp+4P02
# rAmuNpcc1wBOyvTyEbS8l1mirMFhT9VbDftN6s1zd0Mlp+Hrp5U0NGPwS+mEHilv
# jabY67LBK3BZLYgmUcitV46XontBCBv9K+5oPtpRrdbPVu2ge2THNecCAwEAAaOC
# ARswggEXMB0GA1UdDgQWBBSQPADvO9LEi5oW6lyRMkqJD6tNjDAfBgNVHSMEGDAW
# gBTVYzpcijGQ80N7fEYbxTNoWoVtVTBWBgNVHR8ETzBNMEugSaBHhkVodHRwOi8v
# Y3JsLm1pY3Jvc29mdC5jb20vcGtpL2NybC9wcm9kdWN0cy9NaWNUaW1TdGFQQ0Ff
# MjAxMC0wNy0wMS5jcmwwWgYIKwYBBQUHAQEETjBMMEoGCCsGAQUFBzAChj5odHRw
# Oi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY1RpbVN0YVBDQV8yMDEw
# LTA3LTAxLmNydDAMBgNVHRMBAf8EAjAAMBMGA1UdJQQMMAoGCCsGAQUFBwMIMA0G
# CSqGSIb3DQEBCwUAA4IBAQBD2sGnRfoXWNGCeqAhw+SMyp8zSS7zFkOoGnH8IQtX
# LY2wMezdaD3O8NVB2+1J4jfygw7XiBkFQt40i+85x8ig+oUnZl1F+f3l6TKbCLIe
# AlpvfRT2USLHO+4PIUX9wYViqOF7FXlP2DJC/1ga/bGhF5mcKxlcPo4BWk8cuO3B
# CjXabNCs5oHbNHVfxUI9xVKYUBN3GNDl+72j50bE11Jg8ZgVwI2Syw1j7UiC7ZHY
# zZ7GCNyuH3z9qGIXWgr6Nb/il5pPfsOWRI1bQbL0/oc/Q4TP9tqhvCi57T+59NYz
# +33KAGx0SghLBcg6grUKyI6cgNf+fOUb/FQR+8Ph2SAyMIIGcTCCBFmgAwIBAgIK
# YQmBKgAAAAAAAjANBgkqhkiG9w0BAQsFADCBiDELMAkGA1UEBhMCVVMxEzARBgNV
# BAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jv
# c29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFJvb3QgQ2VydGlm
# aWNhdGUgQXV0aG9yaXR5IDIwMTAwHhcNMTAwNzAxMjEzNjU1WhcNMjUwNzAxMjE0
# NjU1WjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UE
# BxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYD
# VQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDCCASIwDQYJKoZIhvcN
# AQEBBQADggEPADCCAQoCggEBAKkdDbx3EYo6IOz8E5f1+n9plGt0VBDVpQoAgoX7
# 7XxoSyxfxcPlYcJ2tz5mK1vwFVMnBDEfQRsalR3OCROOfGEwWbEwRA/xYIiEVEMM
# 1024OAizQt2TrNZzMFcmgqNFDdDq9UeBzb8kYDJYYEbyWEeGMoQedGFnkV+BVLHP
# k0ySwcSmXdFhE24oxhr5hoC732H8RsEnHSRnEnIaIYqvS2SJUGKxXf13Hz3wV3Ws
# vYpCTUBR0Q+cBj5nf/VmwAOWRH7v0Ev9buWayrGo8noqCjHw2k4GkbaICDXoeByw
# 6ZnNPOcvRLqn9NxkvaQBwSAJk3jN/LzAyURdXhacAQVPIk0CAwEAAaOCAeYwggHi
# MBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBTVYzpcijGQ80N7fEYbxTNoWoVt
# VTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0T
# AQH/BAUwAwEB/zAfBgNVHSMEGDAWgBTV9lbLj+iiXGJo0T2UkFvXzpoYxDBWBgNV
# HR8ETzBNMEugSaBHhkVodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpL2NybC9w
# cm9kdWN0cy9NaWNSb29DZXJBdXRfMjAxMC0wNi0yMy5jcmwwWgYIKwYBBQUHAQEE
# TjBMMEoGCCsGAQUFBzAChj5odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2Nl
# cnRzL01pY1Jvb0NlckF1dF8yMDEwLTA2LTIzLmNydDCBoAYDVR0gAQH/BIGVMIGS
# MIGPBgkrBgEEAYI3LgMwgYEwPQYIKwYBBQUHAgEWMWh0dHA6Ly93d3cubWljcm9z
# b2Z0LmNvbS9QS0kvZG9jcy9DUFMvZGVmYXVsdC5odG0wQAYIKwYBBQUHAgIwNB4y
# IB0ATABlAGcAYQBsAF8AUABvAGwAaQBjAHkAXwBTAHQAYQB0AGUAbQBlAG4AdAAu
# IB0wDQYJKoZIhvcNAQELBQADggIBAAfmiFEN4sbgmD+BcQM9naOhIW+z66bM9TG+
# zwXiqf76V20ZMLPCxWbJat/15/B4vceoniXj+bzta1RXCCtRgkQS+7lTjMz0YBKK
# dsxAQEGb3FwX/1z5Xhc1mCRWS3TvQhDIr79/xn/yN31aPxzymXlKkVIArzgPF/Uv
# eYFl2am1a+THzvbKegBvSzBEJCI8z+0DpZaPWSm8tv0E4XCfMkon/VWvL/625Y4z
# u2JfmttXQOnxzplmkIz/amJ/3cVKC5Em4jnsGUpxY517IW3DnKOiPPp/fZZqkHim
# bdLhnPkd/DjYlPTGpQqWhqS9nhquBEKDuLWAmyI4ILUl5WTs9/S/fmNZJQ96LjlX
# dqJxqgaKD4kWumGnEcua2A5HmoDF0M2n0O99g/DhO3EJ3110mCIIYdqwUB5vvfHh
# AN/nMQekkzr3ZUd46PioSKv33nJ+YWtvd6mBy6cJrDm77MbL2IK0cs0d9LiFAR6A
# +xuJKlQ5slvayA1VmXqHczsI5pgt6o3gMy4SKfXAL1QnIffIrE7aKLixqduWsqdC
# osnPGUFN4Ib5KpqjEWYw07t0MkvfY3v1mYovG8chr1m1rtxEPJdQcdeh0sVV42ne
# V8HR3jDA/czmTfsNv11P6Z0eGTgvvM9YBS7vDaBQNdrvCScc1bN+NR4Iuto229Nf
# j950iEkSoYIDrDCCApQCAQEwgf6hgdSkgdEwgc4xCzAJBgNVBAYTAlVTMRMwEQYD
# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xKTAnBgNVBAsTIE1pY3Jvc29mdCBPcGVyYXRpb25z
# IFB1ZXJ0byBSaWNvMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjo5OEZELUM2MUUt
# RTY0MTElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2VydmljZaIlCgEB
# MAkGBSsOAwIaBQADFQAV9O+PCUZ4KHTCMuuXBK/6zr9CMaCB3jCB26SB2DCB1TEL
# MAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1v
# bmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEpMCcGA1UECxMgTWlj
# cm9zb2Z0IE9wZXJhdGlvbnMgUHVlcnRvIFJpY28xJzAlBgNVBAsTHm5DaXBoZXIg
# TlRTIEVTTjo0REU5LTBDNUUtM0UwOTErMCkGA1UEAxMiTWljcm9zb2Z0IFRpbWUg
# U291cmNlIE1hc3RlciBDbG9jazANBgkqhkiG9w0BAQUFAAIFAOHCgoMwIhgPMjAy
# MDAxMTAxMjU2MzVaGA8yMDIwMDExMTEyNTYzNVowczA5BgorBgEEAYRZCgQBMSsw
# KTAKAgUA4cKCgwIBADAGAgEAAgFEMAcCAQACAhdDMAoCBQDhw9QDAgEAMDYGCisG
# AQQBhFkKBAIxKDAmMAwGCisGAQQBhFkKAwGgCjAIAgEAAgMW42ChCjAIAgEAAgMH
# oSAwDQYJKoZIhvcNAQEFBQADggEBACz3fI66q/HWQCLqrtu0US9tcOITaOEyWUsp
# NpiUE2yo3sw6XlMGfCIN35qhdXUk484eOM+oQuWxi/VAfj/MaMynx6ivnTE3jX+u
# ocLBV5CYeY6px44ZYqWloWkK6BjyDWFZlY8tUZYz5BPwaJpySffprTSjvikXKAMf
# YQL9t0bd3XaYOzWj+jHrVtX2HpPFR9OmCrfmKukI5ehSb/lwJdZv9c6RmpqqPG5h
# wU3vtbHT6oTLQ2sS1+HG2EsusFYw9FKxr2OhGqQ7aLH3nq6w6k0ZldOQJsk38ny1
# jtsUnJeP7VLTxfjyOR6Qlc5rWb1O/erB9rY8n/B1+SrOHOQWDVwxggMNMIIDCQIB
# ATCBkzB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UE
# BxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYD
# VQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMAITMwAAAPvglA8UQYTb
# xQAAAAAA+zANBglghkgBZQMEAgEFAKCCAUowGgYJKoZIhvcNAQkDMQ0GCyqGSIb3
# DQEJEAEEMC8GCSqGSIb3DQEJBDEiBCASLZpKpfZ1Z5BeEtSdbw0Yi/QAw76cpkTO
# 60oepMf9QTCB+gYLKoZIhvcNAQkQAi8xgeowgecwgeQwgb0EIG7x9CMM4nrIfJH/
# D7+6oJJwWusF4kutcM70Gkwruv7dMIGYMIGApH4wfDELMAkGA1UEBhMCVVMxEzAR
# BgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1p
# Y3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3Rh
# bXAgUENBIDIwMTACEzMAAAD74JQPFEGE28UAAAAAAPswIgQgqogLDUqgXnsBI0NB
# 2ox96Td3GMVK8N81K0qSv69UxQ4wDQYJKoZIhvcNAQELBQAEggEADrpdg1njt1Gl
# zb/AOr5gpUJq4OYTzYwfcq70i2CeU539wWW6x0dO9q8+//W7hJQEnKXUQHqU081H
# BRWPIM1JuML5Q14UR8BkdKBDGqE92nC5fz8Q4UBM3uqkv/2F4uCAFLN3DW8IrMyK
# FCgLGEXwb/FmG7uJkv9vY5LMr1rI+NhPtzXArN7BUPmr01QN/dUR6Jug1GWWlWm7
# ch6PT1p+iwth44NxNOx1I4yjW/WTX3ZbVZuoFeg+LxrK6EwFip1hryO2pFHlA9oq
# IXeuZms1ukQe+c92srY6rL9KUWNRhUFzSqms+XLKKsTYu/TbvgXzYxebmvQrfP6w
# cZSZktg2Kw==
# SIG # End signature block