• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2023-2024 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 ArkUI
19 */
20
21
22
23
24import { SymbolGlyphModifier, DividerModifier } from './@ohos.arkui.modifier';
25import { LengthMetrics } from './@ohos.arkui.node';
26/**
27 * Declare enum ItemState
28 * @enum { ItemState }
29 * @syscap SystemCapability.ArkUI.ArkUI.Full
30 * @since 10
31 */
32/**
33 * Declare enum ItemState
34 * @enum { ItemState }
35 * @syscap SystemCapability.ArkUI.ArkUI.Full
36 * @atomicservice
37 * @since 11
38 */
39/**
40 * Declare enum ItemState
41 * @enum { ItemState }
42 * @syscap SystemCapability.ArkUI.ArkUI.Full
43 * @crossplatform
44 * @atomicservice
45 * @since 18
46 */
47export declare enum ItemState {
48  /**
49   * Enable type.
50   * @syscap SystemCapability.ArkUI.ArkUI.Full
51   * @since 10
52   */
53  /**
54   * Enable type.
55   * @syscap SystemCapability.ArkUI.ArkUI.Full
56   * @atomicservice
57   * @since 11
58   */
59  /**
60   * Enable type.
61   * @syscap SystemCapability.ArkUI.ArkUI.Full
62   * @crossplatform
63   * @atomicservice
64   * @since 18
65   */
66  ENABLE = 1,
67  /**
68   * Disable type.
69   * @syscap SystemCapability.ArkUI.ArkUI.Full
70   * @since 10
71   */
72  /**
73   * Disable type.
74   * @syscap SystemCapability.ArkUI.ArkUI.Full
75   * @atomicservice
76   * @since 11
77   */
78  /**
79   * Disable type.
80   * @syscap SystemCapability.ArkUI.ArkUI.Full
81   * @crossplatform
82   * @atomicservice
83   * @since 18
84   */
85  DISABLE = 2,
86  /**
87   * Activate type.
88   * @syscap SystemCapability.ArkUI.ArkUI.Full
89   * @since 10
90   */
91  /**
92   * Activate type.
93   * @syscap SystemCapability.ArkUI.ArkUI.Full
94   * @atomicservice
95   * @since 11
96   */
97  /**
98   * Activate type.
99   * @syscap SystemCapability.ArkUI.ArkUI.Full
100   * @crossplatform
101   * @atomicservice
102   * @since 18
103   */
104  ACTIVATE = 3
105}
106
107/**
108 * Defines toolBar symbolGlyph options.
109 *
110 * @interface ToolBarSymbolGlyphOptions
111 * @syscap SystemCapability.ArkUI.ArkUI.Full
112 * @atomicservice
113 * @since 13
114 */
115/**
116 * Defines toolBar symbolGlyph options.
117 *
118 * @interface ToolBarSymbolGlyphOptions
119 * @syscap SystemCapability.ArkUI.ArkUI.Full
120 * @atomicservice
121 * @since 18
122 */
123export interface ToolBarSymbolGlyphOptions {
124
125  /**
126   * Modifier of toolbar's normal symbol.
127   *
128   * @type { ?SymbolGlyphModifier }
129   * @syscap SystemCapability.ArkUI.ArkUI.Full
130   * @atomicservice
131   * @since 13
132   */
133  /**
134   * Modifier of toolbar's normal symbol.
135   *
136   * @type { ?SymbolGlyphModifier }
137   * @syscap SystemCapability.ArkUI.ArkUI.Full
138   * @atomicservice
139   * @since 18
140   */
141  normal?: SymbolGlyphModifier;
142
143  /**
144   * Modifier of toolbar's activated symbol.
145   *
146   * @type { ?SymbolGlyphModifier }
147   * @syscap SystemCapability.ArkUI.ArkUI.Full
148   * @atomicservice
149   * @since 13
150   */
151  /**
152   * Modifier of toolbar's activated symbol.
153   *
154   * @type { ?SymbolGlyphModifier }
155   * @syscap SystemCapability.ArkUI.ArkUI.Full
156   * @atomicservice
157   * @since 18
158   */
159  activated?: SymbolGlyphModifier;
160}
161
162/**
163 * Declare type ToolBarOption
164 * @syscap SystemCapability.ArkUI.ArkUI.Full
165 * @since 10
166 */
167/**
168 * Declare type ToolBarOption
169 * @syscap SystemCapability.ArkUI.ArkUI.Full
170 * @atomicservice
171 * @since 11
172 */
173/**
174 * Declare type ToolBarOption
175 * @syscap SystemCapability.ArkUI.ArkUI.Full
176 * @crossplatform
177 * @atomicservice
178 * @since 18
179 */
180@Observed
181export declare class ToolBarOption {
182  /**
183  * Define text content.
184  * @type { ResourceStr }.
185  * @syscap SystemCapability.ArkUI.ArkUI.Full
186  * @since 10
187  */
188  /**
189  * Define text content.
190  * @type { ResourceStr }.
191  * @syscap SystemCapability.ArkUI.ArkUI.Full
192  * @atomicservice
193  * @since 11
194  */
195  /**
196  * Define text content.
197  * @type { ResourceStr }.
198  * @syscap SystemCapability.ArkUI.ArkUI.Full
199  * @crossplatform
200  * @atomicservice
201  * @since 18
202  */
203  content: ResourceStr;
204  /**
205   * Define the action event.
206   * @type { ?() => void }.
207   * @syscap SystemCapability.ArkUI.ArkUI.Full
208   * @since 10
209   */
210  /**
211   * Define the action event.
212   * @type { ?() => void }.
213   * @syscap SystemCapability.ArkUI.ArkUI.Full
214   * @atomicservice
215   * @since 11
216   */
217  /**
218   * Define the action event.
219   * @type { ?() => void }.
220   * @syscap SystemCapability.ArkUI.ArkUI.Full
221   * @crossplatform
222   * @atomicservice
223   * @since 18
224   */
225  action?: () => void;
226  /**
227   * Define icon resource.
228   * @type { ?Resource }.
229   * @syscap SystemCapability.ArkUI.ArkUI.Full
230   * @since 10
231   */
232  /**
233   * Define icon resource.
234   * @type { ?Resource }.
235   * @syscap SystemCapability.ArkUI.ArkUI.Full
236   * @atomicservice
237   * @since 11
238   */
239  /**
240   * Define icon resource.
241   * @type { ?Resource }.
242   * @syscap SystemCapability.ArkUI.ArkUI.Full
243   * @crossplatform
244   * @atomicservice
245   * @since 18
246   */
247  icon?: Resource;
248  /**
249   * Define item type.
250   * @type { ?ItemState }.
251   * @syscap SystemCapability.ArkUI.ArkUI.Full
252   * @since 10
253   */
254  /**
255   * Define item type.
256   * @type { ?ItemState }.
257   * @syscap SystemCapability.ArkUI.ArkUI.Full
258   * @atomicservice
259   * @since 11
260   */
261  /**
262   * Define item type.
263   * @type { ?ItemState }.
264   * @syscap SystemCapability.ArkUI.ArkUI.Full
265   * @crossplatform
266   * @atomicservice
267   * @since 18
268   */
269  state?: ItemState;
270  /**
271   * Define text fontColor.
272   * @type { ?ResourceColor }.
273   * @syscap SystemCapability.ArkUI.ArkUI.Full
274   * @atomicservice
275   * @since 13
276   */
277  /**
278   * Define text fontColor.
279   * @type { ?ResourceColor }.
280   * @syscap SystemCapability.ArkUI.ArkUI.Full
281   * @crossplatform
282   * @atomicservice
283   * @since 18
284   */
285  textColor?: ResourceColor;
286  /**
287   * Text fontColor when the item is activated.
288   * @type { ?ResourceColor }.
289   * @syscap SystemCapability.ArkUI.ArkUI.Full
290   * @atomicservice
291   * @since 13
292   */
293  /**
294   * Text fontColor when the item is activated.
295   * @type { ?ResourceColor }.
296   * @syscap SystemCapability.ArkUI.ArkUI.Full
297   * @crossplatform
298   * @atomicservice
299   * @since 18
300   */
301  activatedTextColor?: ResourceColor;
302  /**
303   * Define icon fillColor.
304   * @type { ?ResourceColor }.
305   * @syscap SystemCapability.ArkUI.ArkUI.Full
306   * @atomicservice
307   * @since 13
308   */
309  /**
310   * Define icon fillColor.
311   * @type { ?ResourceColor }.
312   * @syscap SystemCapability.ArkUI.ArkUI.Full
313   * @crossplatform
314   * @atomicservice
315   * @since 18
316   */
317  iconColor?: ResourceColor;
318  /**
319   * Icon fillColor when the item is activated.
320   * @type { ?ResourceColor }.
321   * @syscap SystemCapability.ArkUI.ArkUI.Full
322   * @atomicservice
323   * @since 13
324   */
325  /**
326   * Icon fillColor when the item is activated.
327   * @type { ?ResourceColor }.
328   * @syscap SystemCapability.ArkUI.ArkUI.Full
329   * @crossplatform
330   * @atomicservice
331   * @since 18
332   */
333  activatedIconColor?: ResourceColor;
334  /**
335   * Item symbol icon.
336   *
337   * @type { ?ToolBarSymbolGlyphOptions }
338   * @syscap SystemCapability.ArkUI.ArkUI.Full
339   * @atomicservice
340   * @since 13
341   */
342  /**
343   * Item symbol icon.
344   *
345   * @type { ?ToolBarSymbolGlyphOptions }
346   * @syscap SystemCapability.ArkUI.ArkUI.Full
347   * @atomicservice
348   * @since 18
349   */
350  toolBarSymbolOptions?: ToolBarSymbolGlyphOptions;
351  /**
352   * The accessibilityText of item.
353   *
354   * @type { ?ResourceStr }
355   * @syscap SystemCapability.ArkUI.ArkUI.Full
356   * @atomicservice
357   * @since 18
358   */
359  accessibilityText?: ResourceStr;
360  /**
361   * The accessibilityDescription of item.
362   *
363   * @type { ?ResourceStr }
364   * @syscap SystemCapability.ArkUI.ArkUI.Full
365   * @atomicservice
366   * @since 18
367   */
368  accessibilityDescription?: ResourceStr;
369  /**
370   * The accessibilityLevel of item.
371   *
372   * @type { ?string }
373   * @default "auto"
374   * @syscap SystemCapability.ArkUI.ArkUI.Full
375   * @atomicservice
376   * @since 18
377   */
378  accessibilityLevel?: string;
379}
380
381/**
382 * Declare ToolBarOptions use in ToolBar
383 * @syscap SystemCapability.ArkUI.ArkUI.Full
384 * @since 10
385 */
386/**
387 * Declare ToolBarOptions use in ToolBar
388 * @syscap SystemCapability.ArkUI.ArkUI.Full
389 * @atomicservice
390 * @since 11
391 */
392/**
393 * Declare ToolBarOptions use in ToolBar
394 * @syscap SystemCapability.ArkUI.ArkUI.Full
395 * @crossplatform
396 * @atomicservice
397 * @since 18
398 */
399@Observed
400export declare class ToolBarOptions extends Array<ToolBarOption> {
401}
402
403/**
404 * Declare ToolBarModifier use in ToolBar
405 * @syscap SystemCapability.ArkUI.ArkUI.Full
406 * @atomicservice
407 * @since 13
408 */
409/**
410 * Declare ToolBarModifier use in ToolBar
411 * @syscap SystemCapability.ArkUI.ArkUI.Full
412 * @crossplatform
413 * @atomicservice
414 * @since 18
415 */
416export declare class ToolBarModifier {
417  /**
418   * Sets the height of the toolBar.
419   *
420   * @param { LengthMetrics } height - toolBar's height.
421   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
422   * @syscap SystemCapability.ArkUI.ArkUI.Full
423   * @atomicservice
424   * @since 13
425   */
426  /**
427   * Sets the height of the toolBar.
428   *
429   * @param { LengthMetrics } height - toolBar's height.
430   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
431   * @syscap SystemCapability.ArkUI.ArkUI.Full
432   * @crossplatform
433   * @atomicservice
434   * @since 18
435   */
436  height(height: LengthMetrics): ToolBarModifier;
437  /**
438   * Sets the backgroundColor of the toolBar.
439   *
440   * @param { ResourceColor } backgroundColor - toolBar's backgroundColor.
441   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
442   * @syscap SystemCapability.ArkUI.ArkUI.Full
443   * @atomicservice
444   * @since 13
445   */
446  /**
447   * Sets the backgroundColor of the toolBar.
448   *
449   * @param { ResourceColor } backgroundColor - toolBar's backgroundColor.
450   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
451   * @syscap SystemCapability.ArkUI.ArkUI.Full
452   * @crossplatform
453   * @atomicservice
454   * @since 18
455   */
456  backgroundColor(backgroundColor: ResourceColor): ToolBarModifier;
457  /**
458   * Sets the left and right padding of the toolbar.
459   *
460   * @param { LengthMetrics } padding - left and right padding.
461   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
462   * @syscap SystemCapability.ArkUI.ArkUI.Full
463   * @atomicservice
464   * @since 13
465   */
466  /**
467   * Sets the left and right padding of the toolbar.
468   *
469   * @param { LengthMetrics } padding - left and right padding.
470   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
471   * @syscap SystemCapability.ArkUI.ArkUI.Full
472   * @crossplatform
473   * @atomicservice
474   * @since 18
475   */
476  padding(padding: LengthMetrics): ToolBarModifier;
477  /**
478   * Sets whether or not to display the press status effect.
479   *
480   * @param { boolean } stateEffect - press status effect.
481   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
482   * @syscap SystemCapability.ArkUI.ArkUI.Full
483   * @atomicservice
484   * @since 13
485   */
486  /**
487   * Sets whether or not to display the press status effect.
488   *
489   * @param { boolean } stateEffect - press status effect.
490   * @returns { ToolBarModifier } returns the instance of the ToolBarModifier.
491   * @syscap SystemCapability.ArkUI.ArkUI.Full
492   * @crossplatform
493   * @atomicservice
494   * @since 18
495   */
496  stateEffect(stateEffect: boolean): ToolBarModifier;
497}
498
499/**
500 * Declare Component ToolBar
501 * @syscap SystemCapability.ArkUI.ArkUI.Full
502 * @since 10
503 */
504/**
505 * Declare Component ToolBar
506 * @syscap SystemCapability.ArkUI.ArkUI.Full
507 * @atomicservice
508 * @since 11
509 */
510/**
511 * Declare Component ToolBar
512 * @syscap SystemCapability.ArkUI.ArkUI.Full
513 * @crossplatform
514 * @atomicservice
515 * @since 18
516 */
517@Component
518export declare struct ToolBar {
519  /**
520   * Define toolbar list array.
521   * @type { ToolBarOptions }.
522   * @syscap SystemCapability.ArkUI.ArkUI.Full
523   * @since 10
524   */
525  /**
526   * Define toolbar list array.
527   * @type { ToolBarOptions }.
528   * @syscap SystemCapability.ArkUI.ArkUI.Full
529   * @atomicservice
530   * @since 11
531   */
532  /**
533   * Define toolbar list array.
534   * @type { ToolBarOptions }.
535   * @syscap SystemCapability.ArkUI.ArkUI.Full
536   * @crossplatform
537   * @atomicservice
538   * @since 18
539   */
540  @ObjectLink toolBarList: ToolBarOptions;
541  /**
542   * Define toolbar activate item index, default is -1.
543   * @type { ?number }.
544   * @syscap SystemCapability.ArkUI.ArkUI.Full
545   * @since 10
546   */
547  /**
548   * Define toolbar activate item index, default is -1.
549   * @type { ?number }.
550   * @syscap SystemCapability.ArkUI.ArkUI.Full
551   * @atomicservice
552   * @since 11
553   */
554  /**
555   * Define toolbar activate item index, default is -1.
556   * @type { ?number }.
557   * @syscap SystemCapability.ArkUI.ArkUI.Full
558   * @crossplatform
559   * @atomicservice
560   * @since 18
561   */
562  @Prop activateIndex?: number;
563  /**
564   * Define toolbar controller.
565   * @type { TabsController }.
566   * @syscap SystemCapability.ArkUI.ArkUI.Full
567   * @since 10
568   */
569  /**
570   * Define toolbar controller.
571   * @type { TabsController }.
572   * @syscap SystemCapability.ArkUI.ArkUI.Full
573   * @atomicservice
574   * @since 11
575   */
576  /**
577   * Define toolbar controller.
578   * @type { TabsController }.
579   * @syscap SystemCapability.ArkUI.ArkUI.Full
580   * @crossplatform
581   * @atomicservice
582   * @since 18
583   */
584  controller: TabsController;
585  /**
586   * Define divider Modifier.
587   * @type { ?DividerModifier }.
588   * @syscap SystemCapability.ArkUI.ArkUI.Full
589   * @atomicservice
590   * @since 13
591   */
592  /**
593   * Define divider Modifier.
594   * @type { ?DividerModifier }.
595   * @syscap SystemCapability.ArkUI.ArkUI.Full
596   * @crossplatform
597   * @atomicservice
598   * @since 18
599   */
600  @Prop dividerModifier?: DividerModifier;
601  /**
602   * Define toolbar modifier.
603   * @type { ?ToolBarModifier }.
604   * @syscap SystemCapability.ArkUI.ArkUI.Full
605   * @atomicservice
606   * @since 13
607   */
608  /**
609   * Define toolbar modifier.
610   * @type { ?ToolBarModifier }.
611   * @syscap SystemCapability.ArkUI.ArkUI.Full
612   * @crossplatform
613   * @atomicservice
614   * @since 18
615   */
616  @Prop toolBarModifier?: ToolBarModifier;
617}