Files
2nd/10_Wiki/Topics_Blog/TS-Declaration-Files.md
T

32 lines
2.3 KiB
Markdown

---
id: P-REINFORCE-AUTO-TSDF-001
category: "10_Wiki/💡 Topics/AI"
confidence_score: 0.96
tags: [auto-reinforced, typescript, d-ts, declaration-files, type-definition, javascript-interop, compiler]
last_reinforced: 2026-04-20
---
# [[TS-Declaration-Files|TS-Declaration-Files]]
## 📌 한 줄 통찰 (The Karpathy Summary)
> "자바스크립트의 타입 설계도: 실제 실행 코드는 없지만, 런타임 코드의 구조와 타입을 설명하는 '.d.ts' 파일을 통해 정적 타입의 혜택을 전파하고 외부 라이브러리와의 안전한 결합을 보장하는 타입스크립트의 외교관."
## 📖 구조화된 지식 (Synthesized Content)
TypeScript 선언 파일(TS-Declaration-Files, .d.ts)은 JavaScript 코드의 형태를 TypeScript 컴파일러에 알려주기 위해 사용되는 파일입니다.
1. **주요 역할**:
* **External Library Support**: 타입 정보가 없는 JS 라이브러리를 위한 타입 정의 제공 (DefinitelyTyped).
* **Ambient Declarations**: `declare` 키워드를 사용하여 전역 변수나 모듈의 존재를 알림. (Terminology와 연결)
* **Type Sharing**: 여러 프로젝트 간에 코드 공유 없이 타입 정의만 공유 가능.
2. **왜 중요한가?**:
* 컴파일 에러를 방지하고 IDE의 자동 완성 기능을 활성화하여 개발 효율성과 코드 안정성 정책을 극대화하기 때문임. (Efficiency와 연결)
## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
- **과거 데이터와의 충돌**: 과거에는 `.d.ts` 파일을 일일이 수동으로 작성하는 정책이었으나, 현대 정책은 소스 코드로부터 자동으로 생성 정책(emitDeclarationOnly)하거나 `JSDoc`을 활용하여 타입 정책을 유도하는 방식 등으로 간소화됨(RL Update).
- **정책 변화(RL Update)**: 이제는 단순 타입 나열 정책을 넘어, 복잡한 제네릭 정책과 조건부 타입 정책을 포함하여 런타임의 복잡한 동작 정책을 컴파일 타임에 완벽하게 묘사하는 고수준 설계 도구로 진화함.
## 🔗 지식 연결 (Graph)
- [[Efficiency|Efficiency]], [[Terminology|Terminology]], [[Technical-Architecture|Technical-Architecture]], [[Standard-Operating-Procedure|Standard-Operating-Procedure]], [[Reliability|Reliability]]
- **Key Tools**: DefinitelyTyped (@types), tsc -d.
---