Skip to content
Back to skills

Typescript Advanced

ASecurity

Implement advanced TypeScript types, reusable type utilities, and compile-time contracts with generics, conditional/mapped types, and template literals. Excludes basic syntax, JavaScript, and runtime validation.

  • 2,785 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added June 5, 2026
developmentjavascripttypescriptrustjavaexpressgitapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 20, 2026

npx -y skills add compozy/compozy --skill typescript-advanced --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Typescript Advanced?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Typescript Advanced
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/compozy-typescript-advanced/badge)](https://www.skillsdirectory.com/skills/compozy-typescript-advanced)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: typescript-advanced
description: "Implement advanced TypeScript types, reusable type utilities, and compile-time contracts with generics, conditional/mapped types, and template literals. Excludes basic syntax, JavaScript, and runtime validation."
metadata:
  author: Pedro Nauck
  github: https://github.com/pedronauck
  repository: https://github.com/pedronauck/skills
---
# TypeScript Advanced Types

Use this skill when generic inference, conditional/mapped types, template literals, or a reusable type utility is the actual problem. Ordinary typed API, form, and state work uses its domain guidance unless advanced type behavior needs attention.

| Concern being changed | Reference |
| --- | --- |
| Generics, conditional/mapped/template-literal and utility types | `references/core-concepts.md` |
| Reusable emitters, builders, clients, deep utilities, or discriminated models | `references/advanced-patterns.md` |
| `infer`, narrowing, assertion functions, and type-contract tests | `references/type-inference.md` |
| Compiler configuration, type complexity, and maintainability | `references/best-practices.md` |

Prefer the simplest type that expresses the contract. Use `unknown` and real narrowing at untrusted boundaries; preserve discriminants and readonly intent. Let inference handle local values and follow repository conventions for public annotations, `interface`, and `type`.

Use the existing `tsconfig`; reference configurations are examples, not instructions to change it. Add compile-time tests only when type behavior is a product/library contract, using its owning suite. Avoid a new type framework or elaborate generic abstraction for a single ordinary call site. Run the repository's affected typecheck gate.

Files in this skill

  • SKILL.md18.6 KB
  • references/best-practices.md9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…