この解答例はChatGPTによって生成されています,正しいかは自己判断で。 皆の投稿からも解答例が見つかるかもしれませんよ。
BFE.devでのAI解答例 - TypeScript タイプパズル
3. Readonly<T> を実装する
type MyReadonly<T> = { readonly [P in keyof T]: T[P]}
MyReadonly
は、T
の全てのプロパティにreadonly
修飾子を付けた新しい型を作成します。[P in keyof T]
は、T
のプロパティに対応するプロパティを繰り返し処理します。readonly
修飾子は、プロパティが読み取り専用であることを示します。元の型情報はそのまま保持されており、プロパティの型、オプション等はそのままコピーされます。