Skip to content

Conversation

@arushikesarwani94
Copy link
Contributor

Summary:
Just as NumberLiteralTypeAnnotation was part of the NativeModuleBaseTypeAnnotation in Flow, adding the BooleanLiteralTypeAnnotation

NOTE: Didn't add this change for TS as both NumberLiteralTypeAnnotation was not included as part of NativeModuleBaseTypeAnnotation in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Nov 19, 2025
@meta-codesync
Copy link

meta-codesync bot commented Nov 19, 2025

@arushikesarwani94 has exported this pull request. If you are a Meta employee, you can view the originating Diff in D87392274.

Summary:

Adding NumberTypeAnnotation to the Codegen Schema in order to obtain parity with String & Boolean which will be the Union types

Changelog: [Internal]

Differential Revision: D87374063
Summary:

Adding the generic type T UnionTypeAnnotation. This will be used later to create Unions of types String, Number & Boolean.

Changelog: [Internal]

Differential Revision: D87374445
Summary:

Introduce NumberLiteralType & StringLiteralType in TypeScript just as they already exist in Flow here:

https://www.internalfb.com/code/fbsource/[9b248afa0cd5548b81dd44f1042b230e6069432b]/xplat/js/react-native-github/packages/react-native-codegen/src/CodegenSchema.js?lines=41-53

Changelog: [Internal]

Differential Revision: D87375511
Summary:
TupleTypeAnnotation is added for parity with UnionTypeAnnotation
to support future implementation. Currently limited to String and Number literals as per: https://docs.google.com/document/d/1pTBMOEIov5n5-0L9z925XPvGX1YxlmI6n6FJvd0oXtE/edit?tab=t.0#heading=h.fhe5py9plytd

Differential Revision: D87383455
Summary:

Introduce `BooleanLiteralTypeAnnotation` in Flow & TypeScript to match the existing `StringLiteralTypeAnnotation` & `NumberLiteralTypeAnnotation` since Unions will be supporting Booleans along with String & Number

Changelog: [Internal]

Differential Revision: D87384473
Summary:

Following types will be supported in Union currently:

1. Number : NumberType + NumberLiteralType
2. Boolean : BooleanType + BooleanLiteralType
3. String : StringType + StringLiteralType
4. Object: NativeModuleObjectType

These are the only ones that exist today as per : 

https://docs.google.com/document/d/1pTBMOEIov5n5-0L9z925XPvGX1YxlmI6n6FJvd0oXtE/edit?tab=t.0#heading=h.fhe5py9plytd

Changelog: [Internal]

Differential Revision: D87384995
Summary:

Adding `NumberLiteralUnionTypeAnnotation` & `BooleanLiteralUnionTypeAnnotation` to Flow & TypeScript so that they are in parity with other Union type : `StringLiteralUnionTypeAnnotation`. Number & Boolean aren't used anywhere yet.

Changelog: [Internal]

Differential Revision: D87386144
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`. Similarly adding it to the StructCollector since this is needed for Flow exhaustiveness check in generators/modules in D87410022

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
…n in Flow (facebook#54593)

Summary:
Pull Request resolved: facebook#54593

Just as `NumberLiteralTypeAnnotation` was part of the `NativeModuleBaseTypeAnnotation` in Flow, adding the `BooleanLiteralTypeAnnotation`

NOTE: Didn't add this change for TS as both `NumberLiteralTypeAnnotation` was not included as part of `NativeModuleBaseTypeAnnotation` in TS, also the generators were not failing in TS for this.

Changelog: [Internal]

Differential Revision: D87392274
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported meta-exported p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants