Estoy enfrentando un problema. Necesito exponer un 'tipo' en una @ApiProperty de swagger en mi API. Pero la arrogancia no lo acepta. Busqué en muchos sitios web para encontrar una solución, pero no encontré ninguna.
Aquí está el error que obtengo:
TS2693: 'testTest' solo se refiere a un tipo, pero aquí se usa como un valor.
type testTest = 'A' | 'B'; @ApiProperty({ type: testTest, example: 'fr', }) test: testTest;No puedo usar otra cosa ya que el tipo que necesito usar es de una biblioteca externa.
No puede usar un type de TypeScript como valor para el type en Swagger porque el type que está importando de dicha biblioteca no está disponible en tiempo de ejecución, o una vez que se ha transpilado a javascript. solo se usa para verificación de tipos. Así es como funciona el mecanografiado. Esto es lo mismo para cualquier tipo, interfaces, tipos de devolución, etc.
Lo que le sugiero que haga es tener una variable que contenga los valores en el type testTest = 'A' | 'B';
const testTest = ['A','B']; @ApiProperty({ type: String, example: testTest[0], enum: testTest }) test: testTest;