Template Literal Types로 타입 안전하게 코딩하기
박서진 토스 · 토스 기술 블로그
AI 핵심 요약
TypeScript 4.1의 Template Literal Type은 문자열 리터럴 타입을 조합해 이벤트 핸들러 이름이나 정렬 방향 조합처럼 반복되는 타입 정의를 자동으로 만들 수 있습니다. 글은 Union 타입, Capitalize와 매핑 타입을 활용해 이벤트 이름 한 곳만 수정해도 관련 핸들러 타입이 함께 바뀌도록 구성하는 방법을 보여줍니다. Conditional Type과 infer, 재귀 타입을 결합하면 문자열의 접두사·공백을 처리하거나 점으로 연결된 경로를 튜플로 나눌 수 있습니다. 이를 객체 경로의 값 타입을 찾는 ValueOf와 조합하면 lodash.set()의 입력값까지 타입 안전하게 검사할 수 있으며, JSON 파싱이나 DOM 선택자 타입 추론 같은 응용 가능성도 소개합니다.
- Template Literal Type은 문자열 리터럴 타입을 조합해 새로운 타입을 만들며, Union 타입과 결합하면 가능한 조합을 자동으로 생성합니다.
- Capitalize 같은 내장 타입과 매핑 타입을 함께 쓰면 이벤트 이름에서 핸들러 이름을 파생해 중복 정의를 줄일 수 있습니다.
- Conditional Type의 infer로 타입 일부를 추출하고, 재귀 타입으로 문자열을 자르거나 튜플을 변환할 수 있습니다.
- 경로 문자열을 Split으로 나누고 ValueOf로 객체를 따라가면 깊은 프로퍼티를 다루는 함수의 값 타입을 추론할 수 있습니다.
소개
TypeScript 코드베이스의 타입 안전성을 한 단계 올려줄 수 있는 Template Literal Type의 뜻과 응용에 대해 알아봅니다.
비슷한 학습 자료
컨퍼런스 엔지니어링데이 2025
infer, never만 보면 두려워지는 당신을 위한 고급 TypeScript
컨퍼런스 엔지니어링데이 2025
네이버 사내 기술 교류 행사인 NAVER ENGINEERING DAY 2024(5월)에서 발표되었던 세션을 공개합니다. [발표 내용] TypeScript의 타입 추론 원리를 타입 이론과 순서론에 근거하여 학습 실전 라이브러리 개발에서 풀 법한 문제 풀이 [대상] TypeScript 고급 사용자 라이브러리 개발 / 오픈소스 참여 등을 생각하시는 분 [기초 / 고급 / 응용] 00:00 ~ 31:09 기초타입이론 32:29 ~ 46:05 고급타입추론 46:06 ~ 1:12:03 응용문제
웹 개발 프로그래밍 언어
문서 강현구
Transpiler, “사용”말고 “활용”하기
문서 박서진
선언적인 코드 작성하기
컨퍼런스 INFCON 2024
멀티패러다임 프로그래밍 언어의 시대: 객체지향과 함수형을 섞어야할 때!│인프콘2024
컨퍼런스 INFCON 2024
🌱 인프런 에서 인프콘2024 강의 자료 다운로드 받고 복습해보세요. 🩵 강의 자료 다운 받기 : https://u.inf.run/4cLhYyK 🌱 인프런과 함께 배우고, 나누고, 성장하세요. 🩵 멀티패러다임 프로그래밍 언어의 시대: 객체지향과 함수형을 섞어야할 때! - 유인동 함수형, 객체지향 패러다임을 모두 제공하는 멀티패러다임 언어를 효율적으로 사용하는 법 - 타입스크립트로 Tagged Templates를 만들면서 멀티패러다임 개발 패턴을 소개합니다. #인프콘 #인프런 #인프콘2024 #인프콘2024다시보기
프로그래밍 언어