tsoa-next / @tsoa-next/cli / ExtendedSpecConfig
Interface: ExtendedSpecConfig
Defined in: cli/src/api.ts:387
Normalized spec-generation config returned by validateSpecConfig.
Extends
SpecConfig
Properties
basePath?
optional basePath?: string;Defined in: packages/runtime/src/config.ts:163
Base API path; e.g. the 'v1' in https://myapi.com/v1
Inherited from
SpecConfig.basePathcontact?
optional contact?: object;Defined in: packages/runtime/src/config.ts:135
Contact information for the published API.
email?
optional email?: string;The email address of the contact person/organization.
Default
npm package author emailname?
optional name?: string;The identifying name of the contact person/organization.
Default
npm package authorurl?
optional url?: string;URL pointing to the contact information.
Default
npm package author urlInherited from
SpecConfig.contactcontrollerPathGlobs?
optional controllerPathGlobs?: string[];Defined in: cli/src/api.ts:390
description?
optional description?: string;Defined in: packages/runtime/src/config.ts:124
API description; defaults to npm package description
Inherited from
SpecConfig.descriptiondisableBasePathPrefixSlash?
optional disableBasePathPrefixSlash?: boolean;Defined in: packages/runtime/src/config.ts:170
Controls whether basePath is prefixed with / when composing OpenAPI 3 server URLs.
Only available with spec version 3 or 3.1.
Inherited from
SpecConfig.disableBasePathPrefixSlashentryFile
entryFile: string;Defined in: cli/src/api.ts:388
host?
optional host?: string;Defined in: packages/runtime/src/config.ts:88
API host name for Swagger 2 output, for example localhost:3000.
Inherited from
SpecConfig.hostlicense?
optional license?: string;Defined in: packages/runtime/src/config.ts:158
API license; defaults to npm package license when present
Inherited from
SpecConfig.licensename?
optional name?: string;Defined in: packages/runtime/src/config.ts:119
API name; defaults to npm package name
Inherited from
SpecConfig.namenoImplicitAdditionalProperties
noImplicitAdditionalProperties: "ignore" | "throw-on-extras" | "silently-remove-extras";Defined in: cli/src/api.ts:389
operationIdTemplate?
optional operationIdTemplate?: string;Defined in: packages/runtime/src/config.ts:197
Template string for generating operation ids. This should be a valid handlebars template and is provided with the following context:
- 'controllerName' - String name of controller class.
- 'method' - Tsoa.Method object.
Default
'{{titleCase method.name}}'Inherited from
SpecConfig.operationIdTemplateoutputDirectory
outputDirectory: string;Defined in: packages/runtime/src/config.ts:83
Directory where the generated spec file should be written.
Inherited from
SpecConfig.outputDirectoryrootSecurity?
optional rootSecurity?: Security[];Defined in: packages/runtime/src/config.ts:232
Applies a default security to the entire API. Can be overridden with @Security(...) or @NoSecurity() decorators on controllers or methods.
Inherited from
SpecConfig.rootSecurityschemes?
optional schemes?: Protocol[];Defined in: packages/runtime/src/config.ts:215
Supported protocols for Swagger 2 output.
Inherited from
SpecConfig.schemessecurityDefinitions?
optional securityDefinitions?: object;Defined in: packages/runtime/src/config.ts:202
Security schemes declared for the specification.
Index Signature
[name: string]: SecuritySchemesInherited from
SpecConfig.securityDefinitionsservers?
optional servers?: string[];Defined in: packages/runtime/src/config.ts:95
Server URLs for OpenAPI 3 output.
Only available with spec version 3 or 3.1.
Inherited from
SpecConfig.serversspec?
optional spec?: unknown;Defined in: packages/runtime/src/config.ts:176
Object merged into the generated spec. Generated properties always take precedence over values provided here.
Inherited from
SpecConfig.specspecFileBaseName?
optional specFileBaseName?: string;Defined in: packages/runtime/src/config.ts:102
Base-name of swagger.json or swagger.yaml.
@default: "swagger"
Inherited from
SpecConfig.specFileBaseNamespecMerging?
optional specMerging?: "immediate" | "recursive" | "deepmerge";Defined in: packages/runtime/src/config.ts:186
Controls how spec is merged into the generated document. Possible values:
- 'immediate' overrides only top-level elements.
- 'recursive' performs a deep merge using
merge. - 'deepmerge' performs a deep merge using
ts-deepmerge, including arrays.
Default
'immediate'Inherited from
SpecConfig.specMergingspecVersion?
optional specVersion?: SupportedSpecMajorVersion;Defined in: packages/runtime/src/config.ts:114
Major OpenAPI version to generate; defaults to version 2 when not specified Possible values:
- 2: generates OpenAPI version 2.
- 3: generates OpenAPI version 3.
- 3.1: generates OpenAPI version 3.1.
Inherited from
SpecConfig.specVersiontags?
optional tags?: Tag[];Defined in: packages/runtime/src/config.ts:209
Top-level tag metadata for the generated specification.
Inherited from
SpecConfig.tagstermsOfService?
optional termsOfService?: string;Defined in: packages/runtime/src/config.ts:130
Link to the page that describes the terms of service. Must be in the URL format.
Inherited from
SpecConfig.termsOfServiceuseTitleTagsForInlineObjects?
optional useTitleTagsForInlineObjects?: boolean;Defined in: packages/runtime/src/config.ts:226
Adds titles to inline response and request-body object schemas to improve client generation.
Inherited from
SpecConfig.useTitleTagsForInlineObjectsversion?
optional version?: string;Defined in: packages/runtime/src/config.ts:105
API version number; defaults to the package version.
Inherited from
SpecConfig.versionxEnumVarnames?
optional xEnumVarnames?: boolean;Defined in: packages/runtime/src/config.ts:221
Enable x-enum-varnames support
Default
falseInherited from
SpecConfig.xEnumVarnamesyaml?
optional yaml?: boolean;Defined in: packages/runtime/src/config.ts:212
Writes the generated spec as YAML instead of JSON.
Inherited from
SpecConfig.yaml