declare module JSX { type Element = HTMLElement; // --> components should return plain html elements interface IntrinsicElements { /**HTML Markers */ marker: HTML.Attributes; /**HTML Fragments */ fragment: {}; /**Defines a hyperlink */ a: HTML.AAttributes; /**Defines an abbreviation or an acronym */ abbr: HTML.Attributes; /**Defines contact information for the author/owner of a document/article */ address: HTML.Attributes; /**Defines an area inside an image-map */ area: HTML.AreaAttributes; /**Defines an article */ article: HTML.Attributes; /**Defines content aside from the page content */ aside: HTML.Attributes; /**Defines sound content */ audio: HTML.AudioVideoAttributes; /**Defines bold text */ b: HTML.Attributes; /**Specifies the base URL/target for all relative URLs in a document */ base: HTML.BaseAttributes; /**Isolates a part of text that might be formatted in a different direction from other text outside it */ bdi: HTML.Attributes; /**Overrides the current text direction */ bdo: HTML.Attributes; /**Defines big text */ big: HTML.Attributes; /**Defines a section that is quoted from another source */ blockquote: HTML.QAttributes; /**Defines the document's body */ body: HTML.Attributes; /**Inserts a single line break */ br: HTML.Attributes; /**Defines a clickable button */ button: HTML.ButtonAttributes; /**Used to draw graphics, on the fly, via scripting (usually JavaScript) */ canvas: HTML.CanvasAttributes; /**Defines a table caption */ caption: HTML.Attributes; /**Defines the title of a work */ cite: HTML.Attributes; /**Defines a piece of computer code */ code: HTML.Attributes; /**Specifies column properties for each column within a