/// <reference types="react" />
export declare const tuple: <T extends string[]>(...args: T) => T;
declare const ClearableInputType: ["text", "input"];
interface BasicProps {
    prefixCls: string;
    inputType: typeof ClearableInputType[number];
    value?: any;
    allowClear?: boolean;
    element: React.ReactElement;
    handleReset: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;
    className?: string;
    style?: React.CSSProperties;
    disabled?: boolean;
    direction?: 'ltr' | 'rtl';
    focused?: boolean;
    readOnly?: boolean;
    bordered: boolean;
    hidden?: boolean;
}
/** This props only for input. */
export interface ClearableInputProps extends BasicProps {
    size?: 'small' | 'middle' | 'large';
    suffix?: React.ReactNode;
    prefix?: React.ReactNode;
    addonBefore?: React.ReactNode;
    addonAfter?: React.ReactNode;
    triggerFocus?: () => void;
    status?: '' | 'warning' | 'error';
}
import type { InputProps } from './input';
export declare function hasPrefixSuffix(props: InputProps | ClearableInputProps): boolean;
export declare function getStatusClassNames(prefixCls: string, status?: "" | "success" | "warning" | "error" | "validating", hasFeedback?: boolean): string;
export {};
