import { type ReactNode } from 'react'; import { type TextInput, View, type ViewProps } from 'react-native'; import { type IInputFieldProps, type IInputProps, type IInputSlotProps } from '@cdx-ui/primitives'; import { type IconProps } from '../Icon'; export interface InputProps extends ViewProps, IInputFieldProps { /** Render the consumer's child element in place of the default `View` host. */ asChild?: boolean; /** Additional Uniwind/Tailwind classes, merged after the shell's own styles. */ className?: string; /** Shell content — typically `Input.Field` plus optional `Input.Slot`/`Input.Icon`. */ children?: ReactNode; /** * Visual style variant. * @default 'outline' */ variant?: 'outline'; /** * Height and padding scale. * @default 'default' */ size?: 'default' | 'small'; } declare const InputRoot: import("react").ForwardRefExoticComponent>; export type InputFieldProps = IInputProps & { /** Additional Uniwind/Tailwind classes, merged after the field's own styles. */ className?: string; /** Uniwind class applied to the placeholder text color (native `placeholderTextColor`). */ placeholderTextColorClassName?: string; }; declare const InputField: import("react").ForwardRefExoticComponent>; export interface InputSlotProps extends ViewProps, IInputSlotProps { /** Render the consumer's child element in place of the default `View` host. */ asChild?: boolean; /** Additional Uniwind/Tailwind classes, merged after the slot's own styles. */ className?: string; /** Adornment content (icons, buttons, or adornment text). */ children?: ReactNode; } declare const InputSlot: import("react").ForwardRefExoticComponent>; export interface InputIconProps extends Omit { /** Render the consumer's child element in place of the default icon host. */ asChild?: boolean; /** * Forge icon component to render. Required unless `asChild` is set, in which * case the consumer's substituted element is rendered instead. */ as?: IconProps['as']; } declare const InputIcon: { ({ asChild, className, style, as, ...props }: InputIconProps): import("react/jsx-runtime").JSX.Element | null; displayName: string; }; type InputCompoundComponent = typeof InputRoot & { Field: typeof InputField; Slot: typeof InputSlot; Icon: typeof InputIcon; }; export declare const Input: InputCompoundComponent; export {}; //# sourceMappingURL=index.d.ts.map