import type { KeyboardKey } from '../UserInteraction/types/KeyboardKey';
export type { KeyboardKey } from '../UserInteraction/types/KeyboardKey';
/**
 * 模拟键盘选项接口
 */
export interface ISimulateKeyboardOptions {
    /**
     * 按键字符值
     * @example 'Enter', 'a', 'Escape'
     */
    key?: KeyboardKey;
    /**
     * 物理按键码
     * @example 'KeyA', 'Enter', 'Escape'
     */
    code?: string;
    /**
     * 按键数字码 (已废弃但仍兼容)
     * @example 13 (Enter), 27 (Escape), 65 (A)
     */
    keyCode?: number;
    /**
     * 按键代码
     * @example 'KeyA', 'Enter'
     */
    keyCodeValue?: number;
    /**
     * 事件是否冒泡
     * @default true
     */
    bubbles?: boolean;
    /**
     * 事件是否可取消
     * @default true
     */
    cancelable?: boolean;
    /**
     * 是否按下Shift键
     * @default false
     */
    shiftKey?: boolean;
    /**
     * 是否按下Ctrl键
     * @default false
     */
    ctrlKey?: boolean;
    /**
     * 是否按下Alt键
     * @default false
     */
    altKey?: boolean;
    /**
     * 是否按下Meta键(Command键)
     * @default false
     */
    metaKey?: boolean;
    /**
     * 是否重复按键（长按）
     * @default false
     */
    repeat?: boolean;
}
/**
 * 在目标元素上模拟键盘事件
 *
 * @param target 目标元素
 * @param options 键盘选项
 */
export declare function simulateKeyboard(target: HTMLElement, options: ISimulateKeyboardOptions): void;
/**
 * 在 document.activeElement 或 document.body 上模拟键盘事件
 *
 * @param options 键盘选项
 */
export declare function simulateKeyboard(options: ISimulateKeyboardOptions): void;
