import { ComponentProps } from 'react';
import { VariantProps } from 'class-variance-authority';

declare const inputStyles: (props?: ({
    inputSize?: "sm" | "md" | null | undefined;
    variant?: "default" | "error" | "prefilled" | null | undefined;
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
type InputProps = ComponentProps<"input"> & VariantProps<typeof inputStyles>;
export declare const Input: import('react').ForwardRefExoticComponent<Omit<InputProps, "ref"> & import('react').RefAttributes<HTMLInputElement>>;
/**
 * File input component that uses a custom label and icon
 */
export declare const FileInput: import('react').ForwardRefExoticComponent<Omit<import('react').DetailedHTMLProps<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & import('react').RefAttributes<HTMLInputElement>>;
export declare const UploadedFile: import('react').ForwardRefExoticComponent<{
    file: {
        name: string;
        size: number;
    };
    onRemoveClick?: (() => void) | undefined;
} & import('react').RefAttributes<HTMLDivElement>>;
/**
 * Smart file input component that handles file upload and display.
 * Implements `FileInput` and `UploadedFile` components.
 */
export declare const SmartFileInput: import('react').ForwardRefExoticComponent<Omit<import('react').ClassAttributes<HTMLInputElement> & import('react').InputHTMLAttributes<HTMLInputElement> & {
    handleUpload: (file: File) => Promise<void>;
}, "ref"> & import('react').RefAttributes<HTMLInputElement>>;
export {};
