pspulumiyaml.azurenative.datashare.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionDatashareGetKustoDatabaseDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getKustoDatabaseDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen2FolderDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen2FolderDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetBlobDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getBlobDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetShareSubscription
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getShareSubscription -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetInvitation
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the invitation.)')]
        [string]
        $invitationName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["invitationName"] = $invitationName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getInvitation -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareListShareSubscriptionSynchronizationDetails
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Synchronization id)')]
        [string]
        $synchronizationId,
        [parameter(mandatory=$False,HelpMessage='Filters the results using OData syntax.)')]
        [string]
        $filter,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Continuation token)')]
        [string]
        $skipToken,
        [parameter(mandatory=$False,HelpMessage='Sorts the results using OData syntax.)')]
        [string]
        $orderby
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName
        $arguments["synchronizationId"] = $synchronizationId

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

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

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:listShareSubscriptionSynchronizationDetails -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen2FolderDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen2FolderDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetTrigger
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the trigger.)')]
        [string]
        $triggerName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName
        $arguments["triggerName"] = $triggerName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getTrigger -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetBlobFolderDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getBlobFolderDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen1FileDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen1FileDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetSqlDBTableDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getSqlDBTableDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetSynapseWorkspaceSqlPoolTableDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getSynapseWorkspaceSqlPoolTableDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetBlobDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getBlobDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareListShareSynchronizations
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Filters the results using OData syntax.)')]
        [string]
        $filter,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='Continuation token)')]
        [string]
        $skipToken,
        [parameter(mandatory=$False,HelpMessage='Sorts the results using OData syntax.)')]
        [string]
        $orderby
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

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

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

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:listShareSynchronizations -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetShare
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share to retrieve.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getShare -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetSqlDWTableDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getSqlDWTableDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen2FileSystemDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen2FileSystemDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetSqlDWTableDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getSqlDWTableDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetAccount
{
    param (
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getAccount -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetSynapseWorkspaceSqlPoolTableDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getSynapseWorkspaceSqlPoolTableDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen2FileDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen2FileDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen1FolderDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen1FolderDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareListShareSubscriptionSynchronizations
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Filters the results using OData syntax.)')]
        [string]
        $filter,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Continuation token)')]
        [string]
        $skipToken,
        [parameter(mandatory=$False,HelpMessage='Sorts the results using OData syntax.)')]
        [string]
        $orderby
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

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

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

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:listShareSubscriptionSynchronizations -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetKustoClusterDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getKustoClusterDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetScheduledTrigger
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the trigger.)')]
        [string]
        $triggerName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName
        $arguments["triggerName"] = $triggerName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getScheduledTrigger -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareListShareSubscriptionSourceShareSynchronizationSettings
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Continuation token)')]
        [string]
        $skipToken,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:listShareSubscriptionSourceShareSynchronizationSettings -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetBlobContainerDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getBlobContainerDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetScheduledSynchronizationSetting
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The name of the synchronizationSetting.)')]
        [string]
        $synchronizationSettingName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName
        $arguments["synchronizationSettingName"] = $synchronizationSettingName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getScheduledSynchronizationSetting -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetBlobContainerDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getBlobContainerDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareListShareSynchronizationDetails
{
    param (
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='End time of synchronization)')]
        [string]
        $endTime,
        [parameter(mandatory=$False,HelpMessage='Continuation token)')]
        [string]
        $skipToken,
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='Tenant name of the consumer who created the synchronization)')]
        [string]
        $consumerTenantName,
        [parameter(mandatory=$False,HelpMessage='message of synchronization)')]
        [string]
        $message,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='synchronization duration)')]
        [int]
        $durationMs,
        [parameter(mandatory=$False,HelpMessage='start time of synchronization)')]
        [string]
        $startTime,
        [parameter(mandatory=$False,HelpMessage='Name of the user who created the synchronization)')]
        [string]
        $consumerName,
        [parameter(mandatory=$False,HelpMessage='Sorts the results using OData syntax.)')]
        [string]
        $orderby,
        [parameter(mandatory=$False,HelpMessage='Raw Status)')]
        [string]
        $status,
        [parameter(mandatory=$False,HelpMessage='Filters the results using OData syntax.)')]
        [string]
        $filter,
        [parameter(mandatory=$False,HelpMessage='Email of the user who created the synchronization)')]
        [string]
        $consumerEmail,
        [parameter(mandatory=$False,HelpMessage='Synchronization id)')]
        [string]
        $synchronizationId
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

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

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

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

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

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

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

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

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

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

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

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

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:listShareSynchronizationDetails -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetBlobFolderDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getBlobFolderDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetSynchronizationSetting
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The name of the synchronizationSetting.)')]
        [string]
        $synchronizationSettingName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName
        $arguments["synchronizationSettingName"] = $synchronizationSettingName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getSynchronizationSetting -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen2FileSystemDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen2FileSystemDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetKustoClusterDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getKustoClusterDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetADLSGen2FileDataSetMapping
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the dataSetMapping.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetMappingName"] = $dataSetMappingName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareSubscriptionName"] = $shareSubscriptionName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getADLSGen2FileDataSetMapping -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetKustoDatabaseDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getKustoDatabaseDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionDatashareGetSqlDBTableDataSet
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName
    )

    process
    {
        $arguments = @{}
        $arguments["accountName"] = $accountName
        $arguments["dataSetName"] = $dataSetName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["shareName"] = $shareName

        $functionObject = Invoke-PulumiFunction -Name azure-native:datashare:getSqlDBTableDataSet -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function New-AzureNativeDatashareSqlDWTableDataSet
{
    [Alias('azure_native_datashare_sqldwtabledataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of SQL server)')]
        [string]
        $sqlServerResourceId,
        [parameter(mandatory=$False,HelpMessage='Schema of the table. Default value is dbo.)')]
        [string]
        $schemaName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='DataWarehouse name of the source data set)')]
        [string]
        $dataWarehouseName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='SQL DW table name.)')]
        [string]
        $tableName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''SqlDWTable''.)'
)]
        [string]
        $kind,
        [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:datashare:SqlDWTableDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["dataWarehouseName"] = $dataWarehouseName
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["schemaName"] = $schemaName
        $resource.properties["shareName"] = $shareName
        $resource.properties["sqlServerResourceId"] = $sqlServerResourceId
        $resource.properties["tableName"] = $tableName

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareShare
{
    [Alias('azure_native_datashare_share')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Share kind.)')]
        [string]
        [ValidateSet('CopyBased', 'InPlace')]
        $shareKind,
        [parameter(mandatory=$False,HelpMessage='Share terms.)')]
        [string]
        $terms,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='Share description.)')]
        [string]
        $description,
        [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:datashare:Share")

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

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareBlobDataSetMapping
{
    [Alias('azure_native_datashare_blobdatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='File path within the source data set)')]
        [string]
        $filePath,
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Container that has the file path.)')]
        [string]
        $containerName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set.)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='File output type)')]
        [string]
        [ValidateSet('Csv', 'Parquet')]
        $outputType,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''Blob''.)'
)]
        [string]
        $kind,
        [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:datashare:BlobDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["containerName"] = $containerName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["filePath"] = $filePath
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareShareSubscription
{
    [Alias('azure_native_datashare_sharesubscription')]
    param (
        [parameter(mandatory=$False,HelpMessage='The expiration date of the share subscription.)')]
        [string]
        $expirationDate,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The invitation id.)')]
        [string]
        $invitationId,
        [parameter(mandatory=$False,HelpMessage='The name of the shareSubscription.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Source share location.)')]
        [string]
        $sourceShareLocation,
        [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:datashare:ShareSubscription")

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareSynapseWorkspaceSqlPoolTableDataSet
{
    [Alias('azure_native_datashare_synapseworkspacesqlpooltabledataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of the Synapse Workspace SQL Pool Table)')]
        [string]
        $synapseWorkspaceSqlPoolTableResourceId,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''SynapseWorkspaceSqlPoolTable''.)'
)]
        [string]
        $kind,
        [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:datashare:SynapseWorkspaceSqlPoolTableDataSet")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareInvitation
{
    [Alias('azure_native_datashare_invitation')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the invitation.)')]
        [string]
        $invitationName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to send the invitation for.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The target user or application Id that invitation is being sent to.
Must be specified along TargetActiveDirectoryId. This enables sending
invitations to specific users or applications in an AD tenant.)'
)]
        [string]
        $targetObjectId,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The target Azure AD Id. Can''t be combined with email.)')]
        [string]
        $targetActiveDirectoryId,
        [parameter(mandatory=$False,HelpMessage='The expiration date for the invitation and share subscription.)')]
        [string]
        $expirationDate,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The email the invitation is directed to.)')]
        [string]
        $targetEmail,
        [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:datashare:Invitation")

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

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

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen2FileDataSet
{
    [Alias('azure_native_datashare_adlsgen2filedataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='File path within the file system.)')]
        [string]
        $filePath,
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='File system to which the file belongs.)')]
        [string]
        $fileSystem,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''AdlsGen2File''.)'
)]
        [string]
        $kind,
        [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:datashare:ADLSGen2FileDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["filePath"] = $filePath
        $resource.properties["fileSystem"] = $fileSystem
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareName"] = $shareName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareScheduledSynchronizationSetting
{
    [Alias('azure_native_datashare_scheduledsynchronizationsetting')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Synchronization time)')]
        [string]
        $synchronizationTime,
        [parameter(mandatory=$False,HelpMessage='The name of the synchronizationSetting.)')]
        [string]
        $synchronizationSettingName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the synchronization setting to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Recurrence Interval)')]
        [string]
        [ValidateSet('Hour', 'Day')]
        $recurrenceInterval,
        [parameter(mandatory=$False,HelpMessage='Kind of synchronization setting.
Expected value is ''ScheduleBased''.)'
)]
        [string]
        $kind,
        [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:datashare:ScheduledSynchronizationSetting")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareKustoDatabaseDataSetMapping
{
    [Alias('azure_native_datashare_kustodatabasedatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of the sink kusto cluster.)')]
        [string]
        $kustoClusterResourceId,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''KustoDatabase''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [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:datashare:KustoDatabaseDataSetMapping")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareKustoClusterDataSetMapping
{
    [Alias('azure_native_datashare_kustoclusterdatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of the sink kusto cluster.)')]
        [string]
        $kustoClusterResourceId,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''KustoCluster''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [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:datashare:KustoClusterDataSetMapping")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareScheduledTrigger
{
    [Alias('azure_native_datashare_scheduledtrigger')]
    param (
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Kind of synchronization on trigger.
Expected value is ''ScheduleBased''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Synchronization mode)')]
        [string]
        [ValidateSet('Incremental', 'FullSync')]
        $synchronizationMode,
        [parameter(mandatory=$False,HelpMessage='Recurrence Interval)')]
        [string]
        [ValidateSet('Hour', 'Day')]
        $recurrenceInterval,
        [parameter(mandatory=$False,HelpMessage='Synchronization time)')]
        [string]
        $synchronizationTime,
        [parameter(mandatory=$False,HelpMessage='The name of the trigger.)')]
        [string]
        $triggerName,
        [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:datashare:ScheduledTrigger")

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareKustoClusterDataSet
{
    [Alias('azure_native_datashare_kustoclusterdataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of the kusto cluster.)')]
        [string]
        $kustoClusterResourceId,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''KustoCluster''.)'
)]
        [string]
        $kind,
        [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:datashare:KustoClusterDataSet")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareTrigger
{
    [Alias('azure_native_datashare_trigger')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the trigger.)')]
        [string]
        $triggerName,
        [parameter(mandatory=$False,HelpMessage='Kind of synchronization on trigger.)')]
        [string]
        [ValidateSet('ScheduleBased')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [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:datashare:Trigger")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareBlobFolderDataSet
{
    [Alias('azure_native_datashare_blobfolderdataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='Container that has the file path.)')]
        [string]
        $containerName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='Prefix for blob folder)')]
        [string]
        $prefix,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''BlobFolder''.)'
)]
        [string]
        $kind,
        [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:datashare:BlobFolderDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["containerName"] = $containerName
        $resource.properties["kind"] = $kind
        $resource.properties["prefix"] = $prefix
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareName"] = $shareName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareSqlDBTableDataSetMapping
{
    [Alias('azure_native_datashare_sqldbtabledatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of SQL server)')]
        [string]
        $sqlServerResourceId,
        [parameter(mandatory=$False,HelpMessage='Schema of the table. Default value is dbo.)')]
        [string]
        $schemaName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='DatabaseName name of the sink data set)')]
        [string]
        $databaseName,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='SQL DB table name.)')]
        [string]
        $tableName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''SqlDBTable''.)'
)]
        [string]
        $kind,
        [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:datashare:SqlDBTableDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["databaseName"] = $databaseName
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["schemaName"] = $schemaName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["sqlServerResourceId"] = $sqlServerResourceId
        $resource.properties["tableName"] = $tableName

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareSqlDWTableDataSetMapping
{
    [Alias('azure_native_datashare_sqldwtabledatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of SQL server)')]
        [string]
        $sqlServerResourceId,
        [parameter(mandatory=$False,HelpMessage='Schema of the table. Default value is dbo.)')]
        [string]
        $schemaName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='DataWarehouse name of the source data set)')]
        [string]
        $dataWarehouseName,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='SQL DW table name.)')]
        [string]
        $tableName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''SqlDWTable''.)'
)]
        [string]
        $kind,
        [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:datashare:SqlDWTableDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["dataWarehouseName"] = $dataWarehouseName
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["schemaName"] = $schemaName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["sqlServerResourceId"] = $sqlServerResourceId
        $resource.properties["tableName"] = $tableName

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareSynapseWorkspaceSqlPoolTableDataSetMapping
{
    [Alias('azure_native_datashare_synapseworkspacesqlpooltabledatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Resource id of the Synapse Workspace SQL Pool Table)')]
        [string]
        $synapseWorkspaceSqlPoolTableResourceId,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''SynapseWorkspaceSqlPoolTable''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [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:datashare:SynapseWorkspaceSqlPoolTableDataSetMapping")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen2FolderDataSetMapping
{
    [Alias('azure_native_datashare_adlsgen2folderdatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='File system to which the folder belongs.)')]
        [string]
        $fileSystem,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set.)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''AdlsGen2Folder''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='Folder path within the file system.)')]
        [string]
        $folderPath,
        [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:datashare:ADLSGen2FolderDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["fileSystem"] = $fileSystem
        $resource.properties["folderPath"] = $folderPath
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen2FileSystemDataSet
{
    [Alias('azure_native_datashare_adlsgen2filesystemdataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The file system name.)')]
        [string]
        $fileSystem,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''AdlsGen2FileSystem''.)'
)]
        [string]
        $kind,
        [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:datashare:ADLSGen2FileSystemDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["fileSystem"] = $fileSystem
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareName"] = $shareName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
class Identity
{
    [ArgumentCompletions('SystemAssigned')]
    [string] $type
}
function New-AzureNativeTypeDatashareIdentity
{
    param (
        [parameter(mandatory=$False,HelpMessage='Identity Type)')]
        [string]
        [ValidateSet('SystemAssigned')]
        $type
    )

    process
    {
        return $([Identity]$PSBoundParameters)
    }
}
function New-AzureNativeDatashareAccount
{
    [Alias('azure_native_datashare_account')]
    param (
        [parameter(mandatory=$False,HelpMessage='Location of the azure resource.)')]
        [string]
        $location,
        [parameter(mandatory=$False,HelpMessage='Tags on the azure resource.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='Identity Info on the Account)')]
        [Identity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [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:datashare:Account")

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

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

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareBlobContainerDataSetMapping
{
    [Alias('azure_native_datashare_blobcontainerdatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='BLOB Container name.)')]
        [string]
        $containerName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set.)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''Container''.)'
)]
        [string]
        $kind,
        [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:datashare:BlobContainerDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["containerName"] = $containerName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen1FolderDataSet
{
    [Alias('azure_native_datashare_adlsgen1folderdataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of ADLS account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''AdlsGen1Folder''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The ADLS account name.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='Subscription id of ADLS account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The folder path within the ADLS account.)')]
        [string]
        $folderPath,
        [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:datashare:ADLSGen1FolderDataSet")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareDataSet
{
    [Alias('azure_native_datashare_dataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.)')]
        [string]
        [ValidateSet('Blob', 'Container', 'BlobFolder', 'AdlsGen2FileSystem', 'AdlsGen2Folder', 'AdlsGen2File', 'AdlsGen1Folder', 'AdlsGen1File', 'KustoCluster', 'KustoDatabase', 'SqlDBTable', 'SqlDWTable', 'SynapseWorkspaceSqlPoolTable')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [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:datashare:DataSet")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen1FileDataSet
{
    [Alias('azure_native_datashare_adlsgen1filedataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of ADLS account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The ADLS account name.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The file name in the ADLS account.)')]
        [string]
        $fileName,
        [parameter(mandatory=$False,HelpMessage='Subscription id of ADLS account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''AdlsGen1File''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The folder path within the ADLS account.)')]
        [string]
        $folderPath,
        [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:datashare:ADLSGen1FileDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["fileName"] = $fileName
        $resource.properties["folderPath"] = $folderPath
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareName"] = $shareName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareSynchronizationSetting
{
    [Alias('azure_native_datashare_synchronizationsetting')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the synchronization setting to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The name of the synchronizationSetting.)')]
        [string]
        $synchronizationSettingName,
        [parameter(mandatory=$False,HelpMessage='Kind of synchronization setting.)')]
        [string]
        [ValidateSet('ScheduleBased')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [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:datashare:SynchronizationSetting")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareBlobDataSet
{
    [Alias('azure_native_datashare_blobdataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='File path within the source data set)')]
        [string]
        $filePath,
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='Container that has the file path.)')]
        [string]
        $containerName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''Blob''.)'
)]
        [string]
        $kind,
        [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:datashare:BlobDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["containerName"] = $containerName
        $resource.properties["filePath"] = $filePath
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareName"] = $shareName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareSqlDBTableDataSet
{
    [Alias('azure_native_datashare_sqldbtabledataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource id of SQL server)')]
        [string]
        $sqlServerResourceId,
        [parameter(mandatory=$False,HelpMessage='Schema of the table. Default value is dbo.)')]
        [string]
        $schemaName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Database name of the source data set)')]
        [string]
        $databaseName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='SQL DB table name.)')]
        [string]
        $tableName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''SqlDBTable''.)'
)]
        [string]
        $kind,
        [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:datashare:SqlDBTableDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["databaseName"] = $databaseName
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["schemaName"] = $schemaName
        $resource.properties["shareName"] = $shareName
        $resource.properties["sqlServerResourceId"] = $sqlServerResourceId
        $resource.properties["tableName"] = $tableName

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen2FileDataSetMapping
{
    [Alias('azure_native_datashare_adlsgen2filedatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='File path within the file system.)')]
        [string]
        $filePath,
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='File system to which the file belongs.)')]
        [string]
        $fileSystem,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set.)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Type of output file)')]
        [string]
        [ValidateSet('Csv', 'Parquet')]
        $outputType,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''AdlsGen2File''.)'
)]
        [string]
        $kind,
        [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:datashare:ADLSGen2FileDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["filePath"] = $filePath
        $resource.properties["fileSystem"] = $fileSystem
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareBlobContainerDataSet
{
    [Alias('azure_native_datashare_blobcontainerdataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='BLOB Container name.)')]
        [string]
        $containerName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''Container''.)'
)]
        [string]
        $kind,
        [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:datashare:BlobContainerDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["containerName"] = $containerName
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareName"] = $shareName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen2FileSystemDataSetMapping
{
    [Alias('azure_native_datashare_adlsgen2filesystemdatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The file system name.)')]
        [string]
        $fileSystem,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set.)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''AdlsGen2FileSystem''.)'
)]
        [string]
        $kind,
        [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:datashare:ADLSGen2FileSystemDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["fileSystem"] = $fileSystem
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareDataSetMapping
{
    [Alias('azure_native_datashare_datasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.)')]
        [string]
        [ValidateSet('Blob', 'Container', 'BlobFolder', 'AdlsGen2FileSystem', 'AdlsGen2Folder', 'AdlsGen2File', 'KustoCluster', 'KustoDatabase', 'SqlDBTable', 'SqlDWTable', 'SynapseWorkspaceSqlPoolTable')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [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:datashare:DataSetMapping")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareKustoDatabaseDataSet
{
    [Alias('azure_native_datashare_kustodatabasedataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='Resource id of the kusto database.)')]
        [string]
        $kustoDatabaseResourceId,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''KustoDatabase''.)'
)]
        [string]
        $kind,
        [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:datashare:KustoDatabaseDataSet")

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

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareADLSGen2FolderDataSet
{
    [Alias('azure_native_datashare_adlsgen2folderdataset')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='File system to which the folder belongs.)')]
        [string]
        $fileSystem,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The name of the dataSet.)')]
        [string]
        $dataSetName,
        [parameter(mandatory=$False,HelpMessage='The name of the share to add the data set to.)')]
        [string]
        $shareName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set.
Expected value is ''AdlsGen2Folder''.)'
)]
        [string]
        $kind,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='Folder path within the file system.)')]
        [string]
        $folderPath,
        [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:datashare:ADLSGen2FolderDataSet")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["fileSystem"] = $fileSystem
        $resource.properties["folderPath"] = $folderPath
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareName"] = $shareName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeDatashareBlobFolderDataSetMapping
{
    [Alias('azure_native_datashare_blobfolderdatasetmapping')]
    param (
        [parameter(mandatory=$False,HelpMessage='Resource group of storage account.)')]
        [string]
        $resourceGroup,
        [parameter(mandatory=$False,HelpMessage='The name of the share account.)')]
        [string]
        $accountName,
        [parameter(mandatory=$False,HelpMessage='The resource group name.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the data set mapping to be created.)')]
        [string]
        $dataSetMappingName,
        [parameter(mandatory=$False,HelpMessage='Container that has the file path.)')]
        [string]
        $containerName,
        [parameter(mandatory=$False,HelpMessage='Storage account name of the source data set.)')]
        [string]
        $storageAccountName,
        [parameter(mandatory=$False,HelpMessage='The id of the source data set.)')]
        [string]
        $dataSetId,
        [parameter(mandatory=$False,HelpMessage='Prefix for blob folder)')]
        [string]
        $prefix,
        [parameter(mandatory=$False,HelpMessage='Subscription id of storage account.)')]
        [string]
        $subscriptionId,
        [parameter(mandatory=$False,HelpMessage='The name of the share subscription which will hold the data set sink.)')]
        [string]
        $shareSubscriptionName,
        [parameter(mandatory=$False,HelpMessage='Kind of data set mapping.
Expected value is ''BlobFolder''.)'
)]
        [string]
        $kind,
        [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:datashare:BlobFolderDataSetMapping")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["accountName"] = $accountName
        $resource.properties["containerName"] = $containerName
        $resource.properties["dataSetId"] = $dataSetId
        $resource.properties["kind"] = $kind
        $resource.properties["prefix"] = $prefix
        $resource.properties["resourceGroup"] = $resourceGroup
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["shareSubscriptionName"] = $shareSubscriptionName
        $resource.properties["storageAccountName"] = $storageAccountName
        $resource.properties["subscriptionId"] = $subscriptionId

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

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