• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2* Copyright (C) 2021 Huawei Device Co., Ltd.
3* Licensed under the Apache License, Version 2.0 (the "License");
4* you may not use this file except in compliance with the License.
5* You may obtain a copy of the License at
6*
7* http://www.apache.org/licenses/LICENSE-2.0
8*
9* Unless required by applicable law or agreed to in writing, software
10* distributed under the License is distributed on an "AS IS" BASIS,
11* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12* See the License for the specific language governing permissions and
13* limitations under the License.
14*/
15
16 /**
17 * Global Key Event Injection
18 *
19 * @since 8
20 * @syscap SystemCapability.MultimodalInput.Input.InputSimulator
21 * @systemapi hide for inner use
22 */
23
24declare namespace inputEventClient {
25    /**
26     * Defines event of key that user want to inject.
27     *
28     * @since 8
29     * @syscap SystemCapability.MultimodalInput.Input.InputSimulator
30     * @systemapi hide for inner use
31     * @param isPressed The status of key.
32     * @param keyCode The keyCode value of key.
33     * @param keyDownDuration Key hold duration.
34     * @param isIntercepted Whether the key is blocked.
35     */
36    interface KeyEvent {
37        isPressed: boolean;
38        keyCode: number;
39        keyDownDuration: number;
40        isIntercepted: boolean;
41    }
42
43    /**
44     * Inject system keys.
45     *
46     * @since 8
47     * @syscap SystemCapability.MultimodalInput.Input.InputSimulator
48     * @systemapi hide for inner use
49     * @param KeyEvent the key event to be injected.
50     * @throws {BusinessError} 401 - Parameter error.
51     */
52    function injectEvent({KeyEvent: KeyEvent}): void;
53}
54
55export default inputEventClient;
56