docs(controllerClass, config)
Aplica decorators Swagger a uma classe de controller a partir de fora do arquivo dela, como side effect no import.
Assinatura
Chame no top level de um *.controller.docs.ts, onde roda como side effect no import.
Type-safety
Totalmente type-safe: config.methods só aceita chaves que existem na classe do controller. Typos são pegos em compile time.
ts
docs(UsersController, {
classDecorators: [ApiTags('users')],
methods: {
findAll: [...], // ✔ exists on UsersController
typoMethod: [...], // ✖ TypeScript error
},
});Campos de config
config.classDecorators:ClassDecorator[], aplicado ao construtor da classe (ex.:ApiTags,ApiBearerAuth).config.methods:Partial<Record<keyof T, MethodDecorator[]>>, arrays de decorator por nome de método, aplicados em ordem.config.group:string, nome lógico do grupo para a extensãox-tagGroupsdo ReDoc.config.tags:string[], nomes de tag associados aogroup. Devem casar com o que você passa paraApiTags().
Comportamento em runtime
Chave de método inexistente
Se uma chave de método não existir no controller em runtime, um warning é logado e essa entrada é pulada, mas o resto do docs file ainda é aplicado.