# Suporte a TypeScript no Maguyva: Contexto Melhor para Monorepos

Canonical source: https://maguyva.ai/pt-br/languages/typescript

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

O Maguyva oferece suporte a TypeScript com parsing de AST e extração de símbolos, permitindo que agentes de IA rastreiem interfaces, implementações, pacotes compartilhados e código de aplicação rico em JSX em monorepos.

## Panorama de suporte

- Nível: Suporte a AST e símbolos
- Programação
- Extensões: .cts, .d.ts, .mts, .spec.ts, .stories.ts, .test.ts, +1 mais
- Parsing real de AST para busca com consciência de sintaxe e contexto estrutural.
- Símbolos nomeados alimentam a busca semântica e as referências cruzadas. A navegação por grafo fica disponível quando a extração de relações está habilitada.
- Esta linguagem fornece símbolos e relações para a busca orientada por grafo; os tipos de aresta compatíveis variam de acordo com seus construtos nativos.
- A análise de AST e a extração de símbolos estão disponíveis.

## Uso ideal

- Equipes de produto e de plataforma que rodam Next.js, serviços Node, pacotes compartilhados e ferramentas dentro de um único repositório TypeScript.
- Repositórios em que interfaces, DTOs, schemas e componentes React se movem juntos, mas vivem em diretórios diferentes.
- Equipes que tentam dar aos agentes de IA contexto seguro antes de mexerem em tipos compartilhados ou limites de pacotes.

## Fluxos de trabalho de agente

- Seguir um tipo, interface ou componente desde a definição até os caminhos de código que realmente o utilizam.
- Comparar implementações entre pacotes antes de mudar um helper compartilhado ou um contrato de API.
- Mapear o provável raio de impacto de editar um tipo compartilhado, um utilitário ou um módulo de serviço.

## Por que páginas de TypeScript importam

TypeScript é a linguagem em que muitas equipes esperam que a refatoração assistida por IA finalmente pareça segura. O sistema de tipos ajuda, mas não elimina o problema real: pacotes compartilhados, DTOs, clients gerados, componentes React, testes e código de aplicação, todos puxando os mesmos nomes em um repositório grande.

Para TypeScript, o padrão é mais alto do que "entende a sintaxe". O agente precisa seguir o contrato da definição até a implementação e até o raio de impacto antes de editar um tipo, hook ou client compartilhado.

## O que o Maguyva realmente extrai em TypeScript

O Maguyva extrai classes, métodos, interfaces e type aliases em `.ts`, `.mts`, `.cts` e nas variantes comuns de arquivo TypeScript relacionadas a testes e stories. Prefixos de membro são normalizados, mas identificadores qualificados por classe são preservados, o que ajuda quando um repositório tem tanto um nome de helper não qualificado quanto um método com escopo de classe com o mesmo segmento final.

JSX é tratado como um sinal estrutural real, e não como marcação avulsa. Nos arquivos TypeScript indexados, testes, stories e configuração continuam disponíveis junto ao código da aplicação, ajudando um agente a conferir exemplos de uso e a configuração antes de alterar um componente ou serviço compartilhado.

## Fluxos de trabalho com MCP úteis para repositórios TypeScript

Três padrões iniciais geralmente bastam:

- Use `find_symbol` quando você já souber o nome da interface, type alias, hook ou service.
- Use `dependency_search` antes de mudar tipos ou clients compartilhados que podem se ramificar por vários pacotes.
- Use `structural_search` quando você precisar de um formato de código, não de uma correspondência de palavra-chave, por exemplo, padrões repetidos de componente ou método.

Para perguntas conceituais como "seguir o caminho de envio do checkout", `get_task_context` costuma ser um primeiro salto melhor do que uma busca bruta.

## Onde esta página é mais relevante

Esta página é mais forte para monorepos web e de plataforma em que TypeScript é a camada de coordenação de vários pacotes. Se o seu repositório ainda inclui bastante JS mais antigo, leia o [guia de JavaScript](/pt-br/languages/javascript). Se a sua pergunta é realmente "o agente consegue manter juntos o código de aplicação e o contexto de infraestrutura?", combine isso com [Terraform](/pt-br/languages/terraform).

## Detalhes do motor

- O TypeScript extrai classes, métodos, interfaces e aliases de tipo em vez de achatar tudo em símbolos genéricos.
- Prefixos de membro são removidos, mas identificadores qualificados por classe são preservados, o que ajuda a distinguir `CheckoutService.create` de um `create` não qualificado.
- Elementos JSX contam como instanciações. Nos arquivos TypeScript indexados, testes, stories e configuração continuam disponíveis como contexto junto ao código da aplicação.

## Pontos de entrada MCP úteis

- `find_symbol`: Comece por aqui quando souber a interface compartilhada, alias de tipo, hook ou serviço que quer inspecionar.
- `dependency_search`: Use antes de alterar um DTO ou client compartilhado para ter um raio de impacto realista entre pacotes.
- `structural_search`: Use busca no nível de AST quando precisar de um padrão, não de uma correspondência de string, por exemplo formas repetidas de componente ou método.
