Introdução
O TypeScript usa um conceito frequentemente apelidado de Duck Typing (Tipagem Pato). A regra de ouro é:
"Se um animal anda como um pato, nada como um pato e grasna como um pato, então, para todos os efeitos, ele é um pato."
No TypeScript, isso significa que o compilador não se importa com a "certidão de nascimento" (o nome) do objeto. Ele só se importa com o que o objeto tem por dentro (suas propriedades e métodos).
A tipagem estrutural existe no TypeScript porque o JavaScript (a linguagem base) é extremamente dinâmico. Essa abordagem permite que o TypeScript traga segurança para o código sem perder a flexibilidade natural do JavaScript de criar objetos dinamicamente.






