• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2022 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 * @file
18 * @kit InputKit
19 */
20
21import type { InputEvent } from './@ohos.multimodalInput.inputEvent';
22import type { KeyCode } from './@ohos.multimodalInput.keyCode';
23/**
24 * Action
25 *
26 * @enum { number }
27 * @syscap SystemCapability.MultimodalInput.Input.Core
28 * @since 9
29 */
30/**
31 * Action
32 *
33 * @enum { number }
34 * @syscap SystemCapability.MultimodalInput.Input.Core
35 * @atomicservice
36 * @since 12
37 */
38export declare enum Action {
39  /**
40   * Cancel key
41   *
42   * @syscap SystemCapability.MultimodalInput.Input.Core
43   * @since 9
44   */
45  /**
46   * Cancel key
47   *
48   * @syscap SystemCapability.MultimodalInput.Input.Core
49   * @atomicservice
50   * @since 12
51   */
52  CANCEL = 0,
53
54  /**
55   * Down key
56   *
57   * @syscap SystemCapability.MultimodalInput.Input.Core
58   * @since 9
59   */
60  /**
61   * Down key
62   *
63   * @syscap SystemCapability.MultimodalInput.Input.Core
64   * @atomicservice
65   * @since 12
66   */
67  DOWN = 1,
68
69  /**
70   * Up key
71   *
72   * @syscap SystemCapability.MultimodalInput.Input.Core
73   * @since 9
74   */
75  /**
76   * Up key
77   *
78   * @syscap SystemCapability.MultimodalInput.Input.Core
79   * @atomicservice
80   * @since 12
81   */
82  UP = 2
83}
84
85/**
86 * Key
87 *
88 * @interface Key
89 * @syscap SystemCapability.MultimodalInput.Input.Core
90 * @since 9
91 */
92/**
93 * Key
94 *
95 * @typedef Key
96 * @syscap SystemCapability.MultimodalInput.Input.Core
97 * @atomicservice
98 * @since 12
99 */
100export declare interface Key {
101  /**
102   * Key code
103   * @type { KeyCode }
104   * @syscap SystemCapability.MultimodalInput.Input.Core
105   * @since 9
106   */
107  /**
108   * Key code
109   * @type { KeyCode }
110   * @syscap SystemCapability.MultimodalInput.Input.Core
111   * @atomicservice
112   * @since 12
113   */
114  code: KeyCode;
115
116  /**
117   * Time when the key is pressed
118   * @type { number }
119   * @syscap SystemCapability.MultimodalInput.Input.Core
120   * @since 9
121   */
122  /**
123   * Time when the key is pressed
124   * @type { number }
125   * @syscap SystemCapability.MultimodalInput.Input.Core
126   * @atomicservice
127   * @since 12
128   */
129  pressedTime: number;
130
131  /**
132   * Device to which the key belongs
133   * @type { number }
134   * @syscap SystemCapability.MultimodalInput.Input.Core
135   * @since 9
136   */
137  /**
138   * Device to which the key belongs
139   * @type { number }
140   * @syscap SystemCapability.MultimodalInput.Input.Core
141   * @atomicservice
142   * @since 12
143   */
144  deviceId: number;
145}
146
147/**
148 * KeyEvent
149 *
150 * @interface KeyEvent
151 * @syscap SystemCapability.MultimodalInput.Input.Core
152 * @since 9
153 */
154/**
155 * KeyEvent
156 *
157 * @typedef KeyEvent
158 * @syscap SystemCapability.MultimodalInput.Input.Core
159 * @atomicservice
160 * @since 12
161 */
162export declare interface KeyEvent extends InputEvent {
163  /**
164   * Key action
165   * @type { Action }
166   * @syscap SystemCapability.MultimodalInput.Input.Core
167   * @since 9
168   */
169  /**
170   * Key action
171   * @type { Action }
172   * @syscap SystemCapability.MultimodalInput.Input.Core
173   * @atomicservice
174   * @since 12
175   */
176  action: Action;
177
178  /**
179   * Key that has changed
180   * @type { Key }
181   * @syscap SystemCapability.MultimodalInput.Input.Core
182   * @since 9
183   */
184  /**
185   * Key that has changed
186   * @type { Key }
187   * @syscap SystemCapability.MultimodalInput.Input.Core
188   * @atomicservice
189   * @since 12
190   */
191  key: Key;
192
193  /**
194   * Unicode character corresponding to the key
195   * @type { number }
196   * @syscap SystemCapability.MultimodalInput.Input.Core
197   * @since 9
198   */
199  /**
200   * Unicode character corresponding to the key
201   * @type { number }
202   * @syscap SystemCapability.MultimodalInput.Input.Core
203   * @atomicservice
204   * @since 12
205   */
206  unicodeChar: number;
207
208  /**
209   * List of pressed keys
210   * @type { Key[] }
211   * @syscap SystemCapability.MultimodalInput.Input.Core
212   * @since 9
213   */
214  /**
215   * List of pressed keys
216   * @type { Key[] }
217   * @syscap SystemCapability.MultimodalInput.Input.Core
218   * @atomicservice
219   * @since 12
220   */
221  keys: Key[];
222
223  /**
224   * Whether ctrlKey is being pressed
225   * @type { boolean }
226   * @syscap SystemCapability.MultimodalInput.Input.Core
227   * @since 9
228   */
229  /**
230   * Whether ctrlKey is being pressed
231   * @type { boolean }
232   * @syscap SystemCapability.MultimodalInput.Input.Core
233   * @atomicservice
234   * @since 12
235   */
236  ctrlKey: boolean;
237
238  /**
239   * Whether altKey is being pressed
240   * @type { boolean }
241   * @syscap SystemCapability.MultimodalInput.Input.Core
242   * @since 9
243   */
244  /**
245   * Whether altKey is being pressed
246   * @type { boolean }
247   * @syscap SystemCapability.MultimodalInput.Input.Core
248   * @atomicservice
249   * @since 12
250   */
251  altKey: boolean;
252
253  /**
254   * Whether shiftKey is being pressed
255   * @type { boolean }
256   * @syscap SystemCapability.MultimodalInput.Input.Core
257   * @since 9
258   */
259  /**
260   * Whether shiftKey is being pressed
261   * @type { boolean }
262   * @syscap SystemCapability.MultimodalInput.Input.Core
263   * @atomicservice
264   * @since 12
265   */
266  shiftKey: boolean;
267
268  /**
269   * Whether logoKey is being pressed
270   * @type { boolean }
271   * @syscap SystemCapability.MultimodalInput.Input.Core
272   * @since 9
273   */
274  /**
275   * Whether logoKey is being pressed
276   * @type { boolean }
277   * @syscap SystemCapability.MultimodalInput.Input.Core
278   * @atomicservice
279   * @since 12
280   */
281  logoKey: boolean;
282
283  /**
284   * Whether fnKey is being pressed
285   * @type { boolean }
286   * @syscap SystemCapability.MultimodalInput.Input.Core
287   * @since 9
288   */
289  /**
290   * Whether fnKey is being pressed
291   * @type { boolean }
292   * @syscap SystemCapability.MultimodalInput.Input.Core
293   * @atomicservice
294   * @since 12
295   */
296  fnKey: boolean;
297
298  /**
299   * Whether capsLock is active
300   * @type { boolean }
301   * @syscap SystemCapability.MultimodalInput.Input.Core
302   * @since 9
303   */
304  /**
305   * Whether capsLock is active
306   * @type { boolean }
307   * @syscap SystemCapability.MultimodalInput.Input.Core
308   * @atomicservice
309   * @since 12
310   */
311  capsLock: boolean;
312
313  /**
314   * Whether numLock is active
315   * @type { boolean }
316   * @syscap SystemCapability.MultimodalInput.Input.Core
317   * @since 9
318   */
319  /**
320   * Whether numLock is active
321   * @type { boolean }
322   * @syscap SystemCapability.MultimodalInput.Input.Core
323   * @atomicservice
324   * @since 12
325   */
326  numLock: boolean;
327
328  /**
329   * Whether scrollLock is active
330   * @type { boolean }
331   * @syscap SystemCapability.MultimodalInput.Input.Core
332   * @since 9
333   */
334  /**
335   * Whether scrollLock is active
336   * @type { boolean }
337   * @syscap SystemCapability.MultimodalInput.Input.Core
338   * @atomicservice
339   * @since 12
340   */
341  scrollLock: boolean;
342}