export declare function clearElement(element: HTMLInputElement | HTMLTextAreaElement): void;
export declare function createFakeEvent(type: string, canBubble?: boolean, cancelable?: boolean): Event;
export declare function createKeyboardEvent(type: string, keyCode?: number, key?: string, target?: Element, modifiers?: ModifierKeys): any;
export declare function createMouseEvent(type: string, x?: number, y?: number, button?: number): MouseEvent;
export declare function createTouchEvent(type: string, pageX?: number, pageY?: number): UIEvent;
export declare function dispatchEvent(node: Node | Window, event: Event): Event;
export declare function dispatchFakeEvent(node: Node | Window, type: string, canBubble?: boolean): Event;
export declare function dispatchKeyboardEvent(node: Node, type: string, keyCode?: number, key?: string, target?: Element, modifiers?: ModifierKeys): KeyboardEvent;
export declare function dispatchMouseEvent(node: Node, type: string, x?: number, y?: number, event?: MouseEvent): MouseEvent;
export declare function dispatchTouchEvent(node: Node, type: string, x?: number, y?: number): Event;
export declare function isTextInput(element: Element): element is HTMLInputElement | HTMLTextAreaElement;
export interface ModifierKeys {
alt?: boolean;
control?: boolean;
meta?: boolean;
shift?: boolean;
}
export declare function patchElementFocus(element: HTMLElement): void;
export declare function triggerBlur(element: HTMLElement): void;
export declare function triggerFocus(element: HTMLElement): void;
export declare function typeInElement(element: HTMLElement, ...keys: (string | {
keyCode?: number;
key?: string;
})[]): void;
export declare function typeInElement(element: HTMLElement, modifiers: ModifierKeys, ...keys: (string | {
keyCode?: number;
key?: string;
})[]): void;