Files
2nd/10_Wiki/Topics/Declaration-Files.md
T

1.6 KiB

id, category, confidence_score, tags, last_reinforced
id category confidence_score tags last_reinforced
P-REINFORCE-AI-DECLARATION-FILES 10_Wiki/💡 Topics/AI 0.99
TypeScript
JavaScript
DeclarationFiles
Tooling
2026-04-20

Declaration-Files (선언 파일, .d.ts)

📌 한 줄 통찰 (The Karpathy Summary)

"자바스크립트라는 원석에 타입이라는 주석을 입히는 투명 필름." 구현(Implementation)은 없이 오직 타입 정보(Signature)만 포함하여, 타입스크립트가 JS 코드를 이해하고 자동 완성을 제공하게 돕는 매뉴얼이다.

📖 구조화된 지식 (Synthesized Content)

  • Extension: .d.ts (d는 declaration의 약자).
  • Core Role:
    • Bridge: 컴파일된 JS 파일 옆에서 해당 코드의 타입을 설명함.
    • Library Support: 직접 TS로 쓰이지 않은 NPM 패키지들에 타입을 부여함.
    • Ambient Declarations: windowprocess 같은 전역 객체에 타입을 추가하는 용도.
  • Compiler behavior: 런타임에는 아무런 영향을 주지 않으며, 오직 '에디터'와 '컴파일 타임'의 안정성만을 위해 존재한다.

⚠️ 모순 및 업데이트 (RL Update)

  • 선언 파일과 실제 JS 코드가 불일치(Out-of-sync)할 때 발생하는 '거짓 안전(False sense of security)'이 가장 위험하다. 이를 방지하기 위해 라이브러리 제작자는 tsc를 통해 구현부에서 타입을 자동 추출(emitDeclarationOnly)하는 방식을 지향해야 한다.

🔗 지식 연결 (Graph)

  • Related: DefinitelyTyped , TypeScript-Type-System
  • Practice: Publishing-Dual-CJS-ESM-Packages