この解答例はChatGPTによって生成されています,正しいかは自己判断で。

BFE.devでのAI解答例 - TypeScript タイプパズル
38. implement Add<A, B>

解答例:

type Add<A extends number, B extends number> = A + B;

ここで、Add<A, B>は type alias です。 これにより、ジェネリック型ABに number 型の制限がかかります。 Addは、それらを含む 2 つの数字を足し合わせます。

そして、1 + 2 は 3 を返し、0 + 0 は 0 を返すため、出力の型 A は 3 で、 B は 0 です。

このように、型のジェネリックな制約を活用することで、TypeScript で複雑な演算を行うことができます。