import type { InputHTMLAttributes } from 'react';
import type { DefaultProps } from '../../types';
import type { MergeRight } from '../../utilities';
type InputAttr = InputHTMLAttributes;
export type InputProps = MergeRight, {
/**
* Supported `input` types
*
* @default 'text'
* */
type?: 'checkbox' | 'color' | 'date' | 'datetime-local' | 'email' | 'file' | 'hidden' | 'month' | 'number' | 'password' | 'radio' | 'search' | 'tel' | 'text' | 'time' | 'url' | 'week';
/**
* Defines the width of `Input` in count of characters.
*/
size?: number;
/**
* Disables element
* @note Avoid using if possible for accessibility purposes
*/
disabled?: boolean;
/**
* Toggle `readOnly`
**/
readOnly?: boolean;
/**
* Set role, i.e. `switch` when `checkbox` or `radio`
**/
role?: InputAttr['role'];
/**
* Indeterminate state for checkbox inputs
* Only works when used inside `Field` component
* @default false
**/
'data-indeterminate'?: boolean;
}>;
/**
* Input renders a native `input` element.
*
* @example
*
*/
export declare const Input: import("react").ForwardRefExoticComponent, "type" | "disabled" | "readOnly" | "size" | "role" | "data-indeterminate"> & {
/**
* Supported `input` types
*
* @default 'text'
* */
type?: "checkbox" | "color" | "date" | "datetime-local" | "email" | "file" | "hidden" | "month" | "number" | "password" | "radio" | "search" | "tel" | "text" | "time" | "url" | "week";
/**
* Defines the width of `Input` in count of characters.
*/
size?: number;
/**
* Disables element
* @note Avoid using if possible for accessibility purposes
*/
disabled?: boolean;
/**
* Toggle `readOnly`
**/
readOnly?: boolean;
/**
* Set role, i.e. `switch` when `checkbox` or `radio`
**/
role?: InputAttr["role"];
/**
* Indeterminate state for checkbox inputs
* Only works when used inside `Field` component
* @default false
**/
'data-indeterminate'?: boolean;
} & import("react").RefAttributes>;
export {};
//# sourceMappingURL=input.d.ts.map