import React from 'react';
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export declare type ChangeEvent = React.ChangeEvent<HTMLInputElement>;
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export interface TextEntryConfig {
    initialValue?: string;
    onChange: (event: ChangeEvent) => void;
}
/**
 * @deprecatedSince 9
 * @deprecated Never officially documented/supported
 */
export interface TextEntryApi {
    clear: () => void;
    empty: boolean;
    onChange: (event: ChangeEvent) => void;
    reset: () => void;
    value: string;
}
interface Props extends TextEntryConfig {
    children?: React.ReactNode;
}
interface RenderProps extends TextEntryConfig {
    children: (props: TextEntryApi) => {};
}
/**
 * @deprecatedSince 9.7.0
 * @deprecated A wrapper around useBuffer (deprecated) that would also call onChange. A trivial hook for storing a string. Write your own or use a hook utility lib.
 *
 * **Source:**
 * ```
export function useTextEntry({
  initialValue = '',
  onChange = () => {},
}) {
  const { value, update, clear, reset } = useBuffer({ initialValue })

  return {
    clear: () => {
      onChange({ target: { value: '' } })
      clear()
    },
    empty: Ramda.isEmpty(value),
    onChange: (event) => {
      onChange(event)
      update(event.target.value)
    },
    reset: () => {
      onChange({ target: { value } })
      reset()
    },
    value,
  }
}
```
 */
export declare function useTextEntry({ initialValue, onChange, }: TextEntryConfig): {
    clear: () => void;
    empty: boolean;
    onChange: (event: ChangeEvent) => void;
    reset: () => void;
    value: string;
};
/**
 * @deprecatedSince 9.7.0
 * @deprecated
 */
export declare function TextEntry({ children, ...props }: RenderProps): {};
/**
 * @deprecatedSince 9.7.0
 * @deprecated
 */
export declare const TextEntryContext: React.Context<{
    value: string;
    empty: boolean;
    clear: () => void;
    reset: () => void;
}>;
/**
 * @deprecatedSince 9.7.0
 * @deprecated
 */
export declare function TextEntryProvider({ children, ...props }: Props): React.JSX.Element;
/**
 * @deprecatedSince 9.7.0
 * @deprecated
 */
export declare function useTextEntryContext(): {
    value: string;
    empty: boolean;
    clear: () => void;
    reset: () => void;
};
export {};
