1/*
2 * Copyright (c) 2021-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 * Import the SystemBarStyle type for Navigation.
23 *
24 * @typedef { import('../api/@ohos.window').default.SystemBarStyle } SystemBarStyle
25 * @syscap SystemCapability.ArkUI.ArkUI.Full
26 * @atomicservice
27 * @since 12
28 */
29declare type SystemBarStyle = import('../api/@ohos.window').default.SystemBarStyle;
30
31/**
32 * Defines the navigation common title.
33 *
34 * @interface NavigationCommonTitle
35 * @syscap SystemCapability.ArkUI.ArkUI.Full
36 * @since 9
37 */
38/**
39 * Defines the navigation common title.
40 *
41 * @interface NavigationCommonTitle
42 * @syscap SystemCapability.ArkUI.ArkUI.Full
43 * @crossplatform
44 * @since 10
45 */
46/**
47 * Defines the navigation common title.
48 *
49 * @interface NavigationCommonTitle
50 * @syscap SystemCapability.ArkUI.ArkUI.Full
51 * @crossplatform
52 * @atomicservice
53 * @since 11
54 */
55declare interface NavigationCommonTitle {
56  /**
57   * Sets the main title.
58   *
59   * @type { string }
60   * @syscap SystemCapability.ArkUI.ArkUI.Full
61   * @since 9
62   */
63  /**
64   * Sets the main title.
65   *
66   * @type { string }
67   * @syscap SystemCapability.ArkUI.ArkUI.Full
68   * @crossplatform
69   * @since 10
70   */
71  /**
72   * Sets the main title.
73   *
74   * @type { string }
75   * @syscap SystemCapability.ArkUI.ArkUI.Full
76   * @crossplatform
77   * @atomicservice
78   * @since 11
79   */
80  /**
81   * Sets the main title.
82   *
83   * @type { string | Resource }
84   * @syscap SystemCapability.ArkUI.ArkUI.Full
85   * @crossplatform
86   * @atomicservice
87   * @since 13
88   */
89  main: string | Resource;
90
91  /**
92   * Sets the sub title.
93   *
94   * @type { string }
95   * @syscap SystemCapability.ArkUI.ArkUI.Full
96   * @since 9
97   */
98  /**
99   * Sets the sub title.
100   *
101   * @type { string }
102   * @syscap SystemCapability.ArkUI.ArkUI.Full
103   * @crossplatform
104   * @since 10
105   */
106  /**
107   * Sets the sub title.
108   *
109   * @type { string }
110   * @syscap SystemCapability.ArkUI.ArkUI.Full
111   * @crossplatform
112   * @atomicservice
113   * @since 11
114   */
115  /**
116   * Sets the sub title.
117   *
118   * @type { string | Resource }
119   * @syscap SystemCapability.ArkUI.ArkUI.Full
120   * @crossplatform
121   * @atomicservice
122   * @since 13
123   */
124  sub: string | Resource;
125}
126
127/**
128 * Defines the navigation custom title.
129 *
130 * @interface NavigationCustomTitle
131 * @syscap SystemCapability.ArkUI.ArkUI.Full
132 * @since 9
133 */
134/**
135 * Defines the navigation custom title.
136 *
137 * @interface NavigationCustomTitle
138 * @syscap SystemCapability.ArkUI.ArkUI.Full
139 * @crossplatform
140 * @since 10
141 */
142/**
143 * Defines the navigation custom title.
144 *
145 * @interface NavigationCustomTitle
146 * @syscap SystemCapability.ArkUI.ArkUI.Full
147 * @crossplatform
148 * @atomicservice
149 * @since 11
150 */
151declare interface NavigationCustomTitle {
152  /**
153   * Sets the custom title builder.
154   *
155   * @type { CustomBuilder }
156   * @syscap SystemCapability.ArkUI.ArkUI.Full
157   * @since 9
158   */
159  /**
160   * Sets the custom title builder.
161   *
162   * @type { CustomBuilder }
163   * @syscap SystemCapability.ArkUI.ArkUI.Full
164   * @crossplatform
165   * @since 10
166   */
167  /**
168   * Sets the custom title builder.
169   *
170   * @type { CustomBuilder }
171   * @syscap SystemCapability.ArkUI.ArkUI.Full
172   * @crossplatform
173   * @atomicservice
174   * @since 11
175   */
176  builder: CustomBuilder;
177
178  /**
179   * Sets the custom title height.
180   *
181   * @type { TitleHeight | Length }
182   * @syscap SystemCapability.ArkUI.ArkUI.Full
183   * @since 9
184   */
185  /**
186   * Sets the custom title height.
187   *
188   * @type { TitleHeight | Length }
189   * @syscap SystemCapability.ArkUI.ArkUI.Full
190   * @crossplatform
191   * @since 10
192   */
193  /**
194   * Sets the custom title height.
195   *
196   * @type { TitleHeight | Length }
197   * @syscap SystemCapability.ArkUI.ArkUI.Full
198   * @crossplatform
199   * @atomicservice
200   * @since 11
201   */
202  height: TitleHeight | Length;
203}
204
205
206/**
207 * Navigation mode
208 *
209 * @enum { number }
210 * @syscap SystemCapability.ArkUI.ArkUI.Full
211 * @since 9
212 */
213/**
214 * Navigation mode
215 *
216 * @enum { number }
217 * @syscap SystemCapability.ArkUI.ArkUI.Full
218 * @crossplatform
219 * @since 10
220 */
221/**
222 * Navigation mode
223 *
224 * @enum { number }
225 * @syscap SystemCapability.ArkUI.ArkUI.Full
226 * @crossplatform
227 * @atomicservice
228 * @since 11
229 */
230declare enum NavigationMode {
231  /**
232   * The navigation bar and the content area are displayed in stack.
233   *
234   * @syscap SystemCapability.ArkUI.ArkUI.Full
235   * @since 9
236   */
237  /**
238   * The navigation bar and the content area are displayed in stack.
239   *
240   * @syscap SystemCapability.ArkUI.ArkUI.Full
241   * @crossplatform
242   * @since 10
243   */
244  /**
245   * The navigation bar and the content area are displayed in stack.
246   *
247   * @syscap SystemCapability.ArkUI.ArkUI.Full
248   * @crossplatform
249   * @atomicservice
250   * @since 11
251   */
252  Stack,
253
254  /**
255   * The navigation bar and the content area are displayed side by side.
256   *
257   * @syscap SystemCapability.ArkUI.ArkUI.Full
258   * @since 9
259   */
260  /**
261   * The navigation bar and the content area are displayed side by side.
262   *
263   * @syscap SystemCapability.ArkUI.ArkUI.Full
264   * @crossplatform
265   * @since 10
266   */
267  /**
268   * The navigation bar and the content area are displayed side by side.
269   *
270   * @syscap SystemCapability.ArkUI.ArkUI.Full
271   * @crossplatform
272   * @atomicservice
273   * @since 11
274   */
275  Split,
276
277  /**
278   * If the window width is greater than 520vp, the navigation component is displayed in split mode.
279   * Otherwise it's displayed in stack mode.
280   *
281   * @syscap SystemCapability.ArkUI.ArkUI.Full
282   * @since 9
283   */
284  /**
285   * If the window width is greater than the sum of minNavBarWidth and minContentWidth, the navigation component is displayed in split mode.
286   * Otherwise it's displayed in stack mode.
287   *
288   * @syscap SystemCapability.ArkUI.ArkUI.Full
289   * @crossplatform
290   * @since 10
291   */
292  /**
293   * If the window width is greater than the sum of minNavBarWidth and minContentWidth, the navigation component is displayed in split mode.
294   * Otherwise it's displayed in stack mode.
295   *
296   * @syscap SystemCapability.ArkUI.ArkUI.Full
297   * @crossplatform
298   * @atomicservice
299   * @since 11
300   */
301  Auto,
302}
303
304/**
305 * Navigation bar position
306 *
307 * @enum { number }
308 * @syscap SystemCapability.ArkUI.ArkUI.Full
309 * @since 9
310 */
311/**
312 * Navigation bar position
313 *
314 * @enum { number }
315 * @syscap SystemCapability.ArkUI.ArkUI.Full
316 * @crossplatform
317 * @since 10
318 */
319/**
320 * Navigation bar position
321 *
322 * @enum { number }
323 * @syscap SystemCapability.ArkUI.ArkUI.Full
324 * @crossplatform
325 * @atomicservice
326 * @since 11
327 */
328declare enum NavBarPosition {
329  /**
330   * The navigation bar is on the Start of the container
331   *
332   * @syscap SystemCapability.ArkUI.ArkUI.Full
333   * @since 9
334   */
335  /**
336   * The navigation bar is on the Start of the container
337   *
338   * @syscap SystemCapability.ArkUI.ArkUI.Full
339   * @crossplatform
340   * @since 10
341   */
342  /**
343   * The navigation bar is on the Start of the container
344   *
345   * @syscap SystemCapability.ArkUI.ArkUI.Full
346   * @crossplatform
347   * @atomicservice
348   * @since 11
349   */
350  Start,
351
352  /**
353   * The navigation bar is on the End of the container
354   *
355   * @syscap SystemCapability.ArkUI.ArkUI.Full
356   * @since 9
357   */
358  /**
359   * The navigation bar is on the End of the container
360   *
361   * @syscap SystemCapability.ArkUI.ArkUI.Full
362   * @crossplatform
363   * @since 10
364   */
365  /**
366   * The navigation bar is on the End of the container
367   *
368   * @syscap SystemCapability.ArkUI.ArkUI.Full
369   * @crossplatform
370   * @atomicservice
371   * @since 11
372   */
373  End,
374}
375
376/**
377 * Navigation title mode.
378 *
379 * @enum { number }
380 * @syscap SystemCapability.ArkUI.ArkUI.Full
381 * @since 8
382 */
383/**
384 * Navigation title mode.
385 *
386 * @enum { number }
387 * @syscap SystemCapability.ArkUI.ArkUI.Full
388 * @crossplatform
389 * @since 10
390 */
391/**
392 * Navigation title mode.
393 *
394 * @enum { number }
395 * @syscap SystemCapability.ArkUI.ArkUI.Full
396 * @crossplatform
397 * @atomicservice
398 * @since 11
399 */
400declare enum NavigationTitleMode {
401  /**
402   * The title is free mode.
403   *
404   * @syscap SystemCapability.ArkUI.ArkUI.Full
405   * @since 8
406   */
407  /**
408   * The title is free mode.
409   *
410   * @syscap SystemCapability.ArkUI.ArkUI.Full
411   * @crossplatform
412   * @since 10
413   */
414  /**
415   * The title is free mode.
416   *
417   * @syscap SystemCapability.ArkUI.ArkUI.Full
418   * @crossplatform
419   * @atomicservice
420   * @since 11
421   */
422  Free = 0,
423
424  /**
425   * The title is full mode.
426   *
427   * @syscap SystemCapability.ArkUI.ArkUI.Full
428   * @since 8
429   */
430  /**
431   * The title is full mode.
432   *
433   * @syscap SystemCapability.ArkUI.ArkUI.Full
434   * @crossplatform
435   * @since 10
436   */
437  /**
438   * The title is full mode.
439   *
440   * @syscap SystemCapability.ArkUI.ArkUI.Full
441   * @crossplatform
442   * @atomicservice
443   * @since 11
444   */
445  Full,
446
447  /**
448   * The title is mini mode.
449   *
450   * @syscap SystemCapability.ArkUI.ArkUI.Full
451   * @since 8
452   */
453  /**
454   * The title is mini mode.
455   *
456   * @syscap SystemCapability.ArkUI.ArkUI.Full
457   * @crossplatform
458   * @since 10
459   */
460  /**
461   * The title is mini mode.
462   *
463   * @syscap SystemCapability.ArkUI.ArkUI.Full
464   * @crossplatform
465   * @atomicservice
466   * @since 11
467   */
468  Mini,
469}
470
471/**
472 * Navigation menu item, include menu icon and menu info
473 *
474 * @interface NavigationMenuItem
475 * @syscap SystemCapability.ArkUI.ArkUI.Full
476 * @since 8
477 */
478/**
479 * Navigation menu item, include menu icon and menu info
480 *
481 * @interface NavigationMenuItem
482 * @syscap SystemCapability.ArkUI.ArkUI.Full
483 * @crossplatform
484 * @since 10
485 */
486/**
487 * Navigation menu item, include menu icon and menu info
488 *
489 * @interface NavigationMenuItem
490 * @syscap SystemCapability.ArkUI.ArkUI.Full
491 * @crossplatform
492 * @atomicservice
493 * @since 11
494 */
495declare interface NavigationMenuItem {
496  /**
497   * The value of navigation menu item.
498   *
499   * @type { string }
500   * @syscap SystemCapability.ArkUI.ArkUI.Full
501   * @since 8
502   */
503  /**
504   * The value of navigation menu item.
505   *
506   * @type { string }
507   * @syscap SystemCapability.ArkUI.ArkUI.Full
508   * @crossplatform
509   * @since 10
510   */
511  /**
512   * The value of navigation menu item.
513   *
514   * @type { string }
515   * @syscap SystemCapability.ArkUI.ArkUI.Full
516   * @crossplatform
517   * @atomicservice
518   * @since 11
519   */
520  /**
521   * The value of navigation menu item.
522   *
523   * @type { string | Resource }
524   * @syscap SystemCapability.ArkUI.ArkUI.Full
525   * @crossplatform
526   * @atomicservice
527   * @since 13
528   */
529  value: string | Resource;
530
531  /**
532   * The icon of navigation menu item.
533   *
534   * @type { ?string }
535   * @syscap SystemCapability.ArkUI.ArkUI.Full
536   * @since 8
537   */
538  /**
539   * The icon of navigation menu item.
540   *
541   * @type { ?string }
542   * @syscap SystemCapability.ArkUI.ArkUI.Full
543   * @crossplatform
544   * @since 10
545   */
546  /**
547   * The icon of navigation menu item.
548   *
549   * @type { ?string }
550   * @syscap SystemCapability.ArkUI.ArkUI.Full
551   * @crossplatform
552   * @atomicservice
553   * @since 11
554   */
555  /**
556   * The value of navigation menu item.
557   *
558   * @type { ?(string | Resource) }
559   * @syscap SystemCapability.ArkUI.ArkUI.Full
560   * @crossplatform
561   * @atomicservice
562   * @since 13
563   */
564  icon?: string | Resource;
565
566  /**
567   * The symbol of navigation menu item.
568   *
569   * @type { ?SymbolGlyphModifier }
570   * @syscap SystemCapability.ArkUI.ArkUI.Full
571   * @crossplatform
572   * @atomicservice
573   * @since 12
574   */
575  symbolIcon?: SymbolGlyphModifier;
576
577  /**
578   * Whether to enable this menu item.
579   *
580   * @type { ?boolean }
581   * @syscap SystemCapability.ArkUI.ArkUI.Full
582   * @crossplatform
583   * @atomicservice
584   * @since 12
585   */
586  isEnabled?: boolean;
587
588  /**
589   * Trigger by navigation menu item click.
590   *
591   * @type { ?(() => void) }
592   * @syscap SystemCapability.ArkUI.ArkUI.Full
593   * @since 8
594   */
595  /**
596   * Trigger by navigation menu item click.
597   *
598   * @type { ?function }
599   * @syscap SystemCapability.ArkUI.ArkUI.Full
600   * @crossplatform
601   * @since 10
602   */
603  /**
604   * Trigger by navigation menu item click.
605   *
606   * @type { ?function }
607   * @syscap SystemCapability.ArkUI.ArkUI.Full
608   * @crossplatform
609   * @atomicservice
610   * @since 11
611   */
612  action?: () => void;
613}
614
615/**
616 * Indicates the information of the popped page.
617 *
618 * @interface PopInfo
619 * @syscap SystemCapability.ArkUI.ArkUI.Full
620 * @crossplatform
621 * @since 11
622 */
623/**
624 * Indicates the information of the popped page.
625 *
626 * @interface PopInfo
627 * @syscap SystemCapability.ArkUI.ArkUI.Full
628 * @crossplatform
629 * @atomicservice
630 * @since 12
631 */
632declare interface PopInfo {
633  /**
634   * The info of the popped page.
635   *
636   * @type { NavPathInfo }
637   * @syscap SystemCapability.ArkUI.ArkUI.Full
638   * @crossplatform
639   * @since 11
640   */
641  /**
642   * The info of the popped page.
643   *
644   * @type { NavPathInfo }
645   * @syscap SystemCapability.ArkUI.ArkUI.Full
646   * @crossplatform
647   * @atomicservice
648   * @since 12
649   */
650  info: NavPathInfo;
651
652  /**
653   * The result of the popped page.
654   *
655   * @type { Object }
656   * @syscap SystemCapability.ArkUI.ArkUI.Full
657   * @crossplatform
658   * @since 11
659   */
660  /**
661   * The result of the popped page.
662   *
663   * @type { Object }
664   * @syscap SystemCapability.ArkUI.ArkUI.Full
665   * @crossplatform
666   * @atomicservice
667   * @since 12
668   */
669  result: Object;
670}
671
672/**
673 * Indicates the information of NavDestination.
674 *
675 * @syscap SystemCapability.ArkUI.ArkUI.Full
676 * @crossplatform
677 * @since 10
678 */
679/**
680 * Indicates the information of NavDestination.
681 *
682 * @syscap SystemCapability.ArkUI.ArkUI.Full
683 * @crossplatform
684 * @atomicservice
685 * @since 11
686 */
687declare class NavPathInfo {
688  /**
689   * Creates an instance of NavPathInfo.
690   *
691   * @param { string } name - The name of NavDestination.
692   * @param { unknown } param - The detailed parameter of the NavDestination.
693   * @syscap SystemCapability.ArkUI.ArkUI.Full
694   * @crossplatform
695   * @since 10
696   */
697  /**
698   * Creates an instance of NavPathInfo.
699   *
700   * @param { string } name - The name of NavDestination.
701   * @param { unknown } param - The detailed parameter of the NavDestination.
702   * @param { ?import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
703   * @syscap SystemCapability.ArkUI.ArkUI.Full
704   * @crossplatform
705   * @atomicservice
706   * @since 11
707   */
708  /**
709   * Creates an instance of NavPathInfo.
710   *
711   * @param { string } name - The name of NavDestination.
712   * @param { unknown } param - The detailed parameter of the NavDestination.
713   * @param { ?import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
714   * @param { ?boolean } isEntry - Indicates whether it is an entry destination.
715   * @syscap SystemCapability.ArkUI.ArkUI.Full
716   * @crossplatform
717   * @atomicservice
718   * @since 12
719   */
720  constructor(name: string, param: unknown, onPop?: import('../api/@ohos.base').Callback<PopInfo>, isEntry?: boolean);
721
722  /**
723   * The name of NavDestination.
724   *
725   * @type { string }
726   * @syscap SystemCapability.ArkUI.ArkUI.Full
727   * @crossplatform
728   * @since 10
729   */
730  /**
731   * The name of NavDestination.
732   *
733   * @type { string }
734   * @syscap SystemCapability.ArkUI.ArkUI.Full
735   * @crossplatform
736   * @atomicservice
737   * @since 11
738   */
739  name: string;
740
741  /**
742   * The detailed parameter of the NavDestination.
743   *
744   * @type { ?unknown }
745   * @syscap SystemCapability.ArkUI.ArkUI.Full
746   * @crossplatform
747   * @since 10
748   */
749  /**
750   * The detailed parameter of the NavDestination.
751   *
752   * @type { ?unknown }
753   * @syscap SystemCapability.ArkUI.ArkUI.Full
754   * @crossplatform
755   * @atomicservice
756   * @since 11
757   */
758  param?: unknown;
759
760  /**
761   * The callback when next page returns.
762   *
763   * @type { ?import('../api/@ohos.base').Callback<PopInfo> }
764   * @syscap SystemCapability.ArkUI.ArkUI.Full
765   * @crossplatform
766   * @since 11
767   */
768  /**
769   * The callback when next page returns.
770   *
771   * @type { ?import('../api/@ohos.base').Callback<PopInfo> }
772   * @syscap SystemCapability.ArkUI.ArkUI.Full
773   * @crossplatform
774   * @atomicservice
775   * @since 12
776   */
777  onPop?: import('../api/@ohos.base').Callback<PopInfo>;
778
779  /**
780   * Indicates whether it is an entry destination.
781   *
782   * @type { ?boolean }
783   * @syscap SystemCapability.ArkUI.ArkUI.Full
784   * @crossplatform
785   * @atomicservice
786   * @since 12
787   */
788  isEntry?: boolean;
789}
790
791/**
792 * Defines the mode of stack operation.
793 *
794 * @enum { number }
795 * @syscap SystemCapability.ArkUI.ArkUI.Full
796 * @crossplatform
797 * @atomicservice
798 * @since 12
799 */
800declare enum LaunchMode {
801  /**
802   * The default mode of stack operation.
803   *
804   * @syscap SystemCapability.ArkUI.ArkUI.Full
805   * @crossplatform
806   * @atomicservice
807   * @since 12
808   */
809  STANDARD = 0,
810
811  /**
812   * When the NavDestination with a specified name exists, it will be moved to top of stack,
813   * otherwise, the behavior will be consistent with the STANDARD mode.
814   *
815   * @syscap SystemCapability.ArkUI.ArkUI.Full
816   * @crossplatform
817   * @atomicservice
818   * @since 12
819   */
820  MOVE_TO_TOP_SINGLETON = 1,
821
822  /**
823   * When the NavDestination with a specified name exists, the stack will pop until that NavDestination,
824   * otherwise, the behavior will be consistent with the STANDARD mode.
825   *
826   * @syscap SystemCapability.ArkUI.ArkUI.Full
827   * @crossplatform
828   * @atomicservice
829   * @since 12
830   */
831  POP_TO_SINGLETON = 2,
832  
833  /**
834   * Forced to create a new NavDestination instance.
835   *
836   * @syscap SystemCapability.ArkUI.ArkUI.Full
837   * @crossplatform
838   * @atomicservice
839   * @since 12
840   */
841  NEW_INSTANCE = 3,
842}
843
844/**
845 * Indicates the options of stack operation.
846 *
847 * @interface NavigationOptions
848 * @syscap SystemCapability.ArkUI.ArkUI.Full
849 * @crossplatform
850 * @atomicservice
851 * @since 12
852 */
853declare interface NavigationOptions {
854  /**
855   * Indicates the launchMode of stack operation.
856   *
857   * @type { ?LaunchMode }
858   * @syscap SystemCapability.ArkUI.ArkUI.Full
859   * @crossplatform
860   * @atomicservice
861   * @since 12
862   */
863  launchMode?: LaunchMode;
864
865  /**
866   * Indicates whether the transition is animated.
867   *
868   * @type { ?boolean }
869   * @syscap SystemCapability.ArkUI.ArkUI.Full
870   * @crossplatform
871   * @atomicservice
872   * @since 12
873   */
874  animated?: boolean;
875}
876
877/**
878 * Indicates the information of NavDestinations. Providers methods for controlling destination page in the stack
879 *
880 * @syscap SystemCapability.ArkUI.ArkUI.Full
881 * @crossplatform
882 * @since 10
883 */
884/**
885 * Indicates the information of NavDestinations. Providers methods for controlling destination page in the stack
886 *
887 * @syscap SystemCapability.ArkUI.ArkUI.Full
888 * @crossplatform
889 * @atomicservice
890 * @since 11
891 */
892declare class NavPathStack {
893  /**
894   * Creates an instance of NavPathStack.
895   *
896   * @syscap SystemCapability.ArkUI.ArkUI.Full
897   * @crossplatform
898   * @since 10
899   */
900  /**
901   * Creates an instance of NavPathStack.
902   *
903   * @syscap SystemCapability.ArkUI.ArkUI.Full
904   * @crossplatform
905   * @atomicservice
906   * @since 11
907   */
908  constructor();
909
910  /**
911   * Pushes the NavDestination into the stack.
912   *
913   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
914   * @syscap SystemCapability.ArkUI.ArkUI.Full
915   * @crossplatform
916   * @since 10
917   */
918  /**
919   * Pushes the NavDestination into the stack.
920   *
921   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
922   * @param { boolean } [animated] - Indicates whether the transition is animated.
923   * @syscap SystemCapability.ArkUI.ArkUI.Full
924   * @crossplatform
925   * @atomicservice
926   * @since 11
927   */
928  pushPath(info: NavPathInfo, animated?: boolean): void;
929
930  /**
931   * Pushes the NavDestination into the stack.
932   *
933   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
934   * @param { NavigationOptions } [options] - Indicates options of stack operation.
935   * @syscap SystemCapability.ArkUI.ArkUI.Full
936   * @crossplatform
937   * @atomicservice
938   * @since 12
939   */
940  pushPath(info: NavPathInfo, options?: NavigationOptions): void;
941
942  /**
943   * Pushes the NavDestination into the stack.
944   *
945   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
946   * @param { boolean } [animated] - Indicates whether the transition is animated.
947   * @returns { Promise<void> } The promise returned by the function.
948   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
949   *     1. Mandatory parameters are left unspecified.
950   *     2. Incorrect parameters types.
951   *     3. Parameter verification failed.
952   * @throws { BusinessError } 100001 - Internal error.
953   * @throws { BusinessError } 100005 - Builder function not registered.
954   * @throws { BusinessError } 100006 - NavDestination not found.
955   * @syscap SystemCapability.ArkUI.ArkUI.Full
956   * @crossplatform
957   * @since 11
958   */
959  /**
960   * Pushes the NavDestination into the stack.
961   *
962   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
963   * @param { boolean } [animated] - Indicates whether the transition is animated.
964   * @returns { Promise<void> } The promise returned by the function.
965   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
966   *     1. Mandatory parameters are left unspecified.
967   *     2. Incorrect parameters types.
968   *     3. Parameter verification failed.
969   * @throws { BusinessError } 100001 - Internal error.
970   * @throws { BusinessError } 100005 - Builder function not registered.
971   * @throws { BusinessError } 100006 - NavDestination not found.
972   * @syscap SystemCapability.ArkUI.ArkUI.Full
973   * @crossplatform
974   * @atomicservice
975   * @since 12
976   */
977  pushDestination(info: NavPathInfo, animated?: boolean): Promise<void>;
978
979  /**
980   * Pushes the NavDestination into the stack.
981   *
982   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
983   * @param { NavigationOptions } [options] - Indicates options of stack operation.
984   * @returns { Promise<void> } The promise returned by the function.
985   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
986   *     1. Mandatory parameters are left unspecified.
987   *     2. Incorrect parameters types.
988   *     3. Parameter verification failed.
989   * @throws { BusinessError } 100001 - Internal error.
990   * @throws { BusinessError } 100005 - Builder function not registered.
991   * @throws { BusinessError } 100006 - NavDestination not found.
992   * @syscap SystemCapability.ArkUI.ArkUI.Full
993   * @crossplatform
994   * @atomicservice
995   * @since 12
996   */
997  pushDestination(info: NavPathInfo, options?: NavigationOptions): Promise<void>;
998
999  /**
1000   * Pushes the specified NavDestination into the stack.
1001   *
1002   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1003   * @param { unknown } param - Indicates the detailed parameter of the NavDestination to be pushed.
1004   * @syscap SystemCapability.ArkUI.ArkUI.Full
1005   * @crossplatform
1006   * @since 10
1007   */
1008  /**
1009   * Pushes the specified NavDestination into the stack.
1010   *
1011   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1012   * @param { unknown } param - Indicates the detailed parameter of the NavDestination to be pushed.
1013   * @param { boolean } [animated] - Indicates whether the transition is animated.
1014   * @syscap SystemCapability.ArkUI.ArkUI.Full
1015   * @crossplatform
1016   * @atomicservice
1017   * @since 11
1018   */
1019  pushPathByName(name: string, param: unknown, animated?: boolean): void;
1020
1021  /**
1022   * Pushes the specified NavDestination into the stack.
1023   *
1024   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1025   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
1026   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
1027   * @param { boolean } [animated] - Indicates whether the transition is animated.
1028   * @syscap SystemCapability.ArkUI.ArkUI.Full
1029   * @crossplatform
1030   * @since 11
1031   */
1032  /**
1033   * Pushes the specified NavDestination into the stack.
1034   *
1035   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1036   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
1037   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
1038   * @param { boolean } [animated] - Indicates whether the transition is animated.
1039   * @syscap SystemCapability.ArkUI.ArkUI.Full
1040   * @crossplatform
1041   * @atomicservice
1042   * @since 12
1043   */
1044  pushPathByName(name: string, param: Object, onPop: import('../api/@ohos.base').Callback<PopInfo>, animated?: boolean): void;
1045
1046  /**
1047   * Pushes the specified NavDestination into the stack.
1048   *
1049   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1050   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
1051   * @param { boolean } [animated] - Indicates whether the transition is animated.
1052   * @returns { Promise<void> } The promise returned by the function.
1053   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
1054   *     1. Mandatory parameters are left unspecified.
1055   *     2. Incorrect parameters types.
1056   *     3. Parameter verification failed.
1057   * @throws { BusinessError } 100001 - Internal error.
1058   * @throws { BusinessError } 100005 - Builder function not registered.
1059   * @throws { BusinessError } 100006 - NavDestination not found.
1060   * @syscap SystemCapability.ArkUI.ArkUI.Full
1061   * @crossplatform
1062   * @since 11
1063   */
1064  /**
1065   * Pushes the specified NavDestination into the stack.
1066   *
1067   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1068   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
1069   * @param { boolean } [animated] - Indicates whether the transition is animated.
1070   * @returns { Promise<void> } The promise returned by the function.
1071   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
1072   *     1. Mandatory parameters are left unspecified.
1073   *     2. Incorrect parameters types.
1074   *     3. Parameter verification failed.
1075   * @throws { BusinessError } 100001 - Internal error.
1076   * @throws { BusinessError } 100005 - Builder function not registered.
1077   * @throws { BusinessError } 100006 - NavDestination not found.
1078   * @syscap SystemCapability.ArkUI.ArkUI.Full
1079   * @crossplatform
1080   * @atomicservice
1081   * @since 12
1082   */
1083  pushDestinationByName(name: string, param: Object, animated?: boolean): Promise<void>;
1084
1085  /**
1086   * Pushes the specified NavDestination into the stack.
1087   *
1088   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1089   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
1090   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
1091   * @param { boolean } [animated] - Indicates whether the transition is animated.
1092   * @returns { Promise<void> } The promise returned by the function.
1093   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
1094   *     1. Mandatory parameters are left unspecified.
1095   *     2. Incorrect parameters types.
1096   *     3. Parameter verification failed.
1097   * @throws { BusinessError } 100001 - Internal error.
1098   * @throws { BusinessError } 100005 - Builder function not registered.
1099   * @throws { BusinessError } 100006 - NavDestination not found.
1100   * @syscap SystemCapability.ArkUI.ArkUI.Full
1101   * @crossplatform
1102   * @since 11
1103   */
1104  /**
1105   * Pushes the specified NavDestination into the stack.
1106   *
1107   * @param { string } name - Indicates the name of the NavDestination to be pushed.
1108   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
1109   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
1110   * @param { boolean } [animated] - Indicates whether the transition is animated.
1111   * @returns { Promise<void> } The promise returned by the function.
1112   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
1113   *     1. Mandatory parameters are left unspecified.
1114   *     2. Incorrect parameters types.
1115   *     3. Parameter verification failed.
1116   * @throws { BusinessError } 100001 - Internal error.
1117   * @throws { BusinessError } 100005 - Builder function not registered.
1118   * @throws { BusinessError } 100006 - NavDestination not found.
1119   * @syscap SystemCapability.ArkUI.ArkUI.Full
1120   * @crossplatform
1121   * @atomicservice
1122   * @since 12
1123   */
1124  pushDestinationByName(name: string, param: Object, onPop: import('../api/@ohos.base').Callback<PopInfo>, animated?: boolean): Promise<void>;
1125
1126  /**
1127   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
1128   *
1129   * @param { NavPathInfo } info - Indicates the new NavDestination in top of the stack.
1130   * @param { boolean } [animated] - Indicates whether the transition is animated.
1131   * @syscap SystemCapability.ArkUI.ArkUI.Full
1132   * @crossplatform
1133   * @since 11
1134   */
1135  /**
1136   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
1137   *
1138   * @param { NavPathInfo } info - Indicates the new NavDestination in top of the stack.
1139   * @param { boolean } [animated] - Indicates whether the transition is animated.
1140   * @syscap SystemCapability.ArkUI.ArkUI.Full
1141   * @crossplatform
1142   * @atomicservice
1143   * @since 12
1144   */
1145  replacePath(info: NavPathInfo, animated?: boolean): void;
1146
1147  /**
1148   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
1149   *
1150   * @param { NavPathInfo } info - Indicates the new NavDestination in top of the stack.
1151   * @param { NavigationOptions } [options] - Indicates options of stack operation.
1152   * @syscap SystemCapability.ArkUI.ArkUI.Full
1153   * @crossplatform
1154   * @atomicservice
1155   * @since 12
1156   */
1157  replacePath(info: NavPathInfo, options?: NavigationOptions): void;
1158
1159  /**
1160   * Replace the NavDestination into the stack.
1161   *
1162   * @param { NavPathInfo } info - Indicates the NavDestination to replace in stack.
1163   * @param { NavigationOptions } [options] - Indicates options of stack operation.
1164   * @returns { Promise<void> } The promise returned by the function.
1165   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
1166   *     1. Mandatory parameters are left unspecified.
1167   *     2. Incorrect parameters types.
1168   *     3. Parameter verification failed.
1169   * @throws { BusinessError } 100001 - Internal error.
1170   * @throws { BusinessError } 100005 - Builder function not registered.
1171   * @throws { BusinessError } 100006 - NavDestination not found.
1172   * @syscap SystemCapability.ArkUI.ArkUI.Full
1173   * @crossplatform
1174   * @atomicservice
1175   * @since 14
1176   */
1177  replaceDestination(info: NavPathInfo, options?: NavigationOptions): Promise<void>;
1178
1179  /**
1180   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
1181   *
1182   * @param { string } name - Indicates name of the new NavDestination in top of stack.
1183   * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack.
1184   * @param { boolean } [animated] - Indicates whether the transition is animated.
1185   * @syscap SystemCapability.ArkUI.ArkUI.Full
1186   * @crossplatform
1187   * @since 11
1188   */
1189  /**
1190   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
1191   *
1192   * @param { string } name - Indicates name of the new NavDestination in top of stack.
1193   * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack.
1194   * @param { boolean } [animated] - Indicates whether the transition is animated.
1195   * @syscap SystemCapability.ArkUI.ArkUI.Full
1196   * @crossplatform
1197   * @atomicservice
1198   * @since 12
1199   */
1200  replacePathByName(name: string, param: Object, animated?: boolean): void;
1201
1202  /**
1203   * Remove the specified NavDestinations by indexes.
1204   *
1205   * @param { Array<number> } indexes - Indicates the indexes of the NavDestinations to be removed.
1206   * @returns { number } Returns the number of removed pages. Invalid indexes will be ignored.
1207   * @syscap SystemCapability.ArkUI.ArkUI.Full
1208   * @crossplatform
1209   * @since 11
1210   */
1211  /**
1212   * Remove the specified NavDestinations by indexes.
1213   *
1214   * @param { Array<number> } indexes - Indicates the indexes of the NavDestinations to be removed.
1215   * @returns { number } Returns the number of removed pages. Invalid indexes will be ignored.
1216   * @syscap SystemCapability.ArkUI.ArkUI.Full
1217   * @crossplatform
1218   * @atomicservice
1219   * @since 12
1220   */
1221  removeByIndexes(indexes: Array<number>): number;
1222
1223  /**
1224   * Remove the specified NavDestination by name.
1225   *
1226   * @param { string } name - Indicates the name of the NavDestination to be removed.
1227   * @returns { number } Returns the number of removed NavDestinations.
1228   * @syscap SystemCapability.ArkUI.ArkUI.Full
1229   * @crossplatform
1230   * @since 11
1231   */
1232  /**
1233   * Remove the specified NavDestination by name.
1234   *
1235   * @param { string } name - Indicates the name of the NavDestination to be removed.
1236   * @returns { number } Returns the number of removed NavDestinations.
1237   * @syscap SystemCapability.ArkUI.ArkUI.Full
1238   * @crossplatform
1239   * @atomicservice
1240   * @since 12
1241   */
1242  removeByName(name: string): number;
1243
1244  /**
1245   * Remove the specified NavDestination by its navDestinationId.
1246   *
1247   * @param { string } navDestinationId - Indicates the navDestinationId of the NavDestination to be removed.
1248   * @returns { boolean } Returns true if remove successfully, otherwise returns false.
1249   * @syscap SystemCapability.ArkUI.ArkUI.Full
1250   * @crossplatform
1251   * @atomicservice
1252   * @since 12
1253   */
1254  removeByNavDestinationId(navDestinationId: string): boolean;
1255
1256  /**
1257   * Pops the top NavDestination out of the stack.
1258   *
1259   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1260   * @syscap SystemCapability.ArkUI.ArkUI.Full
1261   * @crossplatform
1262   * @since 10
1263   */
1264  /**
1265   * Pops the top NavDestination out of the stack.
1266   *
1267   * @param { boolean } [animated] - Indicates whether the transition is animated.
1268   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1269   * @syscap SystemCapability.ArkUI.ArkUI.Full
1270   * @crossplatform
1271   * @atomicservice
1272   * @since 11
1273   */
1274  pop(animated?: boolean): NavPathInfo | undefined;
1275
1276  /**
1277   * Pops the top NavDestination out of the stack.
1278   *
1279   * @param { Object } result - The result of the NavDestination.
1280   * @param { boolean } [animated] - Indicates whether the transition is animated.
1281   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1282   * @syscap SystemCapability.ArkUI.ArkUI.Full
1283   * @crossplatform
1284   * @since 11
1285   */
1286  /**
1287   * Pops the top NavDestination out of the stack.
1288   *
1289   * @param { Object } result - The result of the NavDestination.
1290   * @param { boolean } [animated] - Indicates whether the transition is animated.
1291   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1292   * @syscap SystemCapability.ArkUI.ArkUI.Full
1293   * @crossplatform
1294   * @atomicservice
1295   * @since 12
1296   */
1297  pop(result: Object, animated?: boolean): NavPathInfo | undefined;
1298
1299  /**
1300   * Pops the specified NavDestination out of the stack.
1301   *
1302   * @param { string } name - Indicates the name of the NavDestination to be popped.
1303   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1304   * @syscap SystemCapability.ArkUI.ArkUI.Full
1305   * @crossplatform
1306   * @since 10
1307   */
1308  /**
1309   * Pops the specified NavDestination out of the stack.
1310   *
1311   * @param { string } name - Indicates the name of the NavDestination to be popped.
1312   * @param { boolean } [animated] - Indicates whether the transition is animated.
1313   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1314   * @syscap SystemCapability.ArkUI.ArkUI.Full
1315   * @crossplatform
1316   * @atomicservice
1317   * @since 11
1318   */
1319  popToName(name: string, animated?: boolean): number;
1320
1321  /**
1322   * Pops the specified NavDestination out of the stack.
1323   *
1324   * @param { string } name - Indicates the name of the NavDestination to be popped.
1325   * @param { Object } result - The result of the NavDestination.
1326   * @param { boolean } [animated] - Indicates whether the transition is animated.
1327   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1328   * @syscap SystemCapability.ArkUI.ArkUI.Full
1329   * @crossplatform
1330   * @since 11
1331   */
1332  /**
1333   * Pops the specified NavDestination out of the stack.
1334   *
1335   * @param { string } name - Indicates the name of the NavDestination to be popped.
1336   * @param { Object } result - The result of the NavDestination.
1337   * @param { boolean } [animated] - Indicates whether the transition is animated.
1338   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1339   * @syscap SystemCapability.ArkUI.ArkUI.Full
1340   * @crossplatform
1341   * @atomicservice
1342   * @since 12
1343   */
1344  popToName(name: string, result: Object, animated?: boolean): number;
1345
1346  /**
1347   * Pops the specified NavDestination out of the stack.
1348   *
1349   * @param { number } index - Indicates the index of the NavDestination to be popped.
1350   * @syscap SystemCapability.ArkUI.ArkUI.Full
1351   * @crossplatform
1352   * @since 10
1353   */
1354  /**
1355   * Pops the specified NavDestination out of the stack.
1356   *
1357   * @param { number } index - Indicates the index of the NavDestination to be popped.
1358   * @param { boolean } [animated] - Indicates whether the transition is animated.
1359   * @syscap SystemCapability.ArkUI.ArkUI.Full
1360   * @crossplatform
1361   * @atomicservice
1362   * @since 11
1363   */
1364  popToIndex(index: number, animated?: boolean): void;
1365
1366  /**
1367   * Pops the specified NavDestination out of the stack.
1368   *
1369   * @param { number } index - Indicates the index of the NavDestination to be popped.
1370   * @param { Object } result - The result of the NavDestination.
1371   * @param { boolean } [animated] - Indicates whether the transition is animated.
1372   * @syscap SystemCapability.ArkUI.ArkUI.Full
1373   * @crossplatform
1374   * @atomicservice
1375   * @since 11
1376   */
1377  popToIndex(index: number, result: Object, animated?: boolean): void;
1378
1379  /**
1380   * Moves the specified NavDestination to stack top.
1381   *
1382   * @param { string } name - Indicates the name of the NavDestination to be moved to the top.
1383   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1384   * @syscap SystemCapability.ArkUI.ArkUI.Full
1385   * @crossplatform
1386   * @since 10
1387   */
1388  /**
1389   * Moves the specified NavDestination to stack top.
1390   *
1391   * @param { string } name - Indicates the name of the NavDestination to be moved to the top.
1392   * @param { boolean } [animated] - Indicates whether the transition is animated.
1393   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1394   * @syscap SystemCapability.ArkUI.ArkUI.Full
1395   * @crossplatform
1396   * @atomicservice
1397   * @since 11
1398   */
1399  moveToTop(name: string, animated?: boolean): number;
1400
1401  /**
1402   * Moves the specified NavDestination to stack top.
1403   *
1404   * @param { number } index - Indicates the index of the NavDestination to be moved to the top.
1405   * @syscap SystemCapability.ArkUI.ArkUI.Full
1406   * @crossplatform
1407   * @since 10
1408   */
1409  /**
1410   * Moves the specified NavDestination to stack top.
1411   *
1412   * @param { number } index - Indicates the index of the NavDestination to be moved to the top.
1413   * @param { boolean } [animated] - Indicates whether the transition is animated.
1414   * @syscap SystemCapability.ArkUI.ArkUI.Full
1415   * @crossplatform
1416   * @atomicservice
1417   * @since 11
1418   */
1419  moveIndexToTop(index: number, animated?: boolean): void;
1420
1421  /**
1422   * Clears the stack.
1423   *
1424   * @syscap SystemCapability.ArkUI.ArkUI.Full
1425   * @crossplatform
1426   * @since 10
1427   */
1428  /**
1429   * Clears the stack.
1430   *
1431   * @param { boolean } [animated] - Indicates whether the transition is animated.
1432   * @syscap SystemCapability.ArkUI.ArkUI.Full
1433   * @crossplatform
1434   * @atomicservice
1435   * @since 11
1436   */
1437  clear(animated?: boolean): void;
1438
1439  /**
1440   * Obtains all the NavDestination name in the stack.
1441   *
1442   * @returns { Array<string> } Returns all the NavDestination name in the stack;
1443   * @syscap SystemCapability.ArkUI.ArkUI.Full
1444   * @crossplatform
1445   * @since 10
1446   */
1447  /**
1448   * Obtains all the NavDestination name in the stack.
1449   *
1450   * @returns { Array<string> } Returns all the NavDestination name in the stack;
1451   * @syscap SystemCapability.ArkUI.ArkUI.Full
1452   * @crossplatform
1453   * @atomicservice
1454   * @since 11
1455   */
1456  getAllPathName(): Array<string>;
1457
1458  /**
1459   * Obtains the param of the specified NavDestination.
1460   *
1461   * @param { number } index - Indicates the index of the NavDestination.
1462   * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined;
1463   * @syscap SystemCapability.ArkUI.ArkUI.Full
1464   * @crossplatform
1465   * @since 10
1466   */
1467  /**
1468   * Obtains the param of the specified NavDestination.
1469   *
1470   * @param { number } index - Indicates the index of the NavDestination.
1471   * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined;
1472   * @syscap SystemCapability.ArkUI.ArkUI.Full
1473   * @crossplatform
1474   * @atomicservice
1475   * @since 11
1476   */
1477  getParamByIndex(index: number): unknown | undefined;
1478
1479  /**
1480   * Obtains the param of the specified NavDestination.
1481   *
1482   * @param { string } name - Indicates the name of the NavDestination.
1483   * @returns { Array<unknown> } Returns the detailed parameter of all the NavDestinations.
1484   * @syscap SystemCapability.ArkUI.ArkUI.Full
1485   * @crossplatform
1486   * @since 10
1487   */
1488  /**
1489   * Obtains the param of the specified NavDestination.
1490   *
1491   * @param { string } name - Indicates the name of the NavDestination.
1492   * @returns { Array<unknown> } Returns the detailed parameter of all the NavDestinations.
1493   * @syscap SystemCapability.ArkUI.ArkUI.Full
1494   * @crossplatform
1495   * @atomicservice
1496   * @since 11
1497   */
1498  getParamByName(name: string): Array<unknown>;
1499
1500  /**
1501   * Obtains the index of the specified NavDestination.
1502   *
1503   * @param { string } name - Indicates the name of the NavDestination.
1504   * @returns { Array<number> } Returns the index of all the NavDestinations.
1505   * @syscap SystemCapability.ArkUI.ArkUI.Full
1506   * @crossplatform
1507   * @since 10
1508   */
1509  /**
1510   * Obtains the index of the specified NavDestination.
1511   *
1512   * @param { string } name - Indicates the name of the NavDestination.
1513   * @returns { Array<number> } Returns the index of all the NavDestinations.
1514   * @syscap SystemCapability.ArkUI.ArkUI.Full
1515   * @crossplatform
1516   * @atomicservice
1517   * @since 11
1518   */
1519  getIndexByName(name: string): Array<number>;
1520
1521  /**
1522   * Obtains the parent of the current stack.
1523   *
1524   * @returns { NavPathStack | null } Returns the parent of the current stack. If no parent, it returns null.
1525   * @syscap SystemCapability.ArkUI.ArkUI.Full
1526   * @crossplatform
1527   * @atomicservice
1528   * @since 11
1529   */
1530  getParent(): NavPathStack | null;
1531
1532  /**
1533   * Obtains the size of the stack.
1534   *
1535   * @returns { number } Returns the size of the stack.
1536   * @syscap SystemCapability.ArkUI.ArkUI.Full
1537   * @crossplatform
1538   * @since 10
1539   */
1540  /**
1541   * Obtains the size of the stack.
1542   *
1543   * @returns { number } Returns the size of the stack.
1544   * @syscap SystemCapability.ArkUI.ArkUI.Full
1545   * @crossplatform
1546   * @atomicservice
1547   * @since 11
1548   */
1549  size(): number;
1550
1551  /**
1552   * disable or enable all transition animation in this navigation stack.
1553   *
1554   * @param { boolean } value - Indicates whether the transition is animated.
1555   * @syscap SystemCapability.ArkUI.ArkUI.Full
1556   * @crossplatform
1557   * @since 11
1558   */
1559  /**
1560   * disable or enable all transition animation in this navigation stack.
1561   *
1562   * @param { boolean } value - Indicates whether the transition is animated.
1563   * @syscap SystemCapability.ArkUI.ArkUI.Full
1564   * @crossplatform
1565   * @atomicservice
1566   * @since 12
1567   */
1568  disableAnimation(value: boolean): void;
1569
1570  /**
1571   * set navigation transition interception.It will be called in navPathStack changes or navigation mode changes.
1572   *
1573   * @param { NavigationInterception } interception - the instance to intercept in navigation changes.
1574   * @syscap SystemCapability.ArkUI.ArkUI.Full
1575   * @crossplatform
1576   * @atomicservice
1577   * @since 12
1578   */
1579  setInterception(interception: NavigationInterception): void;
1580}
1581
1582/**
1583 * Navigation home name
1584 *
1585 * @typedef { 'navBar' } NavBar
1586 * @syscap SystemCapability.ArkUI.ArkUI.Full
1587 * @crossplatform
1588 * @atomicservice
1589 * @since 12
1590 */
1591declare type NavBar = 'navBar'
1592
1593/**
1594 * navigation interception callback using in willShow and didShow
1595 *
1596 * @typedef { function } InterceptionShowCallback
1597 * @param { NavDestinationContext | NavBar } from - Indicates the starting NavDestination or NavBar.
1598 * @param { NavDestinationContext | NavBar } to - Indicates the destination NavDestination or NavBar.
1599 * @param { NavigationOperation } operation - Indicates the type of stack operation.
1600 * @param { boolean } isAnimated - Indicates whether the transition is animated.
1601 * @syscap SystemCapability.ArkUI.ArkUI.Full
1602 * @crossplatform
1603 * @atomicservice
1604 * @since 12
1605 */
1606declare type InterceptionShowCallback = (from: NavDestinationContext|NavBar, to: NavDestinationContext|NavBar, operation: NavigationOperation, isAnimated: boolean) => void;
1607
1608/**
1609 * navigation interception callback using in navigation mode change
1610 *
1611 * @typedef { function } InterceptionModeCallback
1612 * @param { NavigationMode } mode - Indicates the mode of Navigation.
1613 * @syscap SystemCapability.ArkUI.ArkUI.Full
1614 * @crossplatform
1615 * @atomicservice
1616 * @since 12
1617 */
1618declare type InterceptionModeCallback = (mode: NavigationMode) => void;
1619
1620/**
1621 * Provide navigation transition interception
1622 *
1623 * @interface NavigationInterception
1624 * @syscap SystemCapability.ArkUI.ArkUI.Full
1625 * @crossplatform
1626 * @atomicservice
1627 * @since 12
1628 */
1629declare interface NavigationInterception {
1630  /**
1631   * Called before destination transition.NavPathStack can be changed in this callback,
1632   * it will takes effect during this transition.For details, see { @Link InterceptionShowCallback}.
1633   *
1634   * @type { ?InterceptionShowCallback }
1635   * @syscap SystemCapability.ArkUI.ArkUI.Full
1636   * @crossplatform
1637   * @atomicservice
1638   * @since 12
1639   */
1640  willShow?: InterceptionShowCallback;
1641
1642  /**
1643   * Called after destination transition.For details, see { @Link InterceptionShowCallback}.
1644   *
1645   * @type { ?InterceptionShowCallback }
1646   * @syscap SystemCapability.ArkUI.ArkUI.Full
1647   * @crossplatform
1648   * @atomicservice
1649   * @since 12
1650   */
1651  didShow?: InterceptionShowCallback;
1652
1653  /**
1654   * Called when navigation mode changed.For details, see { @Link InterceptionModeCallback}.
1655   *
1656   * @type { ?InterceptionModeCallback }
1657   * @syscap SystemCapability.ArkUI.ArkUI.Full
1658   * @crossplatform
1659   * @atomicservice
1660   * @since 12
1661   */
1662  modeChange?: InterceptionModeCallback;
1663}
1664
1665/**
1666 * Provide navigator view interface
1667 *
1668 * @interface NavigationInterface
1669 * @syscap SystemCapability.ArkUI.ArkUI.Full
1670 * @since 8
1671 */
1672/**
1673 * Provide navigator view interface
1674 *
1675 * @interface NavigationInterface
1676 * @syscap SystemCapability.ArkUI.ArkUI.Full
1677 * @crossplatform
1678 * @since 10
1679 */
1680/**
1681 * Provide navigator view interface
1682 *
1683 * @interface NavigationInterface
1684 * @syscap SystemCapability.ArkUI.ArkUI.Full
1685 * @crossplatform
1686 * @atomicservice
1687 * @since 11
1688 */
1689interface NavigationInterface {
1690  /**
1691   * Called when the navigator view interface is used.
1692   *
1693   * @returns { NavigationAttribute }
1694   * @syscap SystemCapability.ArkUI.ArkUI.Full
1695   * @since 8
1696   */
1697  /**
1698   * Called when the navigator view interface is used.
1699   *
1700   * @returns { NavigationAttribute }
1701   * @syscap SystemCapability.ArkUI.ArkUI.Full
1702   * @crossplatform
1703   * @since 10
1704   */
1705  /**
1706   * Called when the navigator view interface is used.
1707   *
1708   * @returns { NavigationAttribute }
1709   * @syscap SystemCapability.ArkUI.ArkUI.Full
1710   * @crossplatform
1711   * @atomicservice
1712   * @since 11
1713   */
1714  (): NavigationAttribute;
1715
1716  /**
1717   * Called when the navigator view interface is used, with route table provided.
1718   *
1719   * @param { NavPathStack } pathInfos - The stack of the route table.
1720   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
1721   * @syscap SystemCapability.ArkUI.ArkUI.Full
1722   * @crossplatform
1723   * @since 10
1724   */
1725  /**
1726   * Called when the navigator view interface is used, with route table provided.
1727   *
1728   * @param { NavPathStack } pathInfos - The stack of the route table.
1729   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
1730   * @syscap SystemCapability.ArkUI.ArkUI.Full
1731   * @crossplatform
1732   * @atomicservice
1733   * @since 11
1734   */
1735  (pathInfos: NavPathStack): NavigationAttribute;
1736}
1737
1738/**
1739 * Defines the status of toolbar item and it is used in the ToolbarItem interface.
1740 *
1741 * @enum { number }
1742 * @syscap SystemCapability.ArkUI.ArkUI.Full
1743 * @since 10
1744 */
1745/**
1746 * Defines the status of toolbar item and it is used in the ToolbarItem interface.
1747 *
1748 * @enum { number }
1749 * @syscap SystemCapability.ArkUI.ArkUI.Full
1750 * @crossplatform
1751 * @atomicservice
1752 * @since 11
1753 */
1754declare enum ToolbarItemStatus {
1755  /**
1756   * Normal state of toolbar item.
1757   *
1758   * @syscap SystemCapability.ArkUI.ArkUI.Full
1759   * @since 10
1760   */
1761  /**
1762   * Normal state of toolbar item.
1763   *
1764   * @syscap SystemCapability.ArkUI.ArkUI.Full
1765   * @crossplatform
1766   * @atomicservice
1767   * @since 11
1768   */
1769  NORMAL = 0,
1770
1771  /**
1772   * Disable state of toolbar item.
1773   *
1774   * @syscap SystemCapability.ArkUI.ArkUI.Full
1775   * @since 10
1776   */
1777  /**
1778   * Disable state of toolbar item.
1779   *
1780   * @syscap SystemCapability.ArkUI.ArkUI.Full
1781   * @crossplatform
1782   * @atomicservice
1783   * @since 11
1784   */
1785  DISABLED = 1,
1786
1787  /**
1788   * Active state of toolbar item.
1789   *
1790   * @syscap SystemCapability.ArkUI.ArkUI.Full
1791   * @since 10
1792   */
1793  /**
1794   * Active state of toolbar item.
1795   *
1796   * @syscap SystemCapability.ArkUI.ArkUI.Full
1797   * @crossplatform
1798   * @atomicservice
1799   * @since 11
1800   */
1801  ACTIVE = 2,
1802}
1803
1804/**
1805 * Defines the operation of current navigation transition.
1806 *
1807 * @enum { number }
1808 * @syscap SystemCapability.ArkUI.ArkUI.Full
1809 * @crossplatform
1810 * @since 11
1811 */
1812/**
1813 * Defines the operation of current navigation transition.
1814 *
1815 * @enum { number }
1816 * @syscap SystemCapability.ArkUI.ArkUI.Full
1817 * @crossplatform
1818 * @atomicservice
1819 * @since 12
1820 */
1821declare enum NavigationOperation {
1822  /**
1823   * Push operation of navigation transition.
1824   *
1825   * @syscap SystemCapability.ArkUI.ArkUI.Full
1826   * @crossplatform
1827   * @since 11
1828   */
1829  /**
1830   * Push operation of navigation transition.
1831   *
1832   * @syscap SystemCapability.ArkUI.ArkUI.Full
1833   * @crossplatform
1834   * @atomicservice
1835   * @since 12
1836   */
1837  PUSH = 1,
1838
1839  /**
1840   * Pop operation of navigation transition.
1841   *
1842   * @syscap SystemCapability.ArkUI.ArkUI.Full
1843   * @crossplatform
1844   * @since 11
1845   */
1846  /**
1847   * Pop operation of navigation transition.
1848   *
1849   * @syscap SystemCapability.ArkUI.ArkUI.Full
1850   * @crossplatform
1851   * @atomicservice
1852   * @since 12
1853   */
1854  POP = 2,
1855
1856  /**
1857   * Replace operation of navigation transition.
1858   *
1859   * @syscap SystemCapability.ArkUI.ArkUI.Full
1860   * @crossplatform
1861   * @since 11
1862   */
1863  /**
1864   * Replace operation of navigation transition.
1865   *
1866   * @syscap SystemCapability.ArkUI.ArkUI.Full
1867   * @crossplatform
1868   * @atomicservice
1869   * @since 12
1870   */
1871  REPLACE = 3,
1872}
1873
1874/**
1875 * Defines configurable parameters for toolbar item.
1876 *
1877 * @interface ToolbarItem
1878 * @syscap SystemCapability.ArkUI.ArkUI.Full
1879 * @since 10
1880 */
1881/**
1882 * Defines configurable parameters for toolbar item.
1883 *
1884 * @interface ToolbarItem
1885 * @syscap SystemCapability.ArkUI.ArkUI.Full
1886 * @atomicservice
1887 * @since 11
1888 */
1889declare interface ToolbarItem {
1890  /**
1891   * The value of navigation toolbar item.
1892   *
1893   * @type { ResourceStr }
1894   * @syscap SystemCapability.ArkUI.ArkUI.Full
1895   * @crossplatform
1896   * @since 10
1897   */
1898  /**
1899   * The value of navigation toolbar item.
1900   *
1901   * @type { ResourceStr }
1902   * @syscap SystemCapability.ArkUI.ArkUI.Full
1903   * @crossplatform
1904   * @atomicservice
1905   * @since 11
1906   */
1907  value: ResourceStr;
1908
1909  /**
1910   * The icon of navigation toolbar item.
1911   *
1912   * @type { ?ResourceStr }
1913   * @syscap SystemCapability.ArkUI.ArkUI.Full
1914   * @crossplatform
1915   * @since 10
1916   */
1917  /**
1918   * The icon of navigation toolbar item.
1919   *
1920   * @type { ?ResourceStr }
1921   * @syscap SystemCapability.ArkUI.ArkUI.Full
1922   * @crossplatform
1923   * @atomicservice
1924   * @since 11
1925   */
1926  icon?: ResourceStr;
1927
1928  /**
1929   * The symbol of navigation toolbar item.
1930   *
1931   * @type { ?SymbolGlyphModifier }
1932   * @syscap SystemCapability.ArkUI.ArkUI.Full
1933   * @crossplatform
1934   * @atomicservice
1935   * @since 12
1936   */
1937  symbolIcon?: SymbolGlyphModifier;
1938
1939  /**
1940   * Trigger by navigation toolbar item click.
1941   *
1942   * @type { ?function }
1943   * @syscap SystemCapability.ArkUI.ArkUI.Full
1944   * @crossplatform
1945   * @since 10
1946   */
1947  /**
1948   * Trigger by navigation toolbar item click.
1949   *
1950   * @type { ?function }
1951   * @syscap SystemCapability.ArkUI.ArkUI.Full
1952   * @crossplatform
1953   * @atomicservice
1954   * @since 11
1955   */
1956  action?: () => void;
1957
1958  /**
1959   * The state of navigation toolbar item.
1960   *
1961   * @type { ?ToolbarItemStatus }
1962   * @syscap SystemCapability.ArkUI.ArkUI.Full
1963   * @crossplatform
1964   * @since 10
1965   */
1966  /**
1967   * The state of navigation toolbar item.
1968   *
1969   * @type { ?ToolbarItemStatus }
1970   * @syscap SystemCapability.ArkUI.ArkUI.Full
1971   * @crossplatform
1972   * @atomicservice
1973   * @since 11
1974   */
1975  status?: ToolbarItemStatus;
1976
1977  /**
1978   * The icon of navigation toolbar item in active state.
1979   *
1980   * @type { ?ResourceStr }
1981   * @syscap SystemCapability.ArkUI.ArkUI.Full
1982   * @crossplatform
1983   * @since 10
1984   */
1985  /**
1986   * The icon of navigation toolbar item in active state.
1987   *
1988   * @type { ?ResourceStr }
1989   * @syscap SystemCapability.ArkUI.ArkUI.Full
1990   * @crossplatform
1991   * @atomicservice
1992   * @since 11
1993   */
1994  activeIcon?: ResourceStr;
1995
1996  /**
1997   * The symbol of navigation toolbar item in active state.
1998   *
1999   * @type { ?SymbolGlyphModifier }
2000   * @syscap SystemCapability.ArkUI.ArkUI.Full
2001   * @crossplatform
2002   * @atomicservice
2003   * @since 12
2004   */
2005  activeSymbolIcon?: SymbolGlyphModifier;
2006}
2007
2008/**
2009 * Indicates the options of Navigation's Titlebar.
2010 *
2011 * @interface NavigationTitleOptions
2012 * @syscap SystemCapability.ArkUI.ArkUI.Full
2013 * @crossplatform
2014 * @atomicservice
2015 * @since 11
2016 */
2017declare interface NavigationTitleOptions {
2018  /**
2019   * Background color.
2020   *
2021   * @type { ?ResourceColor }
2022   * @syscap SystemCapability.ArkUI.ArkUI.Full
2023   * @crossplatform
2024   * @atomicservice
2025   * @since 11
2026   */
2027  backgroundColor?: ResourceColor;
2028
2029  /**
2030   * Background blur style.
2031   *
2032   * @type { ?BlurStyle }
2033   * @syscap SystemCapability.ArkUI.ArkUI.Full
2034   * @crossplatform
2035   * @atomicservice
2036   * @since 11
2037   */
2038  backgroundBlurStyle?: BlurStyle;
2039
2040  /**
2041   * Set title bar style.
2042   *
2043   * @type { ?BarStyle }
2044   * @default BarStyle.STANDARD
2045   * @syscap SystemCapability.ArkUI.ArkUI.Full
2046   * @crossplatform
2047   * @atomicservice
2048   * @since 12
2049   */
2050  barStyle?: BarStyle;
2051
2052  /**
2053   * Set title bar start padding.
2054   *
2055   * @type { ?LengthMetrics }
2056   * @default LengthMetrics.resource($r('sys.float.margin_left'))
2057   * @syscap SystemCapability.ArkUI.ArkUI.Full
2058   * @crossplatform
2059   * @atomicservice
2060   * @since 12
2061   */
2062  paddingStart?: LengthMetrics;
2063
2064  /**
2065   * Set title bar end padding.
2066   *
2067   * @type { ?LengthMetrics }
2068   * @default LengthMetrics.resource($r('sys.float.margin_right'))
2069   * @syscap SystemCapability.ArkUI.ArkUI.Full
2070   * @crossplatform
2071   * @atomicservice
2072   * @since 12
2073   */
2074  paddingEnd?: LengthMetrics;
2075
2076  /**
2077   * Text modifier for main title.
2078   *
2079   * @type { ?TextModifier }
2080   * @syscap SystemCapability.ArkUI.ArkUI.Full
2081   * @crossplatform
2082   * @atomicservice
2083   * @since 13
2084   */
2085  mainTitleModifier?: TextModifier;
2086
2087  /**
2088   * Text modifier for sub title.
2089   *
2090   * @type { ?TextModifier }
2091   * @syscap SystemCapability.ArkUI.ArkUI.Full
2092   * @crossplatform
2093   * @atomicservice
2094   * @since 13
2095   */
2096  subTitleModifier?: TextModifier;
2097  
2098  /**
2099   * Defines whether to respond to the hover mode.
2100   *
2101   * @type { ?boolean }
2102   * @default false
2103   * @syscap SystemCapability.ArkUI.ArkUI.Full
2104   * @crossplatform
2105   * @atomicservice
2106   * @since 14
2107   */
2108  enableHoverMode?: boolean;
2109}
2110
2111/**
2112 * Declare BarStyle enum.
2113 *
2114 * @enum { number }
2115 * @syscap SystemCapability.ArkUI.ArkUI.Full
2116 * @crossplatform
2117 * @atomicservice
2118 * @since 12
2119 */
2120declare enum BarStyle {
2121  /**
2122   * Standard style means that the bar and content area are column layouts.
2123   *
2124   * @syscap SystemCapability.ArkUI.ArkUI.Full
2125   * @crossplatform
2126   * @atomicservice
2127   * @since 12
2128   */
2129  STANDARD = 0,
2130
2131  /**
2132   * Stack style means that the bar and content area are stack layouts.
2133   *
2134   * @syscap SystemCapability.ArkUI.ArkUI.Full
2135   * @crossplatform
2136   * @atomicservice
2137   * @since 12
2138   */
2139  STACK = 1,
2140
2141  /**
2142   * SafeAreaPadding style means the bar height will be taken as content's safeAreaPadding.
2143   *
2144   * @syscap SystemCapability.ArkUI.ArkUI.Full
2145   * @crossplatform
2146   * @atomicservice
2147   * @since 14
2148   */
2149  SAFE_AREA_PADDING = 2,
2150}
2151
2152/**
2153 * Indicates the options of Navigation's Toolbar.
2154 *
2155 * @interface NavigationToolbarOptions
2156 * @syscap SystemCapability.ArkUI.ArkUI.Full
2157 * @crossplatform
2158 * @atomicservice
2159 * @since 11
2160 */
2161declare interface NavigationToolbarOptions {
2162  /**
2163   * Background color.
2164   *
2165   * @type { ?ResourceColor }
2166   * @syscap SystemCapability.ArkUI.ArkUI.Full
2167   * @crossplatform
2168   * @atomicservice
2169   * @since 11
2170   */
2171  backgroundColor?: ResourceColor;
2172
2173  /**
2174   * Background blur style.
2175   *
2176   * @type { ?BlurStyle }
2177   * @syscap SystemCapability.ArkUI.ArkUI.Full
2178   * @crossplatform
2179   * @atomicservice
2180   * @since 11
2181   */
2182  backgroundBlurStyle?: BlurStyle;
2183
2184  /**
2185   * Set tool bar style.
2186   *
2187   * @type { ?BarStyle }
2188   * @default BarStyle.STANDARD
2189   * @syscap SystemCapability.ArkUI.ArkUI.Full
2190   * @crossplatform
2191   * @atomicservice
2192   * @since 14
2193   */
2194    barStyle?: BarStyle;
2195}
2196
2197/**
2198 * Declare Navigation view properties.
2199 *
2200 * @extends CommonMethod<NavigationAttribute>
2201 * @syscap SystemCapability.ArkUI.ArkUI.Full
2202 * @since 8
2203 */
2204/**
2205 * Declare Navigation view properties.
2206 *
2207 * @extends CommonMethod<NavigationAttribute>
2208 * @syscap SystemCapability.ArkUI.ArkUI.Full
2209 * @crossplatform
2210 * @since 10
2211 */
2212/**
2213 * Declare Navigation view properties.
2214 *
2215 * @extends CommonMethod<NavigationAttribute>
2216 * @syscap SystemCapability.ArkUI.ArkUI.Full
2217 * @crossplatform
2218 * @atomicservice
2219 * @since 11
2220 */
2221declare class NavigationAttribute extends CommonMethod<NavigationAttribute> {
2222  /**
2223   * Sets the width of navigation bar.
2224   *
2225   * @param { Length } value
2226   * @returns { NavigationAttribute }
2227   * @syscap SystemCapability.ArkUI.ArkUI.Full
2228   * @since 9
2229   */
2230  /**
2231   * Sets the width of navigation bar.
2232   *
2233   * @param { Length } value
2234   * @returns { NavigationAttribute }
2235   * @syscap SystemCapability.ArkUI.ArkUI.Full
2236   * @crossplatform
2237   * @since 10
2238   */
2239  /**
2240   * Sets the width of navigation bar.
2241   *
2242   * @param { Length } value
2243   * @returns { NavigationAttribute }
2244   * @syscap SystemCapability.ArkUI.ArkUI.Full
2245   * @crossplatform
2246   * @atomicservice
2247   * @since 11
2248   */
2249  navBarWidth(value: Length): NavigationAttribute;
2250
2251  /**
2252   * Sets the position of navigation bar.
2253   *
2254   * @param { NavBarPosition } value
2255   * @returns { NavigationAttribute }
2256   * @syscap SystemCapability.ArkUI.ArkUI.Full
2257   * @since 9
2258   */
2259  /**
2260   * Sets the position of navigation bar.
2261   *
2262   * @param { NavBarPosition } value
2263   * @returns { NavigationAttribute }
2264   * @syscap SystemCapability.ArkUI.ArkUI.Full
2265   * @crossplatform
2266   * @since 10
2267   */
2268  /**
2269   * Sets the position of navigation bar.
2270   *
2271   * @param { NavBarPosition } value
2272   * @returns { NavigationAttribute }
2273   * @syscap SystemCapability.ArkUI.ArkUI.Full
2274   * @crossplatform
2275   * @atomicservice
2276   * @since 11
2277   */
2278  navBarPosition(value: NavBarPosition): NavigationAttribute;
2279
2280  /**
2281   * Sets the minimum width and the maximum width of navigation bar.
2282   *
2283   * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar.
2284   * @returns { NavigationAttribute }
2285   * @syscap SystemCapability.ArkUI.ArkUI.Full
2286   * @crossplatform
2287   * @since 10
2288   */
2289  /**
2290   * Sets the minimum width and the maximum width of navigation bar.
2291   *
2292   * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar.
2293   * @returns { NavigationAttribute }
2294   * @syscap SystemCapability.ArkUI.ArkUI.Full
2295   * @crossplatform
2296   * @atomicservice
2297   * @since 11
2298   */
2299  navBarWidthRange(value: [Dimension, Dimension]): NavigationAttribute;
2300
2301  /**
2302   * Sets the minimum width of content.
2303   *
2304   * @param { Dimension } value - The minimum width of content.
2305   * @returns { NavigationAttribute }
2306   * @syscap SystemCapability.ArkUI.ArkUI.Full
2307   * @crossplatform
2308   * @since 10
2309   */
2310  /**
2311   * Sets the minimum width of content.
2312   *
2313   * @param { Dimension } value - The minimum width of content.
2314   * @returns { NavigationAttribute }
2315   * @syscap SystemCapability.ArkUI.ArkUI.Full
2316   * @crossplatform
2317   * @atomicservice
2318   * @since 11
2319   */
2320  minContentWidth(value: Dimension): NavigationAttribute;
2321
2322  /**
2323   * Sets the mode of navigation.
2324   *
2325   * @param { NavigationMode } value
2326   * @returns { NavigationAttribute }
2327   * @syscap SystemCapability.ArkUI.ArkUI.Full
2328   * @since 9
2329   */
2330  /**
2331   * Sets the mode of navigation.
2332   *
2333   * @param { NavigationMode } value
2334   * @returns { NavigationAttribute }
2335   * @syscap SystemCapability.ArkUI.ArkUI.Full
2336   * @crossplatform
2337   * @since 10
2338   */
2339  /**
2340   * Sets the mode of navigation.
2341   *
2342   * @param { NavigationMode } value
2343   * @returns { NavigationAttribute }
2344   * @syscap SystemCapability.ArkUI.ArkUI.Full
2345   * @crossplatform
2346   * @atomicservice
2347   * @since 11
2348   */
2349  mode(value: NavigationMode): NavigationAttribute;
2350
2351  /**
2352   * Sets the back button icon.
2353   *
2354   * @param { string | PixelMap | Resource } value
2355   * @returns { NavigationAttribute }
2356   * @syscap SystemCapability.ArkUI.ArkUI.Full
2357   * @since 9
2358   */
2359  /**
2360   * Sets the back button icon.
2361   *
2362   * @param { string | PixelMap | Resource } value
2363   * @returns { NavigationAttribute }
2364   * @syscap SystemCapability.ArkUI.ArkUI.Full
2365   * @crossplatform
2366   * @since 10
2367   */
2368  /**
2369   * Sets the back button icon.
2370   *
2371   * @param { string | PixelMap | Resource } value
2372   * @returns { NavigationAttribute }
2373   * @syscap SystemCapability.ArkUI.ArkUI.Full
2374   * @crossplatform
2375   * @atomicservice
2376   * @since 11
2377   */
2378  /**
2379   * Sets the back button icon.
2380   *
2381   * @param { string | PixelMap | Resource | SymbolGlyphModifier } value
2382   * @returns { NavigationAttribute }
2383   * @syscap SystemCapability.ArkUI.ArkUI.Full
2384   * @crossplatform
2385   * @atomicservice
2386   * @since 12
2387   */
2388  backButtonIcon(value: string | PixelMap | Resource | SymbolGlyphModifier): NavigationAttribute;
2389
2390  /**
2391   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode.
2392   *
2393   * @param { boolean } value
2394   * @returns { NavigationAttribute }
2395   * @syscap SystemCapability.ArkUI.ArkUI.Full
2396   * @since 9
2397   */
2398  /**
2399   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode.
2400   *
2401   * @param { boolean } value
2402   * @returns { NavigationAttribute }
2403   * @syscap SystemCapability.ArkUI.ArkUI.Full
2404   * @crossplatform
2405   * @since 10
2406   */
2407  /**
2408   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in all mode. 
2409   * It will show top page in the NavPathStack directly or empty if there is no page in the NavPathStack.
2410   *
2411   * @param { boolean } value
2412   * @returns { NavigationAttribute }
2413   * @syscap SystemCapability.ArkUI.ArkUI.Full
2414   * @crossplatform
2415   * @atomicservice
2416   * @since 11
2417   */
2418  hideNavBar(value: boolean): NavigationAttribute;
2419
2420  /**
2421   * Navigation title
2422   *
2423   * @param { string | CustomBuilder } value
2424   * @returns { NavigationAttribute }
2425   * @syscap SystemCapability.ArkUI.ArkUI.Full
2426   * @since 8
2427   */
2428  /**
2429   * Navigation title
2430   *
2431   * @param { string | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
2432   * @returns { NavigationAttribute }
2433   * @syscap SystemCapability.ArkUI.ArkUI.Full
2434   * @since 9
2435   */
2436  /**
2437   * Navigation title
2438   *
2439   * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
2440   * @returns { NavigationAttribute }
2441   * @syscap SystemCapability.ArkUI.ArkUI.Full
2442   * @crossplatform
2443   * @since 10
2444   */
2445  /**
2446   * Navigation title
2447   *
2448   * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
2449   * @param { NavigationTitleOptions } [options] - Indicates the options of titlebar.
2450   * @returns { NavigationAttribute }
2451   * @syscap SystemCapability.ArkUI.ArkUI.Full
2452   * @crossplatform
2453   * @atomicservice
2454   * @since 11
2455   */
2456  title(value: ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle, options?: NavigationTitleOptions): NavigationAttribute;
2457
2458  /**
2459   * Navigation subtitle
2460   *
2461   * @param { string } value
2462   * @returns { NavigationAttribute }
2463   * @syscap SystemCapability.ArkUI.ArkUI.Full
2464   * @since 8
2465   * @deprecated since 9
2466   * @useinstead title
2467   */
2468  subTitle(value: string): NavigationAttribute;
2469
2470  /**
2471   * Hide navigation title bar
2472   *
2473   * @param { boolean } value
2474   * @returns { NavigationAttribute }
2475   * @syscap SystemCapability.ArkUI.ArkUI.Full
2476   * @since 8
2477   */
2478  /**
2479   * Hide navigation title bar
2480   *
2481   * @param { boolean } value
2482   * @returns { NavigationAttribute }
2483   * @syscap SystemCapability.ArkUI.ArkUI.Full
2484   * @crossplatform
2485   * @since 10
2486   */
2487  /**
2488   * Hide navigation title bar
2489   *
2490   * @param { boolean } value
2491   * @returns { NavigationAttribute }
2492   * @syscap SystemCapability.ArkUI.ArkUI.Full
2493   * @crossplatform
2494   * @atomicservice
2495   * @since 11
2496   */
2497  hideTitleBar(value: boolean): NavigationAttribute;
2498
2499  /**
2500   * Hide navigation title bar
2501   *
2502   * @param { boolean } hide
2503   * @param { boolean } animated
2504   * @returns { NavigationAttribute }
2505   * @syscap SystemCapability.ArkUI.ArkUI.Full
2506   * @crossplatform
2507   * @atomicservice
2508   * @since 14
2509   */
2510  hideTitleBar(hide: boolean, animated: boolean): NavigationAttribute;
2511
2512  /**
2513   * Hide navigation back button
2514   *
2515   * @param { boolean } value
2516   * @returns { NavigationAttribute }
2517   * @syscap SystemCapability.ArkUI.ArkUI.Full
2518   * @since 8
2519   */
2520  /**
2521   * Hide navigation back button
2522   *
2523   * @param { boolean } value
2524   * @returns { NavigationAttribute }
2525   * @syscap SystemCapability.ArkUI.ArkUI.Full
2526   * @crossplatform
2527   * @since 10
2528   */
2529  /**
2530   * Hide navigation back button
2531   *
2532   * @param { boolean } value
2533   * @returns { NavigationAttribute }
2534   * @syscap SystemCapability.ArkUI.ArkUI.Full
2535   * @crossplatform
2536   * @atomicservice
2537   * @since 11
2538   */
2539  hideBackButton(value: boolean): NavigationAttribute;
2540
2541  /**
2542   * Navigation title mode
2543   *
2544   * @param { NavigationTitleMode } value
2545   * @returns { NavigationAttribute }
2546   * @syscap SystemCapability.ArkUI.ArkUI.Full
2547   * @since 8
2548   */
2549  /**
2550   * Navigation title mode
2551   *
2552   * @param { NavigationTitleMode } value
2553   * @returns { NavigationAttribute }
2554   * @syscap SystemCapability.ArkUI.ArkUI.Full
2555   * @crossplatform
2556   * @since 10
2557   */
2558  /**
2559   * Navigation title mode
2560   *
2561   * @param { NavigationTitleMode } value
2562   * @returns { NavigationAttribute }
2563   * @syscap SystemCapability.ArkUI.ArkUI.Full
2564   * @crossplatform
2565   * @atomicservice
2566   * @since 11
2567   */
2568  titleMode(value: NavigationTitleMode): NavigationAttribute;
2569
2570  /**
2571   * Navigation title bar's menus
2572   *
2573   * @param { Array<NavigationMenuItem> | CustomBuilder } value
2574   * @returns { NavigationAttribute }
2575   * @syscap SystemCapability.ArkUI.ArkUI.Full
2576   * @since 8
2577   */
2578  /**
2579   * Navigation title bar's menus
2580   *
2581   * @param { Array<NavigationMenuItem> | CustomBuilder } value
2582   * @returns { NavigationAttribute }
2583   * @syscap SystemCapability.ArkUI.ArkUI.Full
2584   * @crossplatform
2585   * @since 10
2586   */
2587  /**
2588   * Navigation title bar's menus
2589   *
2590   * @param { Array<NavigationMenuItem> | CustomBuilder } value
2591   * @returns { NavigationAttribute }
2592   * @syscap SystemCapability.ArkUI.ArkUI.Full
2593   * @crossplatform
2594   * @atomicservice
2595   * @since 11
2596   */
2597  menus(value: Array<NavigationMenuItem> | CustomBuilder): NavigationAttribute;
2598
2599  /**
2600   * Tool bar
2601   *
2602   * @param { object | CustomBuilder } value
2603   * @returns { NavigationAttribute }
2604   * @syscap SystemCapability.ArkUI.ArkUI.Full
2605   * @since 8
2606   * @deprecated since 10
2607   * @useinstead navigation/NavigationAttribute#toolbarConfiguration
2608   */
2609  toolBar(value: object | CustomBuilder): NavigationAttribute;
2610
2611  /**
2612    * Configure toolbar with default style parameter or custom parameter.
2613    *
2614    * @param { Array<ToolbarItem> | CustomBuilder } value - Toolbar configuration parameters.
2615    * @returns { NavigationAttribute }
2616    * @syscap SystemCapability.ArkUI.ArkUI.Full
2617    * @crossplatform
2618    * @form
2619    * @since 10
2620    */
2621  /**
2622    * Configure toolbar with default style parameter or custom parameter.
2623    *
2624    * @param { Array<ToolbarItem> | CustomBuilder } value - Toolbar configuration parameters.
2625    * @param { NavigationToolbarOptions } [options] - Indicates the options of toolbar.
2626    * @returns { NavigationAttribute }
2627    * @syscap SystemCapability.ArkUI.ArkUI.Full
2628    * @crossplatform
2629    * @form
2630    * @atomicservice
2631    * @since 11
2632    */
2633  toolbarConfiguration(value: Array<ToolbarItem> | CustomBuilder, options?: NavigationToolbarOptions): NavigationAttribute;
2634
2635  /**
2636   * Hide tool bar
2637   *
2638   * @param { boolean } value
2639   * @returns { NavigationAttribute }
2640   * @syscap SystemCapability.ArkUI.ArkUI.Full
2641   * @since 8
2642   */
2643  /**
2644   * Hide tool bar
2645   *
2646   * @param { boolean } value
2647   * @returns { NavigationAttribute }
2648   * @syscap SystemCapability.ArkUI.ArkUI.Full
2649   * @crossplatform
2650   * @since 10
2651   */
2652  /**
2653   * Hide tool bar
2654   *
2655   * @param { boolean } value
2656   * @returns { NavigationAttribute }
2657   * @syscap SystemCapability.ArkUI.ArkUI.Full
2658   * @crossplatform
2659   * @atomicservice
2660   * @since 11
2661   */
2662  hideToolBar(value: boolean): NavigationAttribute;
2663
2664  /**
2665   * Hide tool bar
2666   *
2667   * @param { boolean } hide
2668   * @param { boolean } animated
2669   * @returns { NavigationAttribute }
2670   * @syscap SystemCapability.ArkUI.ArkUI.Full
2671   * @crossplatform
2672   * @atomicservice
2673   * @since 14
2674   */
2675  hideToolBar(hide: boolean, animated: boolean): NavigationAttribute;
2676
2677  /**
2678   * Trigger callback when title mode change finished at free mode.
2679   *
2680   * @param { (titleMode: NavigationTitleMode) => void } callback
2681   * @returns { NavigationAttribute }
2682   * @syscap SystemCapability.ArkUI.ArkUI.Full
2683   * @since 8
2684   */
2685  /**
2686   * Trigger callback when title mode change finished at free mode.
2687   *
2688   * @param { function } callback
2689   * @returns { NavigationAttribute }
2690   * @syscap SystemCapability.ArkUI.ArkUI.Full
2691   * @crossplatform
2692   * @since 10
2693   */
2694  /**
2695   * Trigger callback when title mode change finished at free mode.
2696   *
2697   * @param { function } callback
2698   * @returns { NavigationAttribute }
2699   * @syscap SystemCapability.ArkUI.ArkUI.Full
2700   * @crossplatform
2701   * @atomicservice
2702   * @since 11
2703   */
2704  onTitleModeChange(callback: (titleMode: NavigationTitleMode) => void): NavigationAttribute;
2705
2706  /**
2707   * Trigger callback when the visibility of navigation bar change.
2708   *
2709   * @param { (isVisible: boolean) => void } callback
2710   * @returns { NavigationAttribute }
2711   * @syscap SystemCapability.ArkUI.ArkUI.Full
2712   * @since 9
2713   */
2714  /**
2715   * Trigger callback when the visibility of navigation bar change.
2716   *
2717   * @param { function } callback
2718   * @returns { NavigationAttribute }
2719   * @syscap SystemCapability.ArkUI.ArkUI.Full
2720   * @crossplatform
2721   * @since 10
2722   */
2723  /**
2724   * Trigger callback when the visibility of navigation bar change.
2725   *
2726   * @param { function } callback
2727   * @returns { NavigationAttribute }
2728   * @syscap SystemCapability.ArkUI.ArkUI.Full
2729   * @crossplatform
2730   * @atomicservice
2731   * @since 11
2732   */
2733  onNavBarStateChange(callback: (isVisible: boolean) => void): NavigationAttribute;
2734
2735  /**
2736   * Trigger callback when navigation mode changes.
2737   *
2738   * @param { function } callback
2739   * @returns { NavigationAttribute }
2740   * @syscap SystemCapability.ArkUI.ArkUI.Full
2741   * @crossplatform
2742   * @atomicservice
2743   * @since 11
2744   */
2745  onNavigationModeChange(callback: (mode: NavigationMode) => void): NavigationAttribute;
2746
2747  /**
2748   * Set builder for user-defined NavDestination component.
2749   *
2750   * @param { function } builder - The builder function of NavDestination component.
2751   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2752   * @syscap SystemCapability.ArkUI.ArkUI.Full
2753   * @crossplatform
2754   * @since 10
2755   */
2756  /**
2757   * Set builder for user-defined NavDestination component.
2758   *
2759   * @param { function } builder - The builder function of NavDestination component.
2760   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2761   * @syscap SystemCapability.ArkUI.ArkUI.Full
2762   * @crossplatform
2763   * @atomicservice
2764   * @since 11
2765   */
2766  navDestination(builder: (name: string, param: unknown) => void): NavigationAttribute;
2767
2768  /**
2769   * Set custom navigation content transition animation.
2770   *
2771   * @param { function } delegate - Custom transition delegate.
2772   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2773   * @syscap SystemCapability.ArkUI.ArkUI.Full
2774   * @crossplatform
2775   * @since 11
2776   */
2777  /**
2778   * Set custom navigation content transition animation.
2779   *
2780   * @param { function } delegate - Custom transition delegate.
2781   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2782   * @syscap SystemCapability.ArkUI.ArkUI.Full
2783   * @crossplatform
2784   * @atomicservice
2785   * @since 12
2786   */
2787  customNavContentTransition(delegate: (from: NavContentInfo, to: NavContentInfo, operation: NavigationOperation) => NavigationAnimatedTransition | undefined): NavigationAttribute;
2788
2789  /**
2790   * Set navigation content expand types and edges.
2791   *
2792   * @param { Array<LayoutSafeAreaType> } [types] - Indicates the types of the safe area.
2793   * @param { Array<LayoutSafeAreaEdge> } [edges] - Indicates the edges of the safe area.
2794   * @returns { NavigationAttribute }
2795   * @syscap SystemCapability.ArkUI.ArkUI.Full
2796   * @crossplatform
2797   * @atomicservice
2798   * @since 12
2799   */
2800  ignoreLayoutSafeArea(types?: Array<LayoutSafeAreaType>, edges?: Array<LayoutSafeAreaEdge>): NavigationAttribute;
2801
2802  /**
2803   * Set the style of system bar
2804   *
2805   * @param { Optional<SystemBarStyle> } style - The properties of system bar
2806   * @returns { NavigationAttribute }
2807   * @syscap SystemCapability.ArkUI.ArkUI.Full
2808   * @atomicservice
2809   * @since 12
2810   */
2811  systemBarStyle(style: Optional<SystemBarStyle>): NavigationAttribute;
2812  
2813  /**
2814   * Set the Navigation can be restored after the application is terminated.
2815   * To enable this attribute, a navigation id must be set.
2816   * 
2817   * @param { boolean } recoverable - navigation can be recovered.
2818   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2819   * @syscap SystemCapability.ArkUI.ArkUI.Full
2820   * @since 13
2821   */
2822  recoverable(recoverable: Optional<boolean>): NavigationAttribute;
2823
2824  /**
2825   * Enable dragbar
2826   * 
2827   * @param { Optional<boolean> } isEnabled - enable dragbar or disable dragbar.
2828   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2829   * @syscap SystemCapability.ArkUI.ArkUI.Full
2830   * @crossplatform
2831   * @atomicservice
2832   * @since 14
2833   */
2834  enableDragBar(isEnabled: Optional<boolean>): NavigationAttribute;
2835}
2836
2837/**
2838* Navigation transition animation protocol.
2839*
2840* @interface NavigationAnimatedTransition
2841* @syscap SystemCapability.ArkUI.ArkUI.Full
2842* @crossplatform
2843* @since 11
2844*/
2845/**
2846* Navigation transition animation protocol.
2847*
2848* @interface NavigationAnimatedTransition
2849* @syscap SystemCapability.ArkUI.ArkUI.Full
2850* @crossplatform
2851* @atomicservice
2852* @since 12
2853*/
2854declare interface NavigationAnimatedTransition {
2855  /**
2856   * This method is called after the transition ends to notify whether the transition was successful.
2857   *
2858   * @type { ?function }
2859   * @syscap SystemCapability.ArkUI.ArkUI.Full
2860   * @crossplatform
2861   * @since 11
2862   */
2863  /**
2864   * This method is called after the transition ends to notify whether the transition was successful.
2865   *
2866   * @type { ?function }
2867   * @syscap SystemCapability.ArkUI.ArkUI.Full
2868   * @crossplatform
2869   * @atomicservice
2870   * @since 12
2871   */
2872  onTransitionEnd?: (success: boolean) => void
2873
2874  /**
2875   * Define the limit duration of the transition animation.
2876   *
2877   * @type { ?number }
2878   * @syscap SystemCapability.ArkUI.ArkUI.Full
2879   * @crossplatform
2880   * @since 11
2881   */
2882  /**
2883   * Define the limit duration of the transition animation.
2884   *
2885   * @type { ?number }
2886   * @syscap SystemCapability.ArkUI.ArkUI.Full
2887   * @crossplatform
2888   * @atomicservice
2889   * @since 12
2890   */
2891  timeout?: number;
2892
2893  /**
2894   * Indicates whether it is an interactive transition.
2895   *
2896   * @type { ?boolean }
2897   * @default false
2898   * @syscap SystemCapability.ArkUI.ArkUI.Full
2899   * @crossplatform
2900   * @atomicservice
2901   * @since 12
2902   */
2903  isInteractive?: boolean;
2904
2905  /**
2906   * Configure the animations associated with custom transition.
2907   *
2908   * @type { function }
2909   * @syscap SystemCapability.ArkUI.ArkUI.Full
2910   * @crossplatform
2911   * @since 11
2912   */
2913  /**
2914   * Configure the animations associated with custom transition.
2915   *
2916   * @type { function }
2917   * @syscap SystemCapability.ArkUI.ArkUI.Full
2918   * @crossplatform
2919   * @atomicservice
2920   * @since 12
2921   */
2922  transition: (transitionProxy: NavigationTransitionProxy) => void
2923}
2924
2925/**
2926 * Navigation transition proxy.
2927 *
2928 * @interface NavigationTransitionProxy
2929 * @syscap SystemCapability.ArkUI.ArkUI.Full
2930 * @crossplatform
2931 * @since 11
2932 */
2933/**
2934 * Navigation transition proxy.
2935 *
2936 * @interface NavigationTransitionProxy
2937 * @syscap SystemCapability.ArkUI.ArkUI.Full
2938 * @crossplatform
2939 * @atomicservice
2940 * @since 12
2941 */
2942declare interface NavigationTransitionProxy {
2943  /**
2944   * From navigation content info.
2945   *
2946   * @type { NavContentInfo }
2947   * @syscap SystemCapability.ArkUI.ArkUI.Full
2948   * @crossplatform
2949   * @since 11
2950   */
2951  /**
2952   * From navigation content info.
2953   *
2954   * @type { NavContentInfo }
2955   * @syscap SystemCapability.ArkUI.ArkUI.Full
2956   * @crossplatform
2957   * @atomicservice
2958   * @since 12
2959   */
2960  from: NavContentInfo;
2961
2962  /**
2963   * To navigation content info.
2964   *
2965   * @type { NavContentInfo }
2966   * @syscap SystemCapability.ArkUI.ArkUI.Full
2967   * @crossplatform
2968   * @since 11
2969   */
2970  /**
2971   * To navigation content info.
2972   *
2973   * @type { NavContentInfo }
2974   * @syscap SystemCapability.ArkUI.ArkUI.Full
2975   * @crossplatform
2976   * @atomicservice
2977   * @since 12
2978   */
2979  to: NavContentInfo;
2980
2981  /**
2982   * Indicates whether it is an interactive transition.
2983   *
2984   * @type { ?boolean }
2985   * @default false
2986   * @syscap SystemCapability.ArkUI.ArkUI.Full
2987   * @crossplatform
2988   * @atomicservice
2989   * @since 12
2990   */
2991  isInteractive?: boolean;
2992
2993  /**
2994   * Notification system transition animation completed.
2995   *
2996   * @syscap SystemCapability.ArkUI.ArkUI.Full
2997   * @crossplatform
2998   * @since 11
2999   */
3000  /**
3001   * Notification system transition animation completed.
3002   *
3003   * @syscap SystemCapability.ArkUI.ArkUI.Full
3004   * @crossplatform
3005   * @atomicservice
3006   * @since 12
3007   */
3008  finishTransition(): void;
3009
3010  /**
3011   * Notification system transition animation canceled.
3012   *
3013   * @syscap SystemCapability.ArkUI.ArkUI.Full
3014   * @crossplatform
3015   * @atomicservice
3016   * @since 12
3017   */
3018  cancelTransition?(): void;
3019
3020  /**
3021   * Notification system transition animation update.
3022   *
3023   * @param { number } progress - The progress of transition animation.
3024   * @syscap SystemCapability.ArkUI.ArkUI.Full
3025   * @crossplatform
3026   * @atomicservice
3027   * @since 12
3028   */
3029  updateTransition?(progress: number): void;
3030}
3031
3032/**
3033 * Navigation content info.
3034 *
3035 * @interface NavContentInfo
3036 * @syscap SystemCapability.ArkUI.ArkUI.Full
3037 * @crossplatform
3038 * @since 11
3039 */
3040/**
3041 * Navigation content info.
3042 *
3043 * @interface NavContentInfo
3044 * @syscap SystemCapability.ArkUI.ArkUI.Full
3045 * @crossplatform
3046 * @atomicservice
3047 * @since 12
3048 */
3049declare interface NavContentInfo {
3050  /**
3051   * Navigation content name.
3052   *
3053   * @type { ?string }
3054   * @syscap SystemCapability.ArkUI.ArkUI.Full
3055   * @crossplatform
3056   * @since 11
3057   */
3058  /**
3059   * Navigation content name.
3060   *
3061   * @type { ?string }
3062   * @syscap SystemCapability.ArkUI.ArkUI.Full
3063   * @crossplatform
3064   * @atomicservice
3065   * @since 12
3066   */
3067  name?: string;
3068
3069  /**
3070   * Navigation content index.
3071   *
3072   * @type { number }
3073   * @syscap SystemCapability.ArkUI.ArkUI.Full
3074   * @crossplatform
3075   * @since 11
3076   */
3077  /**
3078   * Navigation content index.
3079   *
3080   * @type { number }
3081   * @syscap SystemCapability.ArkUI.ArkUI.Full
3082   * @crossplatform
3083   * @atomicservice
3084   * @since 12
3085   */
3086  index: number;
3087
3088  /**
3089   * Navigation content mode.
3090   *
3091   * @type { ?NavDestinationMode }
3092   * @syscap SystemCapability.ArkUI.ArkUI.Full
3093   * @crossplatform
3094   * @since 11
3095   */
3096  /**
3097   * Navigation content mode.
3098   *
3099   * @type { ?NavDestinationMode }
3100   * @syscap SystemCapability.ArkUI.ArkUI.Full
3101   * @crossplatform
3102   * @atomicservice
3103   * @since 12
3104   */
3105  mode?: NavDestinationMode;
3106
3107  /**
3108   * Navigation content param.
3109   *
3110   * @type { ?Object }
3111   * @syscap SystemCapability.ArkUI.ArkUI.Full
3112   * @crossplatform
3113   * @atomicservice
3114   * @since 12
3115   */
3116  param?: Object;
3117
3118  /**
3119   * The unique id of NavDestination.
3120   *
3121   * @type { ?string }
3122   * @syscap SystemCapability.ArkUI.ArkUI.Full
3123   * @crossplatform
3124   * @atomicservice
3125   * @since 12
3126   */
3127  navDestinationId?: string;
3128}
3129
3130/**
3131 * Defines Navigation Component.
3132 *
3133 * @syscap SystemCapability.ArkUI.ArkUI.Full
3134 * @since 8
3135 */
3136/**
3137 * Defines Navigation Component.
3138 *
3139 * @syscap SystemCapability.ArkUI.ArkUI.Full
3140 * @crossplatform
3141 * @since 10
3142 */
3143/**
3144 * Defines Navigation Component.
3145 *
3146 * @syscap SystemCapability.ArkUI.ArkUI.Full
3147 * @crossplatform
3148 * @atomicservice
3149 * @since 11
3150 */
3151declare const Navigation: NavigationInterface;
3152
3153/**
3154 * Defines Navigation Component instance.
3155 *
3156 * @syscap SystemCapability.ArkUI.ArkUI.Full
3157 * @since 8
3158 */
3159/**
3160 * Defines Navigation Component instance.
3161 *
3162 * @syscap SystemCapability.ArkUI.ArkUI.Full
3163 * @crossplatform
3164 * @since 10
3165 */
3166/**
3167 * Defines Navigation Component instance.
3168 *
3169 * @syscap SystemCapability.ArkUI.ArkUI.Full
3170 * @crossplatform
3171 * @atomicservice
3172 * @since 11
3173 */
3174declare const NavigationInstance: NavigationAttribute;
3175