# TypeScript-ondersteuning in Maguyva: betere context voor monorepo's

Canonical source: https://maguyva.ai/nl/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).

Maguyva ondersteunt TypeScript met AST-parsing en symboolextractie, zodat AI-agents interfaces, implementaties, gedeelde packages en JSX-zware applicatiecode kunnen traceren in monorepo's.

## Ondersteuningsoverzicht

- Tier: AST- en symboolondersteuning
- Programmeren
- Extensies: .cts, .d.ts, .mts, .spec.ts, .stories.ts, .test.ts, +1 meer
- Echte AST-parsing voor syntaxbewust zoeken en structurele context.
- Benoemde symbolen voeden semantische lookup en kruisverwijzingen. Graafnavigatie is beschikbaar wanneer relatie-extractie is ingeschakeld.
- Deze taal draagt symbolen en relaties bij aan graafbewust zoeken; ondersteunde kanttypen variëren met de eigen constructies van de taal.
- Zowel AST-parsing als symboolextractie zijn beschikbaar.

## Beste toepassing

- Product- en platformteams die Next.js, Node-services, gedeelde packages en tooling draaien binnen één TypeScript-repo.
- Repo's waar interfaces, DTO's, schema's en React-componenten samen bewegen maar in verschillende directory's leven.
- Teams die AI-agents veilige context willen geven voordat ze gedeelde types of packagegrenzen aanraken.

## Agentworkflows

- Volg een type, interface of component van zijn definitie naar de codepaden die het daadwerkelijk gebruiken.
- Vergelijk implementaties tussen packages voordat je een gedeelde helper of API-contract wijzigt.
- Breng de waarschijnlijke impactradius in kaart van het bewerken van een gedeeld type, gedeelde utility of servicemodule.

## Waarom TypeScript-pagina's ertoe doen

TypeScript is de taal waar veel teams verwachten dat AI-ondersteunde refactoring eindelijk veilig zal aanvoelen. Het typesysteem helpt, maar het lost het echte probleem niet op: gedeelde packages, DTO's, gegenereerde clients, React-componenten, tests en appcode die allemaal van dezelfde namen afhankelijk zijn in een grote repo.

Voor TypeScript ligt de lat hoger dan "het begrijpt syntax". De agent moet het contract volgen van definitie naar implementatie naar impactradius voordat hij een gedeeld type, gedeelde hook of client bewerkt.

## Wat Maguyva daadwerkelijk extraheert in TypeScript

Maguyva extraheert classes, methods, interfaces en type aliases over `.ts`, `.mts`, `.cts` en de gangbare TypeScript-bestandsvarianten rond tests en stories. Member-prefixes worden genormaliseerd, maar class-gekwalificeerde identifiers blijven behouden, wat helpt wanneer een repo zowel een kale helpernaam als een class-scoped method met hetzelfde laatste segment heeft.

JSX wordt behandeld als een echt structureel signaal in plaats van losse markup. In geïndexeerde TypeScript-bestanden blijven tests, stories en configuratie beschikbaar naast applicatiecode, zodat een agent gebruiksvoorbeelden en instellingen kan controleren voordat hij een gedeelde component of service wijzigt.

## Nuttige MCP-workflows voor TypeScript-repo's

Drie startpatronen zijn meestal genoeg:

- Gebruik `find_symbol` als je de interface-, type alias-, hook- of servicenaam al kent.
- Gebruik `dependency_search` voordat je gedeelde types of clients wijzigt die zich mogelijk vertakken over meerdere packages.
- Gebruik `structural_search` wanneer je een codevorm nodig hebt, geen keywordmatch, bijvoorbeeld herhaalde component- of method-patronen.

Voor conceptuele vragen zoals "volg het afrekenpad bij checkout" is `get_task_context` vaak een betere eerste stap dan een ruwe zoekopdracht.

## Waar deze pagina het meest relevant is

Deze pagina is vooral relevant voor web- en platformmonorepo's waar TypeScript de coördinatielaag is voor meerdere packages. Als je repo nog veel oudere JS bevat, lees dan de [JavaScript-gids](/nl/languages/javascript). Als jouw vraag eigenlijk is "kan de agent appcode en infracontext samen vasthouden?", combineer dit dan met [Terraform](/nl/languages/terraform).

## Enginedetails

- TypeScript extraheert klassen, methoden, interfaces en type-aliassen in plaats van alles tot generieke symbolen te platslaan.
- Ledenprefixen worden verwijderd, maar klassegekwalificeerde identifiers blijven behouden, wat helpt om `CheckoutService.create` te onderscheiden van een kale `create`.
- JSX-elementen tellen als instantiaties. In geïndexeerde TypeScript-bestanden blijven tests, stories en configuratie beschikbaar als context naast applicatiecode.

## Nuttige MCP-instappunten

- `find_symbol`: Begin hier wanneer je de gedeelde interface, type-alias, hook of service kent die je wilt inspecteren.
- `dependency_search`: Gebruik dit voordat je een gedeelde DTO of client wijzigt om een realistische impactradius over pakketten heen te krijgen.
- `structural_search`: Gebruik zoeken op AST-niveau wanneer je een patroon nodig hebt in plaats van een letterlijke match, bijvoorbeeld herhaalde component- of methodevormen.
