import type { DebugProp, ThemeName, GroupNames, Role, TamaguiComponentState } from '../types'; export type TamaguiComponentPropsBaseBase = { target?: string; htmlFor?: string; /** * When truthy passes through all props to a single child element, and avoids rendering its own element. * Must pass just one child React element that will receive all the props. * * The option "except-style" will avoid passing any style related props. * * The option "web" will map all React Native style props to web props (onPress becomes onClick). * * The option "except-style-web" combines the except-style and web options. * */ asChild?: boolean | 'except-style' | 'except-style-web' | 'web'; dangerouslySetInnerHTML?: { __html: string; }; children?: any | any[]; debug?: DebugProp; disabled?: boolean; /** * Same as the web className property, useful for applying styles from CSS on web only */ className?: string; /** * If given a theme it will only apply to this element, instead of passing down to children */ themeShallow?: boolean; /** * Same as the web id property for setting a uid on an element */ id?: string; /** * Controls the rendered element on web. * - String: renders as that HTML element (e.g., `render="button"`) * - JSX Element: clones element with merged props (e.g., `render={}`) * - Function: full control with props and state (e.g., `render={(props) => }`) */ render?: keyof HTMLElementTagNameMap | (string & {}) | React.ReactElement | ((props: Record & { ref?: React.Ref; }, state: TamaguiComponentState) => React.ReactElement); /** * Applies a theme to this element */ theme?: ThemeName | null; /** * Marks this component as a group for use in styling children based on parents named group * See: https://tamagui.dev/docs/intro/props */ group?: GroupNames | boolean; /** * Works only alongside group, when children of the group are using container based sizing on native you can hide them until parent is measured. * See: https://tamagui.dev/docs/intro/props */ untilMeasured?: 'hide' | 'show'; /** * Equivalent to "name" property on styled() for automatically applying a theme */ componentName?: string; /** * Used for controlling the order of focus with keyboard or assistive device enavigation * See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex */ tabIndex?: string | number; /** * Equivalent to role="" attribute on web for accessibility */ role?: Role; /** * Disable all compiler optimization */ disableOptimization?: boolean; /** * Forces the pseudo style state to be on */ forceStyle?: 'hover' | 'press' | 'focus' | 'focusVisible' | 'focusWithin'; /** * Disables className output of styles, instead using only inline styles */ disableClassName?: boolean; /** * Adds some area outside the typical bounds of the component for touch actions to register. * Tamagui uses Pressable internally so it supports `number | Insets` rather than just `Insets` */ hitSlop?: number | Insets | null; }; export interface Insets { top?: number; left?: number; bottom?: number; right?: number; } //# sourceMappingURL=TamaguiComponentPropsBaseBase.d.ts.map