import { AnchorHTMLAttributes, AreaHTMLAttributes, AudioHTMLAttributes, BaseHTMLAttributes, BlockquoteHTMLAttributes, ButtonHTMLAttributes, CanvasHTMLAttributes, ColgroupHTMLAttributes, ColHTMLAttributes, DataHTMLAttributes, DelHTMLAttributes, DetailsHTMLAttributes, DialogHTMLAttributes, EmbedHTMLAttributes, FieldsetHTMLAttributes, FormHTMLAttributes, HTMLAttributes, HtmlHTMLAttributes, IframeHTMLAttributes, ImgHTMLAttributes, InputHTMLAttributes, InsHTMLAttributes, KeygenHTMLAttributes, LabelHTMLAttributes, LiHTMLAttributes, LinkHTMLAttributes, MapHTMLAttributes, MenuHTMLAttributes, MetaHTMLAttributes, MeterHTMLAttributes, ObjectHTMLAttributes, OlHTMLAttributes, OptgroupHTMLAttributes, OptionHTMLAttributes, OutputHTMLAttributes, ParamHTMLAttributes, ProgressHTMLAttributes, QuoteHTMLAttributes, ScriptHTMLAttributes, SelectHTMLAttributes, SlotHTMLAttributes, SourceHTMLAttributes, StyleHTMLAttributes, SVGAttributes, TableHTMLAttributes, TdHTMLAttributes, TextareaHTMLAttributes, ThHTMLAttributes, TimeHTMLAttributes, TrackHTMLAttributes, VideoHTMLAttributes, WebViewHTMLAttributes } from 'react';
import { StyledComponentWithRef } from './create';
import { SECRET_GLITZ_PROPERTY, ELEMENT_TYPE, ELEMENT_LIKE_TYPE, FORWARD_STYLE_TYPE } from './constants';
import { Styles } from './custom';
export interface StyledType {
[SECRET_GLITZ_PROPERTY]: typeof ELEMENT_TYPE | typeof ELEMENT_LIKE_TYPE | typeof FORWARD_STYLE_TYPE;
}
export interface StyledElement extends StyledType {
[SECRET_GLITZ_PROPERTY]: typeof ELEMENT_TYPE;
value: string;
}
export declare function isElementType(type: any): type is StyledElement;
export declare function assignPredefined(target: TTarget): TTarget & StyledElementFunctions & StyledElementComponents;
export declare type StyledElementProps = {
className?: string;
};
export declare type StyledFunction = (...styles: Styles[]) => StyledComponentWithRef;
export interface StyledElementComponents {
A: StyledComponentWithRef, HTMLAnchorElement>;
Abbr: StyledComponentWithRef, HTMLElement>;
Address: StyledComponentWithRef, HTMLElement>;
Area: StyledComponentWithRef, HTMLAreaElement>;
Article: StyledComponentWithRef, HTMLElement>;
Aside: StyledComponentWithRef, HTMLElement>;
Audio: StyledComponentWithRef, HTMLAudioElement>;
B: StyledComponentWithRef, HTMLElement>;
Base: StyledComponentWithRef, HTMLBaseElement>;
Bdi: StyledComponentWithRef, HTMLElement>;
Bdo: StyledComponentWithRef, HTMLElement>;
Big: StyledComponentWithRef, HTMLElement>;
Blockquote: StyledComponentWithRef, HTMLElement>;
Body: StyledComponentWithRef, HTMLBodyElement>;
Br: StyledComponentWithRef, HTMLBRElement>;
Button: StyledComponentWithRef, HTMLButtonElement>;
Canvas: StyledComponentWithRef, HTMLCanvasElement>;
Caption: StyledComponentWithRef, HTMLElement>;
Cite: StyledComponentWithRef, HTMLElement>;
Code: StyledComponentWithRef, HTMLElement>;
Col: StyledComponentWithRef, HTMLTableColElement>;
Colgroup: StyledComponentWithRef, HTMLTableColElement>;
Data: StyledComponentWithRef, HTMLDataElement>;
Datalist: StyledComponentWithRef, HTMLDataListElement>;
Dd: StyledComponentWithRef, HTMLElement>;
Del: StyledComponentWithRef, HTMLElement>;
Details: StyledComponentWithRef, HTMLElement>;
Dfn: StyledComponentWithRef, HTMLElement>;
Dialog: StyledComponentWithRef, HTMLDialogElement>;
Div: StyledComponentWithRef, HTMLDivElement>;
Dl: StyledComponentWithRef, HTMLDListElement>;
Dt: StyledComponentWithRef, HTMLElement>;
Em: StyledComponentWithRef, HTMLElement>;
Embed: StyledComponentWithRef, HTMLEmbedElement>;
Fieldset: StyledComponentWithRef, HTMLFieldSetElement>;
Figcaption: StyledComponentWithRef, HTMLElement>;
Figure: StyledComponentWithRef, HTMLElement>;
Footer: StyledComponentWithRef, HTMLElement>;
Form: StyledComponentWithRef, HTMLFormElement>;
H1: StyledComponentWithRef, HTMLHeadingElement>;
H2: StyledComponentWithRef, HTMLHeadingElement>;
H3: StyledComponentWithRef, HTMLHeadingElement>;
H4: StyledComponentWithRef, HTMLHeadingElement>;
H5: StyledComponentWithRef, HTMLHeadingElement>;
H6: StyledComponentWithRef, HTMLHeadingElement>;
Head: StyledComponentWithRef, HTMLHeadElement>;
Header: StyledComponentWithRef, HTMLElement>;
Hgroup: StyledComponentWithRef, HTMLElement>;
Hr: StyledComponentWithRef, HTMLHRElement>;
Html: StyledComponentWithRef, HTMLHtmlElement>;
I: StyledComponentWithRef, HTMLElement>;
Iframe: StyledComponentWithRef, HTMLIFrameElement>;
Img: StyledComponentWithRef, HTMLImageElement>;
Input: StyledComponentWithRef, HTMLInputElement>;
Ins: StyledComponentWithRef, HTMLModElement>;
Kbd: StyledComponentWithRef, HTMLElement>;
Keygen: StyledComponentWithRef, HTMLElement>;
Label: StyledComponentWithRef, HTMLLabelElement>;
Legend: StyledComponentWithRef, HTMLLegendElement>;
Li: StyledComponentWithRef, HTMLLIElement>;
Link: StyledComponentWithRef, HTMLLinkElement>;
Main: StyledComponentWithRef, HTMLElement>;
Map: StyledComponentWithRef, HTMLMapElement>;
Mark: StyledComponentWithRef, HTMLElement>;
Menu: StyledComponentWithRef, HTMLElement>;
Menuitem: StyledComponentWithRef, HTMLElement>;
Meta: StyledComponentWithRef, HTMLMetaElement>;
Meter: StyledComponentWithRef, HTMLElement>;
Nav: StyledComponentWithRef, HTMLElement>;
Noindex: StyledComponentWithRef, HTMLElement>;
Noscript: StyledComponentWithRef, HTMLElement>;
Object: StyledComponentWithRef, HTMLObjectElement>;
Ol: StyledComponentWithRef, HTMLOListElement>;
Optgroup: StyledComponentWithRef, HTMLOptGroupElement>;
Option: StyledComponentWithRef, HTMLOptionElement>;
Output: StyledComponentWithRef, HTMLElement>;
P: StyledComponentWithRef, HTMLParagraphElement>;
Param: StyledComponentWithRef, HTMLParamElement>;
Picture: StyledComponentWithRef, HTMLElement>;
Pre: StyledComponentWithRef, HTMLPreElement>;
Progress: StyledComponentWithRef, HTMLProgressElement>;
Q: StyledComponentWithRef, HTMLQuoteElement>;
Rp: StyledComponentWithRef, HTMLElement>;
Rt: StyledComponentWithRef, HTMLElement>;
Ruby: StyledComponentWithRef, HTMLElement>;
S: StyledComponentWithRef, HTMLElement>;
Samp: StyledComponentWithRef, HTMLElement>;
Script: StyledComponentWithRef, HTMLScriptElement>;
Section: StyledComponentWithRef, HTMLElement>;
Select: StyledComponentWithRef, HTMLSelectElement>;
Slot: StyledComponentWithRef, HTMLSlotElement>;
Small: StyledComponentWithRef, HTMLElement>;
Source: StyledComponentWithRef, HTMLSourceElement>;
Span: StyledComponentWithRef, HTMLSpanElement>;
Strong: StyledComponentWithRef, HTMLElement>;
Style: StyledComponentWithRef, HTMLStyleElement>;
Sub: StyledComponentWithRef, HTMLElement>;
Summary: StyledComponentWithRef, HTMLElement>;
Sup: StyledComponentWithRef, HTMLElement>;
Table: StyledComponentWithRef, HTMLTableElement>;
Tbody: StyledComponentWithRef, HTMLTableSectionElement>;
Td: StyledComponentWithRef, HTMLTableDataCellElement>;
Template: StyledComponentWithRef, HTMLTemplateElement>;
Textarea: StyledComponentWithRef, HTMLTextAreaElement>;
Tfoot: StyledComponentWithRef, HTMLTableSectionElement>;
Th: StyledComponentWithRef, HTMLTableHeaderCellElement>;
Thead: StyledComponentWithRef, HTMLTableSectionElement>;
Time: StyledComponentWithRef, HTMLElement>;
Title: StyledComponentWithRef, HTMLTitleElement>;
Tr: StyledComponentWithRef, HTMLTableRowElement>;
Track: StyledComponentWithRef, HTMLTrackElement>;
U: StyledComponentWithRef, HTMLElement>;
Ul: StyledComponentWithRef, HTMLUListElement>;
Var: StyledComponentWithRef, HTMLElement>;
Video: StyledComponentWithRef, HTMLVideoElement>;
Wbr: StyledComponentWithRef, HTMLElement>;
Webview: StyledComponentWithRef, HTMLWebViewElement>;
Svg: StyledComponentWithRef, SVGSVGElement>;
Animate: StyledComponentWithRef, SVGAnimateElement>;
AnimateMotion: StyledComponentWithRef, SVGElement>;
AnimateTransform: StyledComponentWithRef, SVGAnimateTransformElement>;
Circle: StyledComponentWithRef, SVGCircleElement>;
ClipPath: StyledComponentWithRef, SVGClipPathElement>;
Defs: StyledComponentWithRef, SVGDefsElement>;
Desc: StyledComponentWithRef, SVGDescElement>;
Ellipse: StyledComponentWithRef, SVGEllipseElement>;
FeBlend: StyledComponentWithRef, SVGFEBlendElement>;
FeColorMatrix: StyledComponentWithRef, SVGFEColorMatrixElement>;
FeComponentTransfer: StyledComponentWithRef, SVGFEComponentTransferElement>;
FeComposite: StyledComponentWithRef, SVGFECompositeElement>;
FeConvolveMatrix: StyledComponentWithRef, SVGFEConvolveMatrixElement>;
FeDiffuseLighting: StyledComponentWithRef, SVGFEDiffuseLightingElement>;
FeDisplacementMap: StyledComponentWithRef, SVGFEDisplacementMapElement>;
FeDistantLight: StyledComponentWithRef, SVGFEDistantLightElement>;
FeDropShadow: StyledComponentWithRef, SVGFEDropShadowElement>;
FeFlood: StyledComponentWithRef, SVGFEFloodElement>;
FeFuncA: StyledComponentWithRef, SVGFEFuncAElement>;
FeFuncB: StyledComponentWithRef, SVGFEFuncBElement>;
FeFuncG: StyledComponentWithRef, SVGFEFuncGElement>;
FeFuncR: StyledComponentWithRef, SVGFEFuncRElement>;
FeGaussianBlur: StyledComponentWithRef, SVGFEGaussianBlurElement>;
FeImage: StyledComponentWithRef, SVGFEImageElement>;
FeMerge: StyledComponentWithRef, SVGFEMergeElement>;
FeMergeNode: StyledComponentWithRef, SVGFEMergeNodeElement>;
FeMorphology: StyledComponentWithRef, SVGFEMorphologyElement>;
FeOffset: StyledComponentWithRef, SVGFEOffsetElement>;
FePointLight: StyledComponentWithRef, SVGFEPointLightElement>;
FeSpecularLighting: StyledComponentWithRef, SVGFESpecularLightingElement>;
FeSpotLight: StyledComponentWithRef, SVGFESpotLightElement>;
FeTile: StyledComponentWithRef, SVGFETileElement>;
FeTurbulence: StyledComponentWithRef, SVGFETurbulenceElement>;
Filter: StyledComponentWithRef, SVGFilterElement>;
ForeignObject: StyledComponentWithRef, SVGForeignObjectElement>;
G: StyledComponentWithRef, SVGGElement>;
Image: StyledComponentWithRef, SVGImageElement>;
Line: StyledComponentWithRef, SVGLineElement>;
LinearGradient: StyledComponentWithRef, SVGLinearGradientElement>;
Marker: StyledComponentWithRef, SVGMarkerElement>;
Mask: StyledComponentWithRef, SVGMaskElement>;
Metadata: StyledComponentWithRef, SVGMetadataElement>;
Mpath: StyledComponentWithRef, SVGElement>;
Path: StyledComponentWithRef, SVGPathElement>;
Pattern: StyledComponentWithRef, SVGPatternElement>;
Polygon: StyledComponentWithRef, SVGPolygonElement>;
Polyline: StyledComponentWithRef, SVGPolylineElement>;
RadialGradient: StyledComponentWithRef, SVGRadialGradientElement>;
Rect: StyledComponentWithRef, SVGRectElement>;
Stop: StyledComponentWithRef, SVGStopElement>;
Switch: StyledComponentWithRef, SVGSwitchElement>;
Symbol: StyledComponentWithRef, SVGSymbolElement>;
Text: StyledComponentWithRef, SVGTextElement>;
TextPath: StyledComponentWithRef, SVGTextPathElement>;
Tspan: StyledComponentWithRef, SVGTSpanElement>;
Use: StyledComponentWithRef, SVGUseElement>;
View: StyledComponentWithRef, SVGViewElement>;
}
export interface StyledElementFunctions {
a: StyledFunction, HTMLAnchorElement>;
abbr: StyledFunction, HTMLElement>;
address: StyledFunction, HTMLElement>;
area: StyledFunction, HTMLAreaElement>;
article: StyledFunction, HTMLElement>;
aside: StyledFunction, HTMLElement>;
audio: StyledFunction, HTMLAudioElement>;
b: StyledFunction, HTMLElement>;
base: StyledFunction, HTMLBaseElement>;
bdi: StyledFunction, HTMLElement>;
bdo: StyledFunction, HTMLElement>;
big: StyledFunction, HTMLElement>;
blockquote: StyledFunction, HTMLElement>;
body: StyledFunction, HTMLBodyElement>;
br: StyledFunction, HTMLBRElement>;
button: StyledFunction, HTMLButtonElement>;
canvas: StyledFunction, HTMLCanvasElement>;
caption: StyledFunction, HTMLElement>;
cite: StyledFunction, HTMLElement>;
code: StyledFunction, HTMLElement>;
col: StyledFunction, HTMLTableColElement>;
colgroup: StyledFunction, HTMLTableColElement>;
data: StyledFunction, HTMLDataElement>;
datalist: StyledFunction, HTMLDataListElement>;
dd: StyledFunction, HTMLElement>;
del: StyledFunction, HTMLElement>;
details: StyledFunction, HTMLElement>;
dfn: StyledFunction, HTMLElement>;
dialog: StyledFunction, HTMLDialogElement>;
div: StyledFunction, HTMLDivElement>;
dl: StyledFunction, HTMLDListElement>;
dt: StyledFunction, HTMLElement>;
em: StyledFunction, HTMLElement>;
embed: StyledFunction, HTMLEmbedElement>;
fieldset: StyledFunction, HTMLFieldSetElement>;
figcaption: StyledFunction, HTMLElement>;
figure: StyledFunction, HTMLElement>;
footer: StyledFunction, HTMLElement>;
form: StyledFunction, HTMLFormElement>;
h1: StyledFunction, HTMLHeadingElement>;
h2: StyledFunction, HTMLHeadingElement>;
h3: StyledFunction, HTMLHeadingElement>;
h4: StyledFunction, HTMLHeadingElement>;
h5: StyledFunction, HTMLHeadingElement>;
h6: StyledFunction, HTMLHeadingElement>;
head: StyledFunction, HTMLHeadElement>;
header: StyledFunction, HTMLElement>;
hgroup: StyledFunction, HTMLElement>;
hr: StyledFunction, HTMLHRElement>;
html: StyledFunction, HTMLHtmlElement>;
i: StyledFunction, HTMLElement>;
iframe: StyledFunction, HTMLIFrameElement>;
img: StyledFunction, HTMLImageElement>;
input: StyledFunction, HTMLInputElement>;
ins: StyledFunction, HTMLModElement>;
kbd: StyledFunction, HTMLElement>;
keygen: StyledFunction, HTMLElement>;
label: StyledFunction, HTMLLabelElement>;
legend: StyledFunction, HTMLLegendElement>;
li: StyledFunction, HTMLLIElement>;
link: StyledFunction, HTMLLinkElement>;
main: StyledFunction, HTMLElement>;
map: StyledFunction, HTMLMapElement>;
mark: StyledFunction, HTMLElement>;
menu: StyledFunction, HTMLElement>;
menuitem: StyledFunction, HTMLElement>;
meta: StyledFunction, HTMLMetaElement>;
meter: StyledFunction, HTMLElement>;
nav: StyledFunction, HTMLElement>;
noindex: StyledFunction, HTMLElement>;
noscript: StyledFunction, HTMLElement>;
object: StyledFunction, HTMLObjectElement>;
ol: StyledFunction, HTMLOListElement>;
optgroup: StyledFunction, HTMLOptGroupElement>;
option: StyledFunction, HTMLOptionElement>;
output: StyledFunction, HTMLElement>;
p: StyledFunction