Skip to content

Introduce UnionTypeAnnotation for Number & Boolean#54592

Closed
arushikesarwani94 wants to merge 7 commits into
react:mainfrom
arushikesarwani94:export-D87386144
Closed

Introduce UnionTypeAnnotation for Number & Boolean#54592
arushikesarwani94 wants to merge 7 commits into
react:mainfrom
arushikesarwani94:export-D87386144

Conversation

@arushikesarwani94

Copy link
Copy Markdown
Contributor

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

@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

meta-codesync Bot commented Nov 19, 2025

Copy link
Copy Markdown

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

arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
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
arushikesarwani94 added a commit to arushikesarwani94/react-native that referenced this pull request Nov 19, 2025
Summary:
Pull Request resolved: react#54592

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
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
@react-native-bot

Copy link
Copy Markdown
Collaborator

This PR is stale because it has been open for 180 days with no activity. It will be closed in 7 days unless you comment on it or remove the "Stale" label.

@react-native-bot react-native-bot added the Stale There has been a lack of activity on this issue and it may be closed soon. label Jun 5, 2026
@react-native-bot

Copy link
Copy Markdown
Collaborator

This PR was closed because it has been stalled for 7 days with no activity.

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 Stale There has been a lack of activity on this issue and it may be closed soon.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants