types: ensure props are readonly

This commit is contained in:
Evan You
2019-11-09 18:40:25 -05:00
parent a5f962ab8e
commit 08bf9976ae
4 changed files with 28 additions and 15 deletions

View File

@@ -65,14 +65,8 @@ export type ExtractPropTypes<
O,
MakeDefaultRequired extends boolean = true
> = O extends object
? {
readonly [K in RequiredKeys<O, MakeDefaultRequired>]: InferPropType<O[K]>
} &
{
readonly [K in OptionalKeys<O, MakeDefaultRequired>]?: InferPropType<
O[K]
>
}
? { [K in RequiredKeys<O, MakeDefaultRequired>]: InferPropType<O[K]> } &
{ [K in OptionalKeys<O, MakeDefaultRequired>]?: InferPropType<O[K]> }
: { [K in string]: any }
const enum BooleanFlags {