1.6 KiB
1.6 KiB
id: P-Reinforce-TS-AMBIENT category: "10_Wiki/💡 Topics/Design & Experience" confidence_score: 0.98 tags: [TypeScript, Ambient Declarations, dts, Coding Standards] last_reinforced: 2026-04-20
Ambient-Declarations (앰비언트 선언)
📌 한 줄 통찰 (The Karpathy Summary)
"존재하지만 실체는 없는 것들에 대한 증명." 타입스크립트 컴파일러에게 "이 변수나 함수는 외부에 이미 있으니 타입만 믿고 통과시켜라"라고 알려주는
declare키워드의 본질이다.
📖 구조화된 지식 (Synthesized Content)
- declare keyword:
- 실제 컴파일된 JS 파일에는 포함되지 않지만, 타입 전용 공간에서 전역 변수나 라이브러리의 구조를 선언할 때 사용한다.
- .d.ts files:
- 앰비언트 선언들이 모여 있는 파일. 프로젝트 전체에 걸쳐 전역적인 타입 정보를 제공하는 '타입 명세서' 역할을 한다.
- External Library Integration:
- 타입 정보가 없는 레거시 JS 라이브러리를 타입스크립트 프로젝트에서 에러 없이 사용하기 위한 필수 관문이다.
⚠️ 모순 및 업데이트 (RL Update)
- 무분별한 앰비언트 선언은 전역 네임스페이스를 오염시킨다. 현대적 가이드라인은 가능하면
Module Augmentation을 사용하거나@types패키지를 통해 엄격하게 관리하는 것을 권장한다.
🔗 지식 연결 (Graph)
- Related: Declaration-Files , Module-Augmentation
- Standard: Branded-Types-for-Nominal-Typing