import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { TypedInputEventNode } from './_BaseInput';
import { EventInputType } from '../../poly/registers/nodes/types/Event';
import { CoreEventEmitter } from '../../../core/event/CoreEventEmitter';
import { EventContext } from '../../../core/event/EventContextType';
declare class KeyboardEventParamsConfig extends NodeParamsConfig {
    /** @param toggle on to allow any event to be listened to */
    active: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param set which element triggers the event */
    element: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param toggle on to listen to keydown events */
    keydown: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param toggle on to listen to keypress events */
    keypress: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param toggle on to listen to keyup events */
    keyup: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param space separated list of accepted key codes. If this is empty then any key is accepted. */
    keyCodes: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    /** @param requires ctrlKey */
    ctrlKey: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param requires altKey */
    altKey: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param requires shiftKey */
    shiftKey: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param requires metaKey */
    metaKey: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
}
export declare class KeyboardEventNode extends TypedInputEventNode<KeyboardEventParamsConfig> {
    paramsConfig: KeyboardEventParamsConfig;
    static type(): EventInputType;
    protected acceptedEventTypes(): Set<import("../../../core/event/KeyboardEventType").KeyboardEventType>;
    initializeNode(): void;
    setElement(element: CoreEventEmitter): void;
    processEvent(eventContext: EventContext<KeyboardEvent>): void;
}
export {};
