{
  "rest": {
    "title": "Generic REST API",
    "description": "Create a project representing a generic REST API service.",
    "compilerVersion": "1.11.0",
    "libraries": [
      "@typespec/http",
      "@typespec/rest",
      "@typespec/openapi",
      "@typespec/openapi3"
    ],
    "emitters": {
      "@typespec/openapi3": {
        "selected": true,
        "label": "OpenAPI 3.1 document",
        "options": {
          "emitter-output-dir": "{output-dir}/schema",
          "openapi-versions": [
            "3.1.0"
          ]
        }
      },
      "@typespec/http-client-csharp": {
        "label": "C# client",
        "options": {
          "emitter-output-dir": "{output-dir}/clients/csharp"
        }
      },
      "@typespec/http-client-java": {
        "label": "Java client",
        "options": {
          "emitter-output-dir": "{output-dir}/clients/java"
        }
      },
      "@typespec/http-client-js": {
        "label": "JavaScript client",
        "options": {
          "emitter-output-dir": "{output-dir}/clients/js"
        }
      },
      "@typespec/http-client-python": {
        "label": "Python client",
        "options": {
          "emitter-output-dir": "{output-dir}/clients/python"
        }
      },
      "@typespec/http-server-csharp": {
        "label": "C# server stubs",
        "options": {
          "emitter-output-dir": "{output-dir}/server/aspnet"
        },
        "message": "\n\tGenerated ASP.Net services require dotnet 9:\n\thttps://dotnet.microsoft.com/download \n\n\tCreate an ASP.Net service project for your TypeSpec:\n\t> npx hscs-scaffold . --use-swaggerui --overwrite\n\n\tMore information on getting started:\n\thttps://aka.ms/tsp/hscs/start\n         "
      },
      "@typespec/http-server-js": {
        "label": "JavaScript server stubs",
        "options": {
          "emitter-output-dir": "{output-dir}/server/js"
        },
        "message": "\n\tGenerated JavaScript services require a service runtime:\n\thttps://nodejs.org/download \n\n\tCreate a JavaScript service project for your TypeSpec:\n\t> npx hsjs-scaffold\n\n\tMore information on getting started:\n\thttps://aka.ms/tsp/hsjs/start\n"
      }
    },
    "files": [
      {
        "path": "rest/main.tsp",
        "destination": "main.tsp"
      }
    ]
  },
  "library-ts": {
    "target": "library",
    "title": "TypeSpec library",
    "description": "Build your own TypeSpec library with custom types, decorators or linters.",
    "compilerVersion": "1.11.0",
    "libraries": [],
    "files": [
      {
        "destination": "main.tsp",
        "skipGeneration": true
      },
      {
        "destination": "tspconfig.yaml",
        "skipGeneration": true
      },
      {
        "path": "library-ts/eslint.config.js",
        "destination": "eslint.config.js"
      },
      {
        "path": "library-ts/lib/decorators.tsp.mu",
        "destination": "lib/decorators.tsp"
      },
      {
        "path": "library-ts/lib/main.tsp",
        "destination": "lib/main.tsp"
      },
      {
        "path": "library-ts/package.json",
        "destination": "package.json"
      },
      {
        "path": "library-ts/prettierrc.yaml",
        "destination": "prettierrc.yaml"
      },
      {
        "path": "library-ts/src/decorators.ts",
        "destination": "src/decorators.ts"
      },
      {
        "path": "library-ts/src/index.ts",
        "destination": "src/index.ts"
      },
      {
        "path": "library-ts/src/lib.ts",
        "destination": "src/lib.ts"
      },
      {
        "path": "library-ts/src/linter.ts",
        "destination": "src/linter.ts"
      },
      {
        "path": "library-ts/src/rules/no-interfaces.rule.ts",
        "destination": "src/rules/no-interfaces.rule.ts"
      },
      {
        "path": "library-ts/src/testing/index.ts.mu",
        "destination": "src/testing/index.ts"
      },
      {
        "path": "library-ts/test/decorators.test.ts.mu",
        "destination": "test/decorators.test.ts"
      },
      {
        "path": "library-ts/test/rules/no-interfaces.rule.test.ts",
        "destination": "test/rules/no-interfaces.rule.test.ts"
      },
      {
        "path": "library-ts/test/test-host.ts.mu",
        "destination": "test/test-host.ts"
      },
      {
        "path": "library-ts/tsconfig.json",
        "destination": "tsconfig.json"
      }
    ]
  },
  "emitter-ts": {
    "target": "library",
    "title": "TypeSpec emitter",
    "description": "Create a new package that emits artifacts from TypeSpec.",
    "compilerVersion": "1.11.0",
    "libraries": [],
    "files": [
      {
        "destination": "main.tsp",
        "skipGeneration": true
      },
      {
        "destination": "tspconfig.yaml",
        "skipGeneration": true
      },
      {
        "path": "emitter-ts/eslint.config.js",
        "destination": "eslint.config.js"
      },
      {
        "path": "emitter-ts/package.json",
        "destination": "package.json"
      },
      {
        "path": "emitter-ts/prettierrc.yaml",
        "destination": "prettierrc.yaml"
      },
      {
        "path": "emitter-ts/src/emitter.ts",
        "destination": "src/emitter.ts"
      },
      {
        "path": "emitter-ts/src/index.ts",
        "destination": "src/index.ts"
      },
      {
        "path": "emitter-ts/src/lib.ts",
        "destination": "src/lib.ts"
      },
      {
        "path": "emitter-ts/src/testing/index.ts.mu",
        "destination": "src/testing/index.ts"
      },
      {
        "path": "emitter-ts/test/hello.test.ts",
        "destination": "test/hello.test.ts"
      },
      {
        "path": "emitter-ts/test/test-host.ts.mu",
        "destination": "test/test-host.ts"
      },
      {
        "path": "emitter-ts/tsconfig.json",
        "destination": "tsconfig.json"
      }
    ]
  }
}