docs(controllerClass, config)
Применяет декораторы Swagger к классу контроллера снаружи его файла, как побочный эффект при импорте.
Сигнатура
Вызывайте её на верхнем уровне файла *.controller.docs.ts, где она отрабатывает побочным эффектом при импорте.
Типобезопасность
Полная типобезопасность: config.methods принимает только те ключи, которые есть у класса контроллера. Опечатку поймает компилятор.
ts
docs(UsersController, {
classDecorators: [ApiTags('users')],
methods: {
findAll: [...], // ✔ exists on UsersController
typoMethod: [...], // ✖ TypeScript error
},
});Поля конфигурации
config.classDecorators:ClassDecorator[], применяются к конструктору класса (например,ApiTags,ApiBearerAuth).config.methods:Partial<Record<keyof T, MethodDecorator[]>>, массивы декораторов по имени метода, применяются по порядку.config.group:string, название логической группы для расширенияx-tagGroupsв ReDoc.config.tags:string[], имена тегов, привязанных кgroup. Должны совпадать с тем, что вы передаёте вApiTags().
Поведение в рантайме
Несуществующий ключ метода
Если в рантайме такого метода у контроллера нет, в лог уйдёт предупреждение, а сама запись будет пропущена. Остальная часть docs-файла всё равно применится.