@typespec/compiler
Version:
TypeSpec compiler and standard library
119 lines • 3.38 kB
JavaScript
export const emitterOptionsSchema = {
type: "object",
additionalProperties: true,
required: [],
properties: {
"emitter-output-dir": { type: "string", nullable: true },
},
};
export const TypeSpecConfigJsonSchema = {
type: "object",
additionalProperties: false,
properties: {
extends: {
type: "string",
nullable: true,
},
kind: {
type: "string",
enum: ["project"],
nullable: true,
},
entrypoint: {
type: "string",
nullable: true,
},
features: {
type: "array",
nullable: true,
items: { type: "string" },
},
"environment-variables": {
type: "object",
nullable: true,
required: [],
additionalProperties: {
type: "object",
properties: {
default: { type: "string" },
},
required: ["default"],
additionalProperties: false,
},
},
parameters: {
type: "object",
nullable: true,
required: [],
additionalProperties: {
type: "object",
properties: {
default: { type: "string" },
},
required: ["default"],
additionalProperties: false,
},
},
"output-dir": {
type: "string",
nullable: true,
},
"warn-as-error": {
type: "boolean",
nullable: true,
},
trace: {
oneOf: [
{ type: "string" },
{
type: "array",
items: { type: "string" },
},
],
}, // Issue with AJV optional property typing https://github.com/ajv-validator/ajv/issues/1664
imports: {
type: "array",
nullable: true,
items: { type: "string" },
},
emit: {
type: "array",
nullable: true,
items: { type: "string" },
},
options: {
type: "object",
nullable: true,
required: [],
additionalProperties: emitterOptionsSchema,
},
linter: {
type: "object",
nullable: true,
required: [],
additionalProperties: false,
properties: {
extends: {
type: "array",
nullable: true,
items: { type: "string" },
},
enable: {
type: "object",
required: [],
nullable: true,
additionalProperties: {
oneOf: [{ type: "boolean" }, { type: "object" }],
},
},
disable: {
type: "object",
required: [],
nullable: true,
additionalProperties: { type: "string" },
},
},
}, // ajv type system doesn't like the string templates
},
};
//# sourceMappingURL=config-schema.js.map