///
import Roact from "./index";
type Defaultize
= P extends any
? string extends keyof P
? P
: Pick
> &
Partial>> &
Partial>>
: never;
type JsxChild =
| boolean
| Roact.Element
| ReadonlyArray
| ReadonlyMap
| undefined;
type JsxNode = JsxChild | JsxChild[];
declare global {
namespace JSX {
type Element = Roact.Element;
interface ElementClass {
render(): Roact.Element | undefined;
}
interface ElementChildrenAttribute {
_jsx_children: {};
}
interface IntrinsicAttributes extends Roact.PropsWithChildren {
Key?: string | number;
_jsx_children?: JsxNode;
}
interface IntrinsicClassAttributes extends Roact.PropsWithChildren {}
type LibraryManagedAttributes = C extends { defaultProps: infer D } ? Defaultize : P;
type IntrinsicElement = Roact.JsxInstance & IntrinsicAttributes;
interface IntrinsicElements {
billboardgui: IntrinsicElement;
camera: IntrinsicElement;
canvasgroup: IntrinsicElement;
frame: IntrinsicElement;
imagebutton: IntrinsicElement;
imagelabel: IntrinsicElement;
screengui: IntrinsicElement;
scrollingframe: IntrinsicElement;
surfacegui: IntrinsicElement;
textbox: IntrinsicElement;
textbutton: IntrinsicElement;
textlabel: IntrinsicElement;
uiaspectratioconstraint: IntrinsicElement;
uicorner: IntrinsicElement;
uigradient: IntrinsicElement;
uigridlayout: IntrinsicElement;
uilistlayout: IntrinsicElement;
uipadding: IntrinsicElement;
uipagelayout: IntrinsicElement;
uiscale: IntrinsicElement;
uisizeconstraint: IntrinsicElement;
uistroke: IntrinsicElement;
uitablelayout: IntrinsicElement;
uitextsizeconstraint: IntrinsicElement;
viewportframe: IntrinsicElement;
}
}
}