このエントリは ドワンゴ Advent Calendar 2021 2日目の記事です(夜が明けるまでは2日目!)。
はじめに
TypeScriptには Conditional Types や Template Literal Types といったクッソ強力な型機能があります。
これらを用いて、今回は 2p3p4p2m3m4m2s3s4s4s5s6s8s8s
のような天鳳牌譜形式の文字列を型引数に渡すと、麻雀の役判定をする型(あくまで型です、関数ではありません)を作ってみようとおもいます。
(ただし時間がなかったため断么九と平和のみです)。