import type { ThemeUtilsCSS } from '@fuel-ui/css'; import type { FocusableProps, PressEvents } from '@react-types/shared'; import type { ReactNode } from 'react'; type Children = ReactNode; export type HTMLProps = { a: React.AnchorHTMLAttributes; abbr: React.HTMLAttributes; address: React.HTMLAttributes; area: React.AreaHTMLAttributes; article: React.HTMLAttributes; aside: React.HTMLAttributes; audio: React.AudioHTMLAttributes; b: React.HTMLAttributes; base: React.BaseHTMLAttributes; bdi: React.HTMLAttributes; bdo: React.HTMLAttributes; big: React.HTMLAttributes; blockquote: React.BlockquoteHTMLAttributes; body: React.HTMLAttributes; br: React.HTMLAttributes; button: React.ButtonHTMLAttributes; canvas: React.CanvasHTMLAttributes; caption: React.HTMLAttributes; cite: React.HTMLAttributes; code: React.HTMLAttributes; col: React.ColHTMLAttributes; colgroup: React.ColgroupHTMLAttributes; data: React.DataHTMLAttributes; datalist: React.HTMLAttributes; dd: React.HTMLAttributes; del: React.DelHTMLAttributes; details: React.DetailsHTMLAttributes; dfn: React.HTMLAttributes; dialog: React.DialogHTMLAttributes; div: React.HTMLAttributes; dl: React.HTMLAttributes; dt: React.HTMLAttributes; em: React.HTMLAttributes; embed: React.EmbedHTMLAttributes; fieldset: React.FieldsetHTMLAttributes; figcaption: React.HTMLAttributes; figure: React.HTMLAttributes; footer: React.HTMLAttributes; form: React.FormHTMLAttributes; h1: React.HTMLAttributes; h2: React.HTMLAttributes; h3: React.HTMLAttributes; h4: React.HTMLAttributes; h5: React.HTMLAttributes; h6: React.HTMLAttributes; head: React.HTMLAttributes; header: React.HTMLAttributes; hgroup: React.HTMLAttributes; hr: React.HTMLAttributes; html: React.HtmlHTMLAttributes; i: React.HTMLAttributes; iframe: React.IframeHTMLAttributes; img: React.ImgHTMLAttributes; input: React.InputHTMLAttributes; ins: React.InsHTMLAttributes; kbd: React.HTMLAttributes; keygen: React.KeygenHTMLAttributes; label: React.LabelHTMLAttributes; legend: React.HTMLAttributes; li: React.LiHTMLAttributes; link: React.LinkHTMLAttributes; main: React.HTMLAttributes; map: React.MapHTMLAttributes; mark: React.HTMLAttributes; menu: React.MenuHTMLAttributes; menuitem: React.HTMLAttributes; meta: React.MetaHTMLAttributes; meter: React.MeterHTMLAttributes; nav: React.HTMLAttributes; noindex: React.HTMLAttributes; noscript: React.HTMLAttributes; object: React.ObjectHTMLAttributes; ol: React.OlHTMLAttributes; optgroup: React.OptgroupHTMLAttributes; option: React.OptionHTMLAttributes; output: React.OutputHTMLAttributes; p: React.HTMLAttributes; picture: React.HTMLAttributes; pre: React.HTMLAttributes; progress: React.ProgressHTMLAttributes; q: React.QuoteHTMLAttributes; rp: React.HTMLAttributes; rt: React.HTMLAttributes; ruby: React.HTMLAttributes; s: React.HTMLAttributes; samp: React.HTMLAttributes; slot: React.SlotHTMLAttributes; script: React.ScriptHTMLAttributes; section: React.HTMLAttributes; select: React.SelectHTMLAttributes; small: React.HTMLAttributes; source: React.SourceHTMLAttributes; span: React.HTMLAttributes; strong: React.HTMLAttributes; style: React.StyleHTMLAttributes; sub: React.HTMLAttributes; summary: React.HTMLAttributes; sup: React.HTMLAttributes; table: React.TableHTMLAttributes; template: React.HTMLAttributes; tbody: React.HTMLAttributes; textarea: React.TextareaHTMLAttributes; tfoot: React.HTMLAttributes; thead: React.HTMLAttributes; time: React.TimeHTMLAttributes; title: React.HTMLAttributes; tr: React.HTMLAttributes; track: React.TrackHTMLAttributes; u: React.HTMLAttributes; ul: React.HTMLAttributes; video: React.VideoHTMLAttributes; wbr: React.HTMLAttributes; webview: React.WebViewHTMLAttributes; }; export type BaseProps = { as?: any; css?: ThemeUtilsCSS; className?: string; children?: Children; [index: `data-${string}`]: unknown; } & O; export type PressProps = PressEvents & FocusableProps & { /** * @deprecated Use onPress instead. onPress support Enter and Space keyboard. * You're able to use just one or another, don't use onClick and onPress together */ onClick?: HTMLProps['button']['onClick']; }; export type AsChildProps

> = P & { asChild?: boolean; children: ReactNode; }; export type PasswordStrength = 'strong' | 'average' | 'weak'; export type Sizes = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'; export type SizesMap = Record; export {};