{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "tables": {
      "type": "object",
      "defaultValue": {
        "abc": [
          {
            "partitionKey": "emotion",
            "rowKey": "happy",
            "blah": "asdf",
            "test": 5
          },
          {
            "partitionKey": "emotion",
            "rowKey": "angry",
            "blah": "bdfae",
            "test": 221,
            "another": "testing"
          }
        ],
        "def": [
          {
            "partitionKey": "emotion",
            "rowKey": "sad",
            "blah": "jiuo",
            "test": 2
          }
        ],
        "ghi": [
        ]
      }
    }
  },
  "variables": {
    "apostrophe": "'"
  },
  "resources": [
    {
      "type": "Microsoft.Resources/deploymentScripts",
      "apiVersion": "2020-10-01",
      "name": "runPowerShellInline",
      "location": "[resourceGroup().location]",
      "kind": "AzurePowerShell",
      "properties": {
        "forceUpdateTag": "1",
        "azPowerShellVersion": "8.3",
        "arguments": "[concat('-tables', ' ', concat(variables('apostrophe'), replace(string(parameters('tables')), '\"', '\\\"'), variables('apostrophe')))]",
        "scriptContent": "
          param([string] $tables)
          $output = ConvertFrom-Json $tables -AsHashtable | ConvertTo-Json -Depth 5 -Compress
          $DeploymentScriptOutputs = @{}
          $DeploymentScriptOutputs['text'] = $output
        ",
        "timeout": "PT30M",
        "cleanupPreference": "OnSuccess",
        "retentionInterval": "P1D"
      }
    }
  ],
  "outputs": {
    "result": {
      "value": "[reference('runPowerShellInline').outputs.text]",
      "type": "string"
    }
  }
}