type Custom = { -readonly [P in keyof A]+?: A[P]; };