From a54248c360237c669a028315b505803b7f0e7923 Mon Sep 17 00:00:00 2001 From: Richard Date: Fri, 8 Sep 2023 17:50:11 -0700 Subject: [PATCH] Remove intersections in instance props --- src/types.luau | 1632 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 1388 insertions(+), 244 deletions(-) diff --git a/src/types.luau b/src/types.luau index 3f5b47a..48fef92 100644 --- a/src/types.luau +++ b/src/types.luau @@ -1,14 +1,31 @@ -if not game then - script = require("test/relative-string") -end - type Prop = T? | () -> T? -- Creatable instances -export type FolderProps = InstanceProps +export type FolderProps = { + [any]: any, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type BillboardGuiProps = { + [any]: any, + + -- BillboardGui -export type BillboardGuiProps = LayerCollectorProps & { Active: Prop, Adornee: Prop, AlwaysOnTop: Prop, @@ -26,231 +43,27 @@ export type BillboardGuiProps = LayerCollectorProps & { SizeOffset: Prop, StudsOffset: Prop, StudsOffsetWorldSpace: Prop, -} -export type CanvasGroupProps = GuiObjectProps & { - GroupColor3: Prop, - GroupTransparency: Prop, -} + -- LayerCollector -export type FrameProps = GuiObjectProps & { - Style: Prop, -} - -export type ImageButtonProps = GuiButtonProps & ImageProps & { - HoverImage: Prop, - PressedImage: Prop, -} - -export type ImageLabelProps = GuiObjectProps & ImageProps - -export type ScreenGuiProps = LayerCollectorProps & { - ClipToDeviceSafeArea: Prop, - DisplayOrder: Prop, - IgnoreGuiInset: Prop, - SafeAreaCompatibilityMode: Prop, - ScreenInsets: Prop, -} - -export type ScrollingFrameProps = GuiObjectProps & { - AutomaticCanvasSize: Prop, - BottomImage: Prop, - CanvasPosition: Prop, - CanvasSize: Prop, - ElasticBehavior: Prop, - HorizontalScrollBarInset: Prop, - MidImage: Prop, - ScrollBarImageColor3: Prop, - ScrollBarImageTransparency: Prop, - ScrollBarThickness: Prop, - ScrollingDirection: Prop, - ScrollingEnabled: Prop, - TopImage: Prop, - VerticalScrollBarInset: Prop, - VerticalScrollBarPosition: Prop, -} - -export type SurfaceGuiProps = LayerCollectorProps & { - Active: Prop, - Adornee: Prop, - AlwaysOnTop: Prop, - Brightness: Prop, - CanvasSize: Prop, - ClipsDescendants: Prop, - Face: Prop, - LightInfluence: Prop, - MaxDistance: Prop, - PixelsPerStud: Prop, - SizingMode: Prop, - ToolPunchThroughDistance: Prop, - ZOffset: Prop, -} - -export type TextLabelProps = GuiObjectProps & TextProps - -export type TextButtonProps = GuiButtonProps & TextProps - -export type TextBoxProps = GuiObjectProps & TextProps & { - ClearTextOnFocus: Prop, - CursorPosition: Prop, - MultiLine: Prop, - PlaceholderColor3: Prop, - PlaceholderText: Prop, - SelectionStart: Prop, - ShowNativeInput: Prop, - TextEditable: Prop, - - FocusLost: ((enterPressed: boolean, inputThatCausedFocusLoss: InputObject) -> ())?, - Focused: (() -> ())?, - ReturnPressedFromOnScreenKeyboard: (() -> ())?, -} - -export type VideoFrameProps = GuiObjectProps & { - Looped: Prop, - Playing: Prop, - TimePosition: Prop, - Video: Prop, - Volume: Prop, - - DidLoop: ((video: string) -> ())?, - Ended: ((video: string) -> ())?, - Loaded: ((video: string) -> ())?, - Paused: ((video: string) -> ())?, - Played: ((video: string) -> ())?, -} - -export type ViewportFrameProps = GuiObjectProps & { - Ambient: Prop, - CurrentCamera: Prop, - ImageColor3: Prop, - ImageTransparency: Prop, - LightColor: Prop, - LightDirection: Prop, -} - --- Creatable UI modifiers - -export type UIAspectRatioConstraintProps = InstanceProps & { - AspectRatio: Prop, - AspectType: Prop, - DominantAxis: Prop, -} - -export type UICornerProps = InstanceProps & { - CornerRadius: Prop, -} - -export type UIGradientProps = InstanceProps & { - Color: Prop, Enabled: Prop, - Offset: Prop, - Rotation: Prop, - Transparency: Prop, -} + ResetOnSpawn: Prop, + ZIndexBehavior: Prop, -export type UIGridLayoutProps = UIGridStyleLayoutProps & { - CellPadding: Prop, - CellSize: Prop, - FillDirectionMaxCells: Prop, - StartCorner: Prop, -} + -- GuiBase2d -export type UIListLayoutProps = UIGridStyleLayoutProps & { - Padding: Prop, -} + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, -export type UIPaddingProps = InstanceProps & { - PaddingBottom: Prop, - PaddingLeft: Prop, - PaddingRight: Prop, - PaddingTop: Prop, -} + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, -export type UIPageLayoutProps = UIGridStyleLayoutProps & { - Animated: Prop, - Circular: Prop, - EasingDirection: Prop, - EasingStyle: Prop, - GamepadInputEnabled: Prop, - Padding: Prop, - ScrollWheelInputEnabled: Prop, - TouchInputEnabled: Prop, - TweenTime: Prop, - - PageEnter: ((page: any) -> ())?, - PageLeave: ((page: any) -> ())?, - Stopped: ((currentPage: any) -> ())?, -} - -export type UIScaleProps = InstanceProps & { - Scale: Prop, -} - -export type UISizeConstraintProps = InstanceProps & { - MaxSize: Prop, - MinSize: Prop, -} - -export type UIStrokeProps = InstanceProps & { - ApplyStrokeMode: Prop, - Color: Prop, - Enabled: Prop, - LineJoinMode: Prop, - Thickness: Prop, - Transparency: Prop, -} - -export type UITableLayoutProps = UIGridStyleLayoutProps & { - FillEmptySpaceColumns: Prop, - FillEmptySpaceRows: Prop, - MajorAxis: Prop, - Padding: Prop, -} - -export type UITextSizeConstraintProps = InstanceProps & { - MaxTextSize: Prop, - MinTextSize: Prop, -} - --- Helpers - -type ImageProps = { - Image: Prop, - ImageColor3: Prop, - ImageRectOffset: Prop, - ImageRectSize: Prop, - ImageTransparency: Prop, - ResampleMode: Prop, - ScaleType: Prop, - SliceCenter: Prop, - SliceScale: Prop, - TileSize: Prop, -} - -type TextProps = { - Font: Prop, - FontFace: Prop, - LineHeight: Prop, - MaxVisibleGraphemes: Prop, - RichText: Prop, - Text: Prop, - TextColor3: Prop, - TextDirection: Prop, - TextScaled: Prop, - TextSize: Prop, - TextStrokeColor3: Prop, - TextStrokeTransparency: Prop, - TextTransparency: Prop, - TextTruncate: Prop, - TextWrapped: Prop, - TextXAlignment: Prop, - TextYAlignment: Prop, -} - --- Base instance types - -type InstanceProps = { - [any]: any, + -- Instance Archivable: Prop, Name: Prop, @@ -266,27 +79,16 @@ type InstanceProps = { Destroying: (() -> ())?, } -type GuiBase2dProps = InstanceProps & { - AutoLocalize: Prop, - Localize: Prop, - RootLocalizationTable: Prop, - SelectionBehaviorDown: Prop, - SelectionBehaviorLeft: Prop, - SelectionBehaviorRight: Prop, - SelectionBehaviorUp: Prop, - SelectionGroup: Prop, +export type CanvasGroupProps = { + [any]: any, - SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, -} + -- CanvasGroup -type UIGridStyleLayoutProps = InstanceProps & { - FillDirection: Prop, - HorizontalAlignment: Prop, - SortOrder: Prop, - VerticalAlignment: Prop, -} + GroupColor3: Prop, + GroupTransparency: Prop, + + -- GuiObject -type GuiObjectProps = GuiBase2dProps & { Active: Prop, AnchorPoint: Prop, AutomaticSize: Prop, @@ -333,15 +135,639 @@ type GuiObjectProps = GuiBase2dProps & { TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, } -type LayerCollectorProps = GuiBase2dProps & { +export type FrameProps = { + [any]: any, + + -- Frame + + Style: Prop, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type ImageButtonProps = { + [any]: any, + + -- ImageButton + + HoverImage: Prop, + PressedImage: Prop, + + -- ImageLabel + + Image: Prop, + ImageColor3: Prop, + ImageRectOffset: Prop, + ImageRectSize: Prop, + ImageTransparency: Prop, + ResampleMode: Prop, + ScaleType: Prop, + SliceCenter: Prop, + SliceScale: Prop, + TileSize: Prop, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type ImageLabelProps = { + [any]: any, + + -- ImageLabel + + Image: Prop, + ImageColor3: Prop, + ImageRectOffset: Prop, + ImageRectSize: Prop, + ImageTransparency: Prop, + ResampleMode: Prop, + ScaleType: Prop, + SliceCenter: Prop, + SliceScale: Prop, + TileSize: Prop, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type ScreenGuiProps = { + [any]: any, + + -- ScreenGui + + ClipToDeviceSafeArea: Prop, + DisplayOrder: Prop, + IgnoreGuiInset: Prop, + SafeAreaCompatibilityMode: Prop, + ScreenInsets: Prop, + + -- LayerCollector + Enabled: Prop, ResetOnSpawn: Prop, ZIndexBehavior: Prop, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, } -type GuiButtonProps = GuiObjectProps & { +export type ScrollingFrameProps = { + [any]: any, + + -- ScrollingFrame + + AutomaticCanvasSize: Prop, + BottomImage: Prop, + CanvasPosition: Prop, + CanvasSize: Prop, + ElasticBehavior: Prop, + HorizontalScrollBarInset: Prop, + MidImage: Prop, + ScrollBarImageColor3: Prop, + ScrollBarImageTransparency: Prop, + ScrollBarThickness: Prop, + ScrollingDirection: Prop, + ScrollingEnabled: Prop, + TopImage: Prop, + VerticalScrollBarInset: Prop, + VerticalScrollBarPosition: Prop, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type SurfaceGuiProps = { + [any]: any, + + -- SurfaceGui + + Active: Prop, + Adornee: Prop, + AlwaysOnTop: Prop, + Brightness: Prop, + CanvasSize: Prop, + ClipsDescendants: Prop, + Face: Prop, + LightInfluence: Prop, + MaxDistance: Prop, + PixelsPerStud: Prop, + SizingMode: Prop, + ToolPunchThroughDistance: Prop, + ZOffset: Prop, + + -- LayerCollector + + Enabled: Prop, + ResetOnSpawn: Prop, + ZIndexBehavior: Prop, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type TextLabelProps = { + [any]: any, + + -- TextLabel + + Font: Prop, + FontFace: Prop, + LineHeight: Prop, + MaxVisibleGraphemes: Prop, + RichText: Prop, + Text: Prop, + TextColor3: Prop, + TextDirection: Prop, + TextScaled: Prop, + TextSize: Prop, + TextStrokeColor3: Prop, + TextStrokeTransparency: Prop, + TextTransparency: Prop, + TextTruncate: Prop, + TextWrapped: Prop, + TextXAlignment: Prop, + TextYAlignment: Prop, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type TextButtonProps = { + [any]: any, + + -- TextButton + + Font: Prop, + FontFace: Prop, + LineHeight: Prop, + MaxVisibleGraphemes: Prop, + RichText: Prop, + Text: Prop, + TextColor3: Prop, + TextDirection: Prop, + TextScaled: Prop, + TextSize: Prop, + TextStrokeColor3: Prop, + TextStrokeTransparency: Prop, + TextTransparency: Prop, + TextTruncate: Prop, + TextWrapped: Prop, + TextXAlignment: Prop, + TextYAlignment: Prop, + + -- GuiButton + AutoButtonColor: Prop, Modal: Prop, Selected: Prop, @@ -354,6 +780,724 @@ type GuiButtonProps = GuiObjectProps & { MouseButton2Click: (() -> ())?, MouseButton2Down: ((x: number, y: number) -> ())?, MouseButton2Up: ((x: number, y: number) -> ())?, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type TextBoxProps = { + [any]: any, + + -- TextBox + + ClearTextOnFocus: Prop, + CursorPosition: Prop, + MultiLine: Prop, + PlaceholderColor3: Prop, + PlaceholderText: Prop, + SelectionStart: Prop, + ShowNativeInput: Prop, + TextEditable: Prop, + + FocusLost: ((enterPressed: boolean, inputThatCausedFocusLoss: InputObject) -> ())?, + Focused: (() -> ())?, + ReturnPressedFromOnScreenKeyboard: (() -> ())?, + + -- TextLabel + + Font: Prop, + FontFace: Prop, + LineHeight: Prop, + MaxVisibleGraphemes: Prop, + RichText: Prop, + Text: Prop, + TextColor3: Prop, + TextDirection: Prop, + TextScaled: Prop, + TextSize: Prop, + TextStrokeColor3: Prop, + TextStrokeTransparency: Prop, + TextTransparency: Prop, + TextTruncate: Prop, + TextWrapped: Prop, + TextXAlignment: Prop, + TextYAlignment: Prop, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type VideoFrameProps = { + [any]: any, + + -- VideoFrame + + Looped: Prop, + Playing: Prop, + TimePosition: Prop, + Video: Prop, + Volume: Prop, + + DidLoop: ((video: string) -> ())?, + Ended: ((video: string) -> ())?, + Loaded: ((video: string) -> ())?, + Paused: ((video: string) -> ())?, + Played: ((video: string) -> ())?, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type ViewportFrameProps = { + [any]: any, + + -- ViewportFrame + + Ambient: Prop, + CurrentCamera: Prop, + ImageColor3: Prop, + ImageTransparency: Prop, + LightColor: Prop, + LightDirection: Prop, + + -- GuiObject + + Active: Prop, + AnchorPoint: Prop, + AutomaticSize: Prop, + BackgroundColor3: Prop, + BackgroundTransparency: Prop, + BorderColor3: Prop, + BorderMode: Prop, + BorderSizePixel: Prop, + ClipsDescendants: Prop, + Interactable: Prop, + LayoutOrder: Prop, + NextSelectionDown: Prop, + NextSelectionLeft: Prop, + NextSelectionRight: Prop, + NextSelectionUp: Prop, + Position: Prop, + Rotation: Prop, + Selectable: Prop, + SelectionImageObject: Prop, + SelectionOrder: Prop, + Size: Prop, + SizeConstraint: Prop, + Visible: Prop, + ZIndex: Prop, + + InputBegan: ((input: InputObject) -> ())?, + InputChanged: ((input: InputObject) -> ())?, + InputEnded: ((input: InputObject) -> ())?, + MouseEnter: ((x: number, y: number) -> ())?, + MouseLeave: ((x: number, y: number) -> ())?, + MouseMoved: ((x: number, y: number) -> ())?, + MouseWheelBackward: ((x: number, y: number) -> ())?, + MouseWheelForward: ((x: number, y: number) -> ())?, + SelectionGained: (() -> ())?, + SelectionLost: (() -> ())?, + TouchLongPress: ((touchPositions: { Vector2 }, state: Enum.UserInputState) -> ())?, + TouchPan: (( + touchPositions: { Vector2 }, + totalTranslation: Vector2, + velocity: Vector2, + state: Enum.UserInputState + ) -> ())?, + TouchPinch: ((touchPositions: { Vector2 }, scale: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchRotate: ((touchPositions: { Vector2 }, rotation: number, velocity: number, state: Enum.UserInputState) -> ())?, + TouchSwipe: ((swipeDirection: Enum.SwipeDirection, numberOfTouches: number) -> ())?, + TouchTap: ((touchPositions: { Vector2 }) -> ())?, + + -- GuiBase2d + + AutoLocalize: Prop, + Localize: Prop, + RootLocalizationTable: Prop, + SelectionBehaviorDown: Prop, + SelectionBehaviorLeft: Prop, + SelectionBehaviorRight: Prop, + SelectionBehaviorUp: Prop, + SelectionGroup: Prop, + + SelectionChanged: ((amISelected: boolean, previousSelection: GuiObject, newSelection: GuiObject) -> ())?, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +-- Creatable UI modifiers + +export type UIAspectRatioConstraintProps = { + [any]: any, + + -- UIAspectRatioConstraint + + AspectRatio: Prop, + AspectType: Prop, + DominantAxis: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UICornerProps = { + [any]: any, + + -- UICorner + + CornerRadius: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UIGradientProps = { + [any]: any, + + -- UIGradient + + Color: Prop, + Enabled: Prop, + Offset: Prop, + Rotation: Prop, + Transparency: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UIGridLayoutProps = { + [any]: any, + + -- UIGridLayout + + CellPadding: Prop, + CellSize: Prop, + FillDirectionMaxCells: Prop, + StartCorner: Prop, + + -- UIGridStyleLayout + + FillDirection: Prop, + HorizontalAlignment: Prop, + SortOrder: Prop, + VerticalAlignment: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UIListLayoutProps = { + [any]: any, + + -- UIListLayout + + Padding: Prop, + + -- UIGridStyleLayout + + FillDirection: Prop, + HorizontalAlignment: Prop, + SortOrder: Prop, + VerticalAlignment: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UIPaddingProps = { + [any]: any, + + -- UIPadding + + PaddingBottom: Prop, + PaddingLeft: Prop, + PaddingRight: Prop, + PaddingTop: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UIPageLayoutProps = { + [any]: any, + + -- UIPageLayout + + Animated: Prop, + Circular: Prop, + EasingDirection: Prop, + EasingStyle: Prop, + GamepadInputEnabled: Prop, + Padding: Prop, + ScrollWheelInputEnabled: Prop, + TouchInputEnabled: Prop, + TweenTime: Prop, + + PageEnter: ((page: any) -> ())?, + PageLeave: ((page: any) -> ())?, + Stopped: ((currentPage: any) -> ())?, + + -- UIGridStyleLayout + + FillDirection: Prop, + HorizontalAlignment: Prop, + SortOrder: Prop, + VerticalAlignment: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UIScaleProps = { + [any]: any, + + -- UIScale + + Scale: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UISizeConstraintProps = { + [any]: any, + + -- UISizeConstraint + + MaxSize: Prop, + MinSize: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UIStrokeProps = { + [any]: any, + + -- UIStroke + + ApplyStrokeMode: Prop, + Color: Prop, + Enabled: Prop, + LineJoinMode: Prop, + Thickness: Prop, + Transparency: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UITableLayoutProps = { + [any]: any, + + -- UITableLayout + + FillEmptySpaceColumns: Prop, + FillEmptySpaceRows: Prop, + MajorAxis: Prop, + Padding: Prop, + + -- UIGridStyleLayout + + FillDirection: Prop, + HorizontalAlignment: Prop, + SortOrder: Prop, + VerticalAlignment: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, +} + +export type UITextSizeConstraintProps = { + [any]: any, + + -- UITextSizeConstraint + + MaxTextSize: Prop, + MinTextSize: Prop, + + -- Instance + + Archivable: Prop, + Name: Prop, + Parent: Prop, + + AncestryChanged: ((child: Instance, parent: Instance?) -> ())?, + AttributeChanged: ((attribute: string) -> ())?, + Changed: ((property: string) -> ())?, + ChildAdded: ((child: Instance) -> ())?, + ChildRemoved: ((child: Instance) -> ())?, + DescendantAdded: ((descendant: Instance) -> ())?, + DescendantRemoving: ((descendant: Instance) -> ())?, + Destroying: (() -> ())?, } return nil