Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Baseline対応のDOMの型定義を作った
Search
uhyo
July 07, 2026
Technology
960
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Baseline対応のDOMの型定義を作った
2026-07-08 Nihonbashi.js #11
uhyo
July 07, 2026
More Decks by uhyo
See All by uhyo
Reactの設計論
uhyo
24
15k
型があると何が嬉しいか
uhyo
3
150
AIのReact習熟度を測る
uhyo
2
1k
React、まだ楽しくて草
uhyo
7
5.1k
TypeScript 7.0の現在地と備え方
uhyo
6
3.8k
React 19時代のコンポーネント設計ベストプラクティス
uhyo
20
11k
型定義でAIと会話する:型を通じてAIに意図を伝えるテクニック
uhyo
1
120
タグ付きユニオン型を便利に使うテクニックとその注意点
uhyo
3
1.2k
ECMAScript仕様の最新動向: プロセスの変化と仕様のトレンド
uhyo
3
980
Other Decks in Technology
See All in Technology
AIエージェントの権限管理 3: Agentic RAG の Fine grained access control 編
ren8k
1
270
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
160
音声コミュニティを守るAI監視基盤_ 90%以上の入力削減を支えたServerless設計と運用判断
shuheioka123
0
110
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
2.5k
高負荷プロダクション環境におけるAWS Lambdaのリアル 〜スケールとコストを左右する実行ライフサイクルの技術仕様〜
maimyyym
2
620
AIに賢く動いてもらうためのコンテキスト〜Snowflake女子会 vol.8
snowwmn0824
0
180
人にやさしく、AIにやさしく、書き手を選ばないIaCのガードレール再考 / Rethinking IaC Guardrails for Humans and AI Alike
kohbis
5
1.2k
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
1
200
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
310
2026-09-08 そのJavaモダナイゼーション、AIに丸投げで大丈夫?IBM Bobで変わる品質と効率
yutanonaka
1
200
C#未経験の僕がAIに読めるコードを書かせるまで
maguroalternative
0
300
事業課題から技術的負債に向き合う
sansantech
PRO
2
2.4k
Featured
See All Featured
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
530
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
510
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Skip the Path - Find Your Career Trail
mkilby
1
240
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
440
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
2k
The Spectacular Lies of Maps
axbom
PRO
1
1k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
470
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Transcript
Baseline対応のDOMの 型定義を作った 2026-07-08 Nihonbashi.js #11
発表者紹介 uhyo 株式会社カオナビ フロントエンドエキスパート 実はTypeScriptに詳しい。 2
Baselineとは ウェブ機能を、ブラウザサポート状況によって 分類するもの Baseline Newly available = 全てのブラウザで利用可能 Baseline Widely
available = 全てのブラウザで利用可能 になってから30ヶ月が経過 3
固定ターゲット Baseline 2023 = 2023年までにNewly availableに なった機能 Baseline 2024, Baseline
2025, …… 4
開発でよくある推奨環境の決め方 •推奨環境: 各ブラウザの最新版 = Baseline Newly Available に対応 •より広くサポートしたい(大抵はiOS) =
Baseline Widely Available やBaseline 2024 などを使用 5
型チェックしたい 例: Baseline Widely Availableではない機能を 使おうとしたら型エラーになってほしい。 (eslint-plugin-baseline-jsもあるけど型情報が必要な野良プラグインは 今ちょっと辛い立ち位置) 6
@baseline-types/dom-widely-available TypeScript本体のLib Replacement機能を使用 して、DOMの型定義をBaseline Widely Available に合わせたライブラリを作りました。 7
導入方法 8 @baseline-types/dom-widely-availableを、 @typescript/lib-domという名前でインストール。
導入方法 9 tsconfig.jsonでlibReplacementを有効化。 これにより@typescript/lib-domが認識される ようになる。
結果 Newly Availableなメソッドを使うと型エラーが出 るようになった! 10
バリエーション @baseline-types/dom-widely-available @baseline-types/dom-newly-available @baseline-types/dom-2022 @baseline-types/dom-2023 @baseline-types/dom-2024 @baseline-types/dom-2025 11
バリエーション @baseline-types/dom-newly-available に変えると 型エラーが消えるぞ! 12
仕組み TypeScriptのTypeScript-DOM-Lib-Generatorを フォーク。 すでにあるもの: WebIDLから型定義を生成 作ったもの: 型をBaselineの情報を使ってフィルタ リングする仕組み https://github.com/uhyo/TypeScript-Baseline-Types 13
週1自動更新 毎週自動更新で最新のBaseline情報をお届け。 バージョン名に日付を含めたのでいつ時点の 情報か分かりやすい! 14
今後の展望 全部AIにやってもらったので若干フィルタリング 結果が怪しいときがある。引き続き調整します。 DOM以外(ECMAScript)のBaseline対応も したら面白そうだけど全然違う仕組みが必要に…… 15
まとめ @baseline-types/dom-widely-availableとかを 使って型でBaseline対応しよう! 16