{
  "$schema": "http://json.schemastore.org/template",
  "author": "Microsoft",
  "classifications": [
    "Common",
    "Console"
  ],
  "name": "Console App",
  "generatorVersions": "[1.0.0.0-*)",
  "description": "A project for creating a command-line application that can run on .NET on Windows, Linux and macOS",
  "groupIdentity": "Microsoft.Common.Console",
  "precedence": "11000",
  "identity": "Microsoft.Common.Console.VisualBasic.9.0",
  "shortName": "console",
  "tags": {
    "language": "VB",
    "type": "project"
  },
  "sourceName": "Company.ConsoleApplication1",
  "preferNameDirectory": true,
  "symbols": {
    "TargetFrameworkOverride": {
      "type": "parameter",
      "description": "Overrides the target framework",
      "replaces": "TargetFrameworkOverride",
      "datatype": "string",
      "defaultValue": "",
      "displayName": "Target framework override"
    },
    "Framework": {
      "type": "parameter",
      "description": "The target framework for the project.",
      "datatype": "choice",
      "choices": [
        {
          "choice": "net9.0",
          "description": "Target net9.0",
          "displayName": ".NET 9.0"
        }
      ],
      "replaces": "net9.0",
      "defaultValue": "net9.0",
      "displayName": "Framework"
    },
    "langVersion": {
      "type": "parameter",
      "datatype": "text",
      "description": "Sets the LangVersion property in the created project file",
      "defaultValue": "",
      "replaces": "$(ProjectLanguageVersion)",
      "displayName": "Language version"
    },
    "HostIdentifier": {
      "type": "bind",
      "binding": "host:HostIdentifier"
    },
    "skipRestore": {
      "type": "parameter",
      "datatype": "bool",
      "description": "If specified, skips the automatic restore of the project on create.",
      "defaultValue": "false",
      "displayName": "Skip restore"
    },
    "NativeAot" : {
      "type": "parameter",
      "datatype": "bool",
      "defaultValue": "false",
      "displayName": "Enable _native AOT publish",
      "description": "Whether to enable the project for publishing as native AOT."
    }
  },
  "primaryOutputs": [
    {
      "path": "Company.ConsoleApplication1.vbproj"
    },
    {
      "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")",
      "path": "Program.vb"
    }
  ],
  "defaultName": "ConsoleApp1",
  "postActions": [
    {
      "id": "restore",
      "condition": "(!skipRestore)",
      "description": "Restore NuGet packages required by this project.",
      "manualInstructions": [
        {
          "text": "Run 'dotnet restore'"
        }
      ],
      "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025",
      "continueOnError": true
    },
    {
      "id": "open-file",
      "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")",
      "description": "Opens Program.vb in the editor",
      "manualInstructions": [],
      "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6",
      "args": {
        "files": "1"
      },
      "continueOnError": true
    }
  ]
}
