Saltar al contenido
TS2300

    ↑↓ mover · ⏎ abrir · esc cerrar

    TS2300

    Identificador duplicado

    Duplicate identifier 'Result'.

    Las palabras del propio compilador. Sin traducir — es la cadena que pegaste en el buscador.

    El mismo nombre de tipo no fusionable se declaró dos veces en un ámbito.

    Reproducción

    type Result = { ok: true }
    
    type Result = { ok: false }

    La compilación afirma que esto emite exactamente este código.

    Por qué lo dice el compilador

    Los alias nombran una definición y no se fusionan por declaración. Dos alias con el mismo nombre vuelven ambiguo cada uso, así que el duplicado se rechaza en ambas declaraciones.

    Arreglos

    1. 01
      type Result = { ok: true } | { ok: false }

      Combina las alternativas en un alias cuando representen ramas del mismo concepto.

    2. 02
      type Success = { ok: true }
      type Failure = { ok: false }
      
      type Result = Success | Failure

      Da nombres distintos a conceptos distintos y compónlos donde haga falta.

    Conclusión

    Los alias de tipo no se fusionan. Renombra, elimina o compón deliberadamente las definiciones duplicadas.

    Adónde ir después

    Errores