基本的にはimmutability-helperとかlodash.setとか好きに使えばいいと思いますが、TypeSafeかつComposableにやりたいという場合のためにLensを試して見ます。 ScalaのLensライブラリであるmonocleのts版(monocle-ts)を使ってみます。 Lensとは? 以下のようにネストしたobjectをいい感じに取得したり更新できるものです。 const employee: Employee = { name: 'john', company: { name: 'awesome inc', address: { city: 'london', street: { num: 23, name: 'high street' } } } }