import { PureComponent } from 'react'; import { StyleProp, TextStyle, ViewStyle } from 'react-native'; export interface KeyConfig { value: string; size: number; isTrigger?: boolean; display?: string; keyStyle?: StyleProp; textStyle?: StyleProp; } export declare type LayoutInput = Record & { value: string; }))[][]>; export interface KeyboardTheme { keyStyle?: StyleProp; textStyle?: StyleProp; rowStyle?: StyleProp; containerStyle?: StyleProp; } interface DisplayOptions { marginPercent?: number; display?: Record; } export interface KeyboardConfig { layouts: LayoutInput; displayOptions?: DisplayOptions; } interface Props { config: KeyboardConfig; theme?: KeyboardTheme; onKeyPress?: (key: string) => void; onTriggerPress?: (trigger: string) => void; } interface State { layout: string; size: { height?: number; width?: number; }; fontMeasure: { height: number; width: number; }; } declare class EasyKeyboard extends PureComponent { state: State; setKeyboardLayout: (layoutName: string) => void; private onLayout; private onFontMeasureLayout; render(): JSX.Element; } export default EasyKeyboard;