/** * @fileoverview TypeScript type declarations for Fluent Grow intrinsic elements * * This file provides type declarations for using Fluent Grow with React, * allowing custom components to be used in JSX with full type checking * and autocomplete support in the editor. * * @author Veelv * @license MIT */ /** * JSX namespace that extends the default interfaces to include Fluent Grow components * * This declaration allows the use of Fluent Grow Web Components * directly in React/JSX code with proper TypeScript typing. */ declare namespace JSX { /** * Interface that defines the intrinsic elements available in JSX * * Each element is mapped to its respective HTML interfaces * with appropriate attributes and properties. */ interface FluentBaseProps extends React.HTMLAttributes { variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'transparent'; size?: 'small' | 'medium' | 'large' | 'sm' | 'md' | 'lg'; loading?: boolean | string; disabled?: boolean | string; color?: string; } interface IntrinsicElements { 'fluent-button': React.DetailedHTMLProps & FluentBaseProps, HTMLButtonElement>; 'fluent-input': React.DetailedHTMLProps & FluentBaseProps, HTMLInputElement>; 'fluent-select': React.DetailedHTMLProps & FluentBaseProps, HTMLSelectElement>; 'fluent-textarea': React.DetailedHTMLProps & FluentBaseProps, HTMLTextAreaElement>; 'fluent-checkbox': React.DetailedHTMLProps & FluentBaseProps, HTMLInputElement>; 'fluent-radio': React.DetailedHTMLProps & FluentBaseProps, HTMLInputElement>; 'fluent-switch': React.DetailedHTMLProps; 'fluent-slider': React.DetailedHTMLProps; 'fluent-progress': React.DetailedHTMLProps; 'fluent-spinner': React.DetailedHTMLProps; 'fluent-badge': React.DetailedHTMLProps; 'fluent-chip': React.DetailedHTMLProps; 'fluent-avatar': React.DetailedHTMLProps; 'fluent-avatar-group': React.DetailedHTMLProps; 'fluent-tooltip': React.DetailedHTMLProps; 'fluent-popover': React.DetailedHTMLProps; 'fluent-dropdown': React.DetailedHTMLProps; 'fluent-menu': React.DetailedHTMLProps; 'fluent-tabs': React.DetailedHTMLProps; 'fluent-accordion': React.DetailedHTMLProps; 'fluent-modal': React.DetailedHTMLProps; 'fluent-notification': React.DetailedHTMLProps; 'fluent-toast': React.DetailedHTMLProps; 'fluent-card': React.DetailedHTMLProps; 'fluent-breadcrumb': React.DetailedHTMLProps; 'fluent-pagination': React.DetailedHTMLProps; 'fluent-skeleton': React.DetailedHTMLProps; 'fluent-label': React.DetailedHTMLProps & FluentBaseProps, HTMLLabelElement>; 'fluent-text': React.DetailedHTMLProps; 'fluent-title': React.DetailedHTMLProps; 'fluent-form': React.DetailedHTMLProps & FluentBaseProps, HTMLFormElement>; 'fluent-form-message': React.DetailedHTMLProps; 'fluent-datepicker': React.DetailedHTMLProps; 'fluent-autocomplete': React.DetailedHTMLProps; 'fluent-table': React.DetailedHTMLProps & FluentBaseProps, HTMLTableElement>; 'fluent-stepper': React.DetailedHTMLProps; } } export {};