pspulumiyaml.azurenative.offazure.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionOffazureGetPrivateEndpointConnection
{
    param (
        [parameter(mandatory=$False,HelpMessage='Site name.)')]
        [string]
        $siteName,
        [parameter(mandatory=$False,HelpMessage='Private link resource name.)')]
        [string]
        $peConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["peConnectionName"] = $peConnectionName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["siteName"] = $siteName

        $functionObject = Invoke-PulumiFunction -Name azure-native:offazure:getPrivateEndpointConnection -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionOffazureGetHyperVSite
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Site name.)')]
        [string]
        $siteName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["siteName"] = $siteName

        $functionObject = Invoke-PulumiFunction -Name azure-native:offazure:getHyperVSite -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionOffazureGetSite
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Site name.)')]
        [string]
        $siteName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["siteName"] = $siteName

        $functionObject = Invoke-PulumiFunction -Name azure-native:offazure:getSite -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
class SiteSpnProperties
{
    [string] $objectId
    [string] $aadAuthority
    [string] $tenantId
    [string] $applicationId
    [string] $rawCertData
    [string] $audience
}
function New-AzureNativeTypeOffazureSiteSpnProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='Object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.)')]
        [string]
        $objectId,
        [parameter(mandatory=$False,HelpMessage='AAD Authority URL which was used to request the token for the service principal.)')]
        [string]
        $aadAuthority,
        [parameter(mandatory=$False,HelpMessage='Tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.)')]
        [string]
        $tenantId,
        [parameter(mandatory=$False,HelpMessage='Application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.)')]
        [string]
        $applicationId,
        [parameter(mandatory=$False,HelpMessage='Raw certificate data for building certificate expiry flows.)')]
        [string]
        $rawCertData,
        [parameter(mandatory=$False,HelpMessage='Intended audience for the service principal.)')]
        [string]
        $audience
    )

    process
    {
        return $([SiteSpnProperties]$PSBoundParameters)
    }
}
class SiteAgentProperties
{
    [string] $keyVaultId
    [string] $keyVaultUri
}
function New-AzureNativeTypeOffazureSiteAgentProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='Key vault ARM Id.)')]
        [string]
        $keyVaultId,
        [parameter(mandatory=$False,HelpMessage='Key vault URI.)')]
        [string]
        $keyVaultUri
    )

    process
    {
        return $([SiteAgentProperties]$PSBoundParameters)
    }
}
class SiteProperties
{
    [SiteSpnProperties] $servicePrincipalIdentityDetails
    [string] $discoverySolutionId
    [SiteAgentProperties] $agentDetails
    [string] $applianceName
}
function New-AzureNativeTypeOffazureSiteProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='Service principal identity details used by agent for communication to the service.)')]
        [SiteSpnProperties]
        $servicePrincipalIdentityDetails,
        [parameter(mandatory=$False,HelpMessage='ARM ID of migration hub solution for SDS.)')]
        [string]
        $discoverySolutionId,
        [parameter(mandatory=$False,HelpMessage='On-premises agent details.)')]
        [SiteAgentProperties]
        $agentDetails,
        [parameter(mandatory=$False,HelpMessage='Appliance Name.)')]
        [string]
        $applianceName
    )

    process
    {
        return $([SiteProperties]$PSBoundParameters)
    }
}
function New-AzureNativeOffazureSite
{
    [Alias('azure_native_offazure_site')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Site name.)')]
        [string]
        $siteName,
        [parameter(mandatory=$False,HelpMessage='Nested properties of VMWare site.)')]
        [SiteProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='Name of the VMware site.)')]
        [string]
        $name,
        [parameter(mandatory=$False,HelpMessage='eTag for concurrency control.)')]
        [string]
        $eTag,
        [parameter(mandatory=$False,HelpMessage=')')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='Azure location in which Sites is created.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:offazure:Site")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'siteName')
        {
            $resource.properties["siteName"] = $siteName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'name')
        {
            $resource.properties["name"] = $name
        }

        if($PSBoundParameters.Keys -icontains 'eTag')
        {
            $resource.properties["eTag"] = $eTag
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeOffazurePrivateEndpointConnection
{
    [Alias('azure_native_offazure_privateendpointconnection')]
    param (
        [parameter(mandatory=$False,HelpMessage='Site name.)')]
        [string]
        $siteName,
        [parameter(mandatory=$False,HelpMessage='Private link resource name.)')]
        [string]
        $peConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:offazure:PrivateEndpointConnection")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["siteName"] = $siteName

        if($PSBoundParameters.Keys -icontains 'peConnectionName')
        {
            $resource.properties["peConnectionName"] = $peConnectionName
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeOffazureHyperVSite
{
    [Alias('azure_native_offazure_hypervsite')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group. The name is case insensitive.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Site name.)')]
        [string]
        $siteName,
        [parameter(mandatory=$False,HelpMessage='Nested properties of Hyper-V site.)')]
        [SiteProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='Name of the Hyper-V site.)')]
        [string]
        $name,
        [parameter(mandatory=$False,HelpMessage='eTag for concurrency control.)')]
        [string]
        $eTag,
        [parameter(mandatory=$False,HelpMessage=')')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='Azure location in which Sites is created.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:offazure:HyperVSite")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'siteName')
        {
            $resource.properties["siteName"] = $siteName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'name')
        {
            $resource.properties["name"] = $name
        }

        if($PSBoundParameters.Keys -icontains 'eTag')
        {
            $resource.properties["eTag"] = $eTag
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}