ambient QA

선언 파일은 실제 런타임 표면과 대조해야 한다

앰비언트 선언은 컴파일러와 맺는 약속이다. 모듈 이름, export 형태, 와일드카드 범위가 실제 실행 코드와 다르면 타입 안전성이 아니라 숨은 버그가 된다.

01

사용 코드 작성

실제 import와 호출 예시를 먼저 고정한다.

02

표면만 선언

필요한 함수, 값, 확장자만 좁게 연다.

03

타입 검사

`tsc --noEmit`과 자동 완성 결과를 같이 본다.

04

런타임 대조

실행 시 없는 export를 타입으로 만들지 않는다.

모듈 이름

import 문자열과 정확히 일치

패키지명, 경로 별칭, 확장자 누락

실제 import 줄을 복사해 선언 이름과 비교한다.

export 형태
export default value
export function run()

default와 named를 타입에서만 바꿈

런타임 객체 키와 선언 파일을 대조한다.

와일드카드

필요한 확장자만 포함

`*`나 넓은 any로 전부 허용

확장자별 import 결과를 샘플 코드로 확인한다.

전역 선언

Window, namespace를 최소로 확장

전역 이름 충돌과 암묵적 의존

스크립트 로딩 위치와 전역 존재 여부를 확인한다.

컴파일 통과

타입 표면은 맞지만 런타임 값은 아직 별도 확인이 필요하다.

자동 완성 정상

IDE 힌트가 실제 API와 같은지 샘플 호출로 확인한다.

런타임 성공

선언이 너무 넓지 않은지 any와 와일드카드를 다시 좁힌다.