I have a type State in which all fields are required: I need to create a new type with all properties the same as in State but not required: How can I implement this similarly to the following Flow pseudocode? Answer You can use $Shape utility: $Shape Copies the shape of the type supplied, but marks every field optional.