import { AllHTMLAttributes } from 'react';
import { ButtonProps } from '../Button/Button.types.js';
import { Variants } from './InputFile.constants.js';
import '@snowball-tech/design-tokens/dist/web/typescript/constants';
import '../constants-QFINMz1u.js';
import '../Button/Button.constants.js';

type CombinedRefs = {
    fileInput: HTMLInputElement | null;
    trigger: HTMLButtonElement | null;
};
interface InputFileProps extends Omit<AllHTMLAttributes<HTMLInputElement>, 'onChange'> {
    label: string;
    disabled?: boolean;
    triggerProps?: Partial<Omit<ButtonProps, 'disabled' | 'href' | 'label' | 'target' | 'type' | 'variant'>>;
    variant?: `${Variants}`;
    onChange?: (files: FileList | null) => void;
}

export type { CombinedRefs, InputFileProps };
