import { ElementType, KeyboardEvent } from 'react'; import { LabelFieldProps } from '../LabelField'; import { StudioLayoutButtonConfigProps } from '../public/StudioButton'; import { InputSize } from '../public/types/StudioInputFieldSchema'; export { InputSize } from '../public/types/StudioInputFieldSchema'; export type { InputSizeType } from '../public/types/StudioInputFieldSchema'; export interface InputFieldProps { className?: string; style?: React.CSSProperties; name?: string; value: string; placeholder?: string; pattern?: string; required?: boolean; readOnly?: boolean; disabled?: boolean; row?: boolean; label?: React.ReactNode; labelAs?: ElementType; afterLabel?: React.ReactNode; afterLabelButtons?: StudioLayoutButtonConfigProps[]; description?: React.ReactNode; beforeInput?: React.ReactNode; afterInput?: React.ReactNode; size?: `${InputSize}`; type?: string; minLength?: number; maxLength?: number; autoFocus?: boolean; tip?: LabelFieldProps['tip']; hasClear?: (props: InputFieldProps) => boolean; onInput?(value: string): void; onChange?(value: string, partial?: boolean): void; onKeyDown?(ev: KeyboardEvent): void; onBlur?(): void; } interface InputFieldPropsNoValue extends Omit { } export declare const getValue: (value: string) => string; export declare const getInputClassName: (props?: Partial) => string; export declare const getInputContainerClassName: ({ size }?: Partial) => string; export declare const getRootProps: ({ className, style, row }: Omit) => { className: string; style: import("react").CSSProperties | undefined; }; export declare const LabelFieldContainer: (props: Omit & { as?: ElementType | undefined; }) => import("react/jsx-runtime").JSX.Element | null; declare const _default: import("react").ForwardRefExoticComponent>; export default _default;