import { type AccessibilityProps, TextInput, type TextInputProps, type ViewStyle } from 'react-native';
import { type TextStyleProp, type ViewStyleProp } from '../styles';
import { type Props as SVGIconProps } from '../icons/common';
export type RootProps = React.PropsWithChildren<{
    isInvalid?: boolean;
} & ViewStyleProp>;
export declare function Root({ children, isInvalid, style }: RootProps): import("react/jsx-runtime").JSX.Element;
export declare function useSharedInputStyles(): {
    chromeHover: ViewStyle;
    chromeFocus: ViewStyle;
    chromeError: ViewStyle;
    chromeErrorHover: ViewStyle;
};
export type InputProps = Omit<TextInputProps, 'value' | 'onChangeText' | 'placeholder'> & {
    label: string;
    value?: string;
    onChangeText?: (value: string) => void;
    isInvalid?: boolean;
    inputRef?: React.RefObject<TextInput | null> | React.ForwardedRef<TextInput>;
    placeholder?: string | null | undefined;
};
export declare function Input({ label, placeholder, value, onChangeText, onFocus, onBlur, isInvalid, inputRef, style, ...rest }: InputProps): import("react/jsx-runtime").JSX.Element;
export declare function LabelText({ nativeID, children, }: React.PropsWithChildren<{
    nativeID?: string;
}>): import("react/jsx-runtime").JSX.Element;
export declare function Icon({ icon: Comp }: {
    icon: React.ComponentType<SVGIconProps>;
}): import("react/jsx-runtime").JSX.Element;
export declare function SuffixText({ children, label, accessibilityHint, style, }: React.PropsWithChildren<TextStyleProp & {
    label: string;
    accessibilityHint?: AccessibilityProps['accessibilityHint'];
}>): import("react/jsx-runtime").JSX.Element;
export declare function GhostText({ children, value, }: {
    children: string;
    value: string;
}): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=index.d.ts.map