Skip to content

Commit 7898fd5

Browse files
committed
chore: stricter checks for transforms
1 parent 06668fc commit 7898fd5

File tree

1 file changed

+19
-15
lines changed

1 file changed

+19
-15
lines changed

packages/react-native/Libraries/StyleSheet/StyleSheetTypes.d.ts

+19-15
Original file line numberDiff line numberDiff line change
@@ -173,23 +173,27 @@ interface MatrixTransform {
173173
matrix: AnimatableNumericValue[];
174174
}
175175

176+
type MaximumOneOf<T, K extends keyof T = keyof T> = K extends keyof T
177+
? {[P in K]: T[K]} & {[P in Exclude<keyof T, K>]?: never}
178+
: never;
179+
176180
export interface TransformsStyle {
177181
transform?:
178-
| (
179-
| PerpectiveTransform
180-
| RotateTransform
181-
| RotateXTransform
182-
| RotateYTransform
183-
| RotateZTransform
184-
| ScaleTransform
185-
| ScaleXTransform
186-
| ScaleYTransform
187-
| TranslateXTransform
188-
| TranslateYTransform
189-
| SkewXTransform
190-
| SkewYTransform
191-
| MatrixTransform
192-
)[]
182+
| MaximumOneOf<
183+
PerpectiveTransform &
184+
RotateTransform &
185+
RotateXTransform &
186+
RotateYTransform &
187+
RotateZTransform &
188+
ScaleTransform &
189+
ScaleXTransform &
190+
ScaleYTransform &
191+
TranslateXTransform &
192+
TranslateYTransform &
193+
SkewXTransform &
194+
SkewYTransform &
195+
MatrixTransform
196+
>[]
193197
| string
194198
| undefined;
195199
/**

0 commit comments

Comments
 (0)