ReadonlyWithUndefinedAsOptionaltstype ReadonlyWithUndefinedAsOptional<T>: { readonly [key in keyof T]?: T[key] } & { readonly [key in DefinedKeys<T>]-?: T[key] }; Type parameters Type parameterT extends object