사용 코드 작성
실제 import와 호출 예시를 먼저 고정한다.
앰비언트 선언은 컴파일러와 맺는 약속이다. 모듈 이름, export 형태, 와일드카드 범위가 실제 실행 코드와 다르면 타입 안전성이 아니라 숨은 버그가 된다.
실제 import와 호출 예시를 먼저 고정한다.
필요한 함수, 값, 확장자만 좁게 연다.
`tsc --noEmit`과 자동 완성 결과를 같이 본다.
실행 시 없는 export를 타입으로 만들지 않는다.
import 문자열과 정확히 일치
패키지명, 경로 별칭, 확장자 누락
실제 import 줄을 복사해 선언 이름과 비교한다.
export default value export function run()
default와 named를 타입에서만 바꿈
런타임 객체 키와 선언 파일을 대조한다.
필요한 확장자만 포함
`*`나 넓은 any로 전부 허용
확장자별 import 결과를 샘플 코드로 확인한다.
Window, namespace를 최소로 확장
전역 이름 충돌과 암묵적 의존
스크립트 로딩 위치와 전역 존재 여부를 확인한다.
타입 표면은 맞지만 런타임 값은 아직 별도 확인이 필요하다.
IDE 힌트가 실제 API와 같은지 샘플 호출로 확인한다.
선언이 너무 넓지 않은지 any와 와일드카드를 다시 좁힌다.