• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 14
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 14
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 14
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 14
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 current NavDestination with the specific one.The current NavDestination will be destroyed.
1161   *
1162   * @param { string } name - Indicates name of the new NavDestination in top of stack.
1163   * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack.
1164   * @param { boolean } [animated] - Indicates whether the transition is animated.
1165   * @syscap SystemCapability.ArkUI.ArkUI.Full
1166   * @crossplatform
1167   * @since 11
1168   */
1169  /**
1170   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
1171   *
1172   * @param { string } name - Indicates name of the new NavDestination in top of stack.
1173   * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack.
1174   * @param { boolean } [animated] - Indicates whether the transition is animated.
1175   * @syscap SystemCapability.ArkUI.ArkUI.Full
1176   * @crossplatform
1177   * @atomicservice
1178   * @since 12
1179   */
1180  replacePathByName(name: string, param: Object, animated?: boolean): void;
1181
1182  /**
1183   * Remove the specified NavDestinations by indexes.
1184   *
1185   * @param { Array<number> } indexes - Indicates the indexes of the NavDestinations to be removed.
1186   * @returns { number } Returns the number of removed pages. Invalid indexes will be ignored.
1187   * @syscap SystemCapability.ArkUI.ArkUI.Full
1188   * @crossplatform
1189   * @since 11
1190   */
1191  /**
1192   * Remove the specified NavDestinations by indexes.
1193   *
1194   * @param { Array<number> } indexes - Indicates the indexes of the NavDestinations to be removed.
1195   * @returns { number } Returns the number of removed pages. Invalid indexes will be ignored.
1196   * @syscap SystemCapability.ArkUI.ArkUI.Full
1197   * @crossplatform
1198   * @atomicservice
1199   * @since 12
1200   */
1201  removeByIndexes(indexes: Array<number>): number;
1202
1203  /**
1204   * Remove the specified NavDestination by name.
1205   *
1206   * @param { string } name - Indicates the name of the NavDestination to be removed.
1207   * @returns { number } Returns the number of removed NavDestinations.
1208   * @syscap SystemCapability.ArkUI.ArkUI.Full
1209   * @crossplatform
1210   * @since 11
1211   */
1212  /**
1213   * Remove the specified NavDestination by name.
1214   *
1215   * @param { string } name - Indicates the name of the NavDestination to be removed.
1216   * @returns { number } Returns the number of removed NavDestinations.
1217   * @syscap SystemCapability.ArkUI.ArkUI.Full
1218   * @crossplatform
1219   * @atomicservice
1220   * @since 12
1221   */
1222  removeByName(name: string): number;
1223
1224  /**
1225   * Remove the specified NavDestination by its navDestinationId.
1226   *
1227   * @param { string } navDestinationId - Indicates the navDestinationId of the NavDestination to be removed.
1228   * @returns { boolean } Returns true if remove successfully, otherwise returns false.
1229   * @syscap SystemCapability.ArkUI.ArkUI.Full
1230   * @crossplatform
1231   * @atomicservice
1232   * @since 12
1233   */
1234  removeByNavDestinationId(navDestinationId: string): boolean;
1235
1236  /**
1237   * Pops the top NavDestination out of the stack.
1238   *
1239   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1240   * @syscap SystemCapability.ArkUI.ArkUI.Full
1241   * @crossplatform
1242   * @since 10
1243   */
1244  /**
1245   * Pops the top NavDestination out of the stack.
1246   *
1247   * @param { boolean } [animated] - Indicates whether the transition is animated.
1248   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1249   * @syscap SystemCapability.ArkUI.ArkUI.Full
1250   * @crossplatform
1251   * @atomicservice
1252   * @since 11
1253   */
1254  pop(animated?: boolean): NavPathInfo | undefined;
1255
1256  /**
1257   * Pops the top NavDestination out of the stack.
1258   *
1259   * @param { Object } result - The result of the NavDestination.
1260   * @param { boolean } [animated] - Indicates whether the transition is animated.
1261   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1262   * @syscap SystemCapability.ArkUI.ArkUI.Full
1263   * @crossplatform
1264   * @since 11
1265   */
1266  /**
1267   * Pops the top NavDestination out of the stack.
1268   *
1269   * @param { Object } result - The result of the NavDestination.
1270   * @param { boolean } [animated] - Indicates whether the transition is animated.
1271   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
1272   * @syscap SystemCapability.ArkUI.ArkUI.Full
1273   * @crossplatform
1274   * @atomicservice
1275   * @since 12
1276   */
1277  pop(result: Object, animated?: boolean): NavPathInfo | undefined;
1278
1279  /**
1280   * Pops the specified NavDestination out of the stack.
1281   *
1282   * @param { string } name - Indicates the name of the NavDestination to be popped.
1283   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1284   * @syscap SystemCapability.ArkUI.ArkUI.Full
1285   * @crossplatform
1286   * @since 10
1287   */
1288  /**
1289   * Pops the specified NavDestination out of the stack.
1290   *
1291   * @param { string } name - Indicates the name of the NavDestination to be popped.
1292   * @param { boolean } [animated] - Indicates whether the transition is animated.
1293   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1294   * @syscap SystemCapability.ArkUI.ArkUI.Full
1295   * @crossplatform
1296   * @atomicservice
1297   * @since 11
1298   */
1299  popToName(name: string, animated?: boolean): number;
1300
1301  /**
1302   * Pops the specified NavDestination out of the stack.
1303   *
1304   * @param { string } name - Indicates the name of the NavDestination to be popped.
1305   * @param { Object } result - The result of the NavDestination.
1306   * @param { boolean } [animated] - Indicates whether the transition is animated.
1307   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1308   * @syscap SystemCapability.ArkUI.ArkUI.Full
1309   * @crossplatform
1310   * @since 11
1311   */
1312  /**
1313   * Pops the specified NavDestination out of the stack.
1314   *
1315   * @param { string } name - Indicates the name of the NavDestination to be popped.
1316   * @param { Object } result - The result of the NavDestination.
1317   * @param { boolean } [animated] - Indicates whether the transition is animated.
1318   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1319   * @syscap SystemCapability.ArkUI.ArkUI.Full
1320   * @crossplatform
1321   * @atomicservice
1322   * @since 12
1323   */
1324  popToName(name: string, result: Object, animated?: boolean): number;
1325
1326  /**
1327   * Pops the specified NavDestination out of the stack.
1328   *
1329   * @param { number } index - Indicates the index of the NavDestination to be popped.
1330   * @syscap SystemCapability.ArkUI.ArkUI.Full
1331   * @crossplatform
1332   * @since 10
1333   */
1334  /**
1335   * Pops the specified NavDestination out of the stack.
1336   *
1337   * @param { number } index - Indicates the index of the NavDestination to be popped.
1338   * @param { boolean } [animated] - Indicates whether the transition is animated.
1339   * @syscap SystemCapability.ArkUI.ArkUI.Full
1340   * @crossplatform
1341   * @atomicservice
1342   * @since 11
1343   */
1344  popToIndex(index: number, animated?: boolean): void;
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   * @param { Object } result - The result of the NavDestination.
1351   * @param { boolean } [animated] - Indicates whether the transition is animated.
1352   * @syscap SystemCapability.ArkUI.ArkUI.Full
1353   * @crossplatform
1354   * @atomicservice
1355   * @since 11
1356   */
1357  popToIndex(index: number, result: Object, animated?: boolean): void;
1358
1359  /**
1360   * Moves the specified NavDestination to stack top.
1361   *
1362   * @param { string } name - Indicates the name of the NavDestination to be moved to the top.
1363   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1364   * @syscap SystemCapability.ArkUI.ArkUI.Full
1365   * @crossplatform
1366   * @since 10
1367   */
1368  /**
1369   * Moves the specified NavDestination to stack top.
1370   *
1371   * @param { string } name - Indicates the name of the NavDestination to be moved to the top.
1372   * @param { boolean } [animated] - Indicates whether the transition is animated.
1373   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
1374   * @syscap SystemCapability.ArkUI.ArkUI.Full
1375   * @crossplatform
1376   * @atomicservice
1377   * @since 11
1378   */
1379  moveToTop(name: string, animated?: boolean): number;
1380
1381  /**
1382   * Moves the specified NavDestination to stack top.
1383   *
1384   * @param { number } index - Indicates the index of the NavDestination to be moved to the top.
1385   * @syscap SystemCapability.ArkUI.ArkUI.Full
1386   * @crossplatform
1387   * @since 10
1388   */
1389  /**
1390   * Moves the specified NavDestination to stack top.
1391   *
1392   * @param { number } index - Indicates the index of the NavDestination to be moved to the top.
1393   * @param { boolean } [animated] - Indicates whether the transition is animated.
1394   * @syscap SystemCapability.ArkUI.ArkUI.Full
1395   * @crossplatform
1396   * @atomicservice
1397   * @since 11
1398   */
1399  moveIndexToTop(index: number, animated?: boolean): void;
1400
1401  /**
1402   * Clears the stack.
1403   *
1404   * @syscap SystemCapability.ArkUI.ArkUI.Full
1405   * @crossplatform
1406   * @since 10
1407   */
1408  /**
1409   * Clears the stack.
1410   *
1411   * @param { boolean } [animated] - Indicates whether the transition is animated.
1412   * @syscap SystemCapability.ArkUI.ArkUI.Full
1413   * @crossplatform
1414   * @atomicservice
1415   * @since 11
1416   */
1417  clear(animated?: boolean): void;
1418
1419  /**
1420   * Obtains all the NavDestination name in the stack.
1421   *
1422   * @returns { Array<string> } Returns all the NavDestination name in the stack;
1423   * @syscap SystemCapability.ArkUI.ArkUI.Full
1424   * @crossplatform
1425   * @since 10
1426   */
1427  /**
1428   * Obtains all the NavDestination name in the stack.
1429   *
1430   * @returns { Array<string> } Returns all the NavDestination name in the stack;
1431   * @syscap SystemCapability.ArkUI.ArkUI.Full
1432   * @crossplatform
1433   * @atomicservice
1434   * @since 11
1435   */
1436  getAllPathName(): Array<string>;
1437
1438  /**
1439   * Obtains the param of the specified NavDestination.
1440   *
1441   * @param { number } index - Indicates the index of the NavDestination.
1442   * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined;
1443   * @syscap SystemCapability.ArkUI.ArkUI.Full
1444   * @crossplatform
1445   * @since 10
1446   */
1447  /**
1448   * Obtains the param of the specified NavDestination.
1449   *
1450   * @param { number } index - Indicates the index of the NavDestination.
1451   * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined;
1452   * @syscap SystemCapability.ArkUI.ArkUI.Full
1453   * @crossplatform
1454   * @atomicservice
1455   * @since 11
1456   */
1457  getParamByIndex(index: number): unknown | undefined;
1458
1459  /**
1460   * Obtains the param of the specified NavDestination.
1461   *
1462   * @param { string } name - Indicates the name of the NavDestination.
1463   * @returns { Array<unknown> } Returns the detailed parameter of all the NavDestinations.
1464   * @syscap SystemCapability.ArkUI.ArkUI.Full
1465   * @crossplatform
1466   * @since 10
1467   */
1468  /**
1469   * Obtains the param of the specified NavDestination.
1470   *
1471   * @param { string } name - Indicates the name of the NavDestination.
1472   * @returns { Array<unknown> } Returns the detailed parameter of all the NavDestinations.
1473   * @syscap SystemCapability.ArkUI.ArkUI.Full
1474   * @crossplatform
1475   * @atomicservice
1476   * @since 11
1477   */
1478  getParamByName(name: string): Array<unknown>;
1479
1480  /**
1481   * Obtains the index of the specified NavDestination.
1482   *
1483   * @param { string } name - Indicates the name of the NavDestination.
1484   * @returns { Array<number> } Returns the index of all the NavDestinations.
1485   * @syscap SystemCapability.ArkUI.ArkUI.Full
1486   * @crossplatform
1487   * @since 10
1488   */
1489  /**
1490   * Obtains the index of the specified NavDestination.
1491   *
1492   * @param { string } name - Indicates the name of the NavDestination.
1493   * @returns { Array<number> } Returns the index of all the NavDestinations.
1494   * @syscap SystemCapability.ArkUI.ArkUI.Full
1495   * @crossplatform
1496   * @atomicservice
1497   * @since 11
1498   */
1499  getIndexByName(name: string): Array<number>;
1500
1501  /**
1502   * Obtains the parent of the current stack.
1503   *
1504   * @returns { NavPathStack | null } Returns the parent of the current stack. If no parent, it returns null.
1505   * @syscap SystemCapability.ArkUI.ArkUI.Full
1506   * @crossplatform
1507   * @atomicservice
1508   * @since 11
1509   */
1510  getParent(): NavPathStack | null;
1511
1512  /**
1513   * Obtains the size of the stack.
1514   *
1515   * @returns { number } Returns the size of the stack.
1516   * @syscap SystemCapability.ArkUI.ArkUI.Full
1517   * @crossplatform
1518   * @since 10
1519   */
1520  /**
1521   * Obtains the size of the stack.
1522   *
1523   * @returns { number } Returns the size of the stack.
1524   * @syscap SystemCapability.ArkUI.ArkUI.Full
1525   * @crossplatform
1526   * @atomicservice
1527   * @since 11
1528   */
1529  size(): number;
1530
1531  /**
1532   * disable or enable all transition animation in this navigation stack.
1533   *
1534   * @param { boolean } value - Indicates whether the transition is animated.
1535   * @syscap SystemCapability.ArkUI.ArkUI.Full
1536   * @crossplatform
1537   * @since 11
1538   */
1539  /**
1540   * disable or enable all transition animation in this navigation stack.
1541   *
1542   * @param { boolean } value - Indicates whether the transition is animated.
1543   * @syscap SystemCapability.ArkUI.ArkUI.Full
1544   * @crossplatform
1545   * @atomicservice
1546   * @since 12
1547   */
1548  disableAnimation(value: boolean): void;
1549
1550  /**
1551   * set navigation transition interception.It will be called in navPathStack changes or navigation mode changes.
1552   *
1553   * @param { NavigationInterception } interception - the instance to intercept in navigation changes.
1554   * @syscap SystemCapability.ArkUI.ArkUI.Full
1555   * @crossplatform
1556   * @atomicservice
1557   * @since 12
1558   */
1559  setInterception(interception: NavigationInterception): void;
1560}
1561
1562/**
1563 * Navigation home name
1564 *
1565 * @typedef { 'navBar' } NavBar
1566 * @syscap SystemCapability.ArkUI.ArkUI.Full
1567 * @crossplatform
1568 * @atomicservice
1569 * @since 12
1570 */
1571declare type NavBar = 'navBar'
1572
1573/**
1574 * navigation interception callback using in willShow and didShow
1575 *
1576 * @typedef { function } InterceptionShowCallback
1577 * @param { NavDestinationContext | NavBar } from - Indicates the starting NavDestination or NavBar.
1578 * @param { NavDestinationContext | NavBar } to - Indicates the destination NavDestination or NavBar.
1579 * @param { NavigationOperation } operation - Indicates the type of stack operation.
1580 * @param { boolean } isAnimated - Indicates whether the transition is animated.
1581 * @syscap SystemCapability.ArkUI.ArkUI.Full
1582 * @crossplatform
1583 * @atomicservice
1584 * @since 12
1585 */
1586declare type InterceptionShowCallback = (from: NavDestinationContext|NavBar, to: NavDestinationContext|NavBar, operation: NavigationOperation, isAnimated: boolean) => void;
1587
1588/**
1589 * navigation interception callback using in navigation mode change
1590 *
1591 * @typedef { function } InterceptionModeCallback
1592 * @param { NavigationMode } mode - Indicates the mode of Navigation.
1593 * @syscap SystemCapability.ArkUI.ArkUI.Full
1594 * @crossplatform
1595 * @atomicservice
1596 * @since 12
1597 */
1598declare type InterceptionModeCallback = (mode: NavigationMode) => void;
1599
1600/**
1601 * Provide navigation transition interception
1602 *
1603 * @interface NavigationInterception
1604 * @syscap SystemCapability.ArkUI.ArkUI.Full
1605 * @crossplatform
1606 * @atomicservice
1607 * @since 12
1608 */
1609declare interface NavigationInterception {
1610  /**
1611   * Called before destination transition.NavPathStack can be changed in this callback,
1612   * it will takes effect during this transition.For details, see { @Link InterceptionShowCallback}.
1613   *
1614   * @type { ?InterceptionShowCallback }
1615   * @syscap SystemCapability.ArkUI.ArkUI.Full
1616   * @crossplatform
1617   * @atomicservice
1618   * @since 12
1619   */
1620  willShow?: InterceptionShowCallback;
1621
1622  /**
1623   * Called after destination transition.For details, see { @Link InterceptionShowCallback}.
1624   *
1625   * @type { ?InterceptionShowCallback }
1626   * @syscap SystemCapability.ArkUI.ArkUI.Full
1627   * @crossplatform
1628   * @atomicservice
1629   * @since 12
1630   */
1631  didShow?: InterceptionShowCallback;
1632
1633  /**
1634   * Called when navigation mode changed.For details, see { @Link InterceptionModeCallback}.
1635   *
1636   * @type { ?InterceptionModeCallback }
1637   * @syscap SystemCapability.ArkUI.ArkUI.Full
1638   * @crossplatform
1639   * @atomicservice
1640   * @since 12
1641   */
1642  modeChange?: InterceptionModeCallback;
1643}
1644
1645/**
1646 * Provide navigator view interface
1647 *
1648 * @interface NavigationInterface
1649 * @syscap SystemCapability.ArkUI.ArkUI.Full
1650 * @since 8
1651 */
1652/**
1653 * Provide navigator view interface
1654 *
1655 * @interface NavigationInterface
1656 * @syscap SystemCapability.ArkUI.ArkUI.Full
1657 * @crossplatform
1658 * @since 10
1659 */
1660/**
1661 * Provide navigator view interface
1662 *
1663 * @interface NavigationInterface
1664 * @syscap SystemCapability.ArkUI.ArkUI.Full
1665 * @crossplatform
1666 * @atomicservice
1667 * @since 11
1668 */
1669interface NavigationInterface {
1670  /**
1671   * Called when the navigator view interface is used.
1672   *
1673   * @returns { NavigationAttribute }
1674   * @syscap SystemCapability.ArkUI.ArkUI.Full
1675   * @since 8
1676   */
1677  /**
1678   * Called when the navigator view interface is used.
1679   *
1680   * @returns { NavigationAttribute }
1681   * @syscap SystemCapability.ArkUI.ArkUI.Full
1682   * @crossplatform
1683   * @since 10
1684   */
1685  /**
1686   * Called when the navigator view interface is used.
1687   *
1688   * @returns { NavigationAttribute }
1689   * @syscap SystemCapability.ArkUI.ArkUI.Full
1690   * @crossplatform
1691   * @atomicservice
1692   * @since 11
1693   */
1694  (): NavigationAttribute;
1695
1696  /**
1697   * Called when the navigator view interface is used, with route table provided.
1698   *
1699   * @param { NavPathStack } pathInfos - The stack of the route table.
1700   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
1701   * @syscap SystemCapability.ArkUI.ArkUI.Full
1702   * @crossplatform
1703   * @since 10
1704   */
1705  /**
1706   * Called when the navigator view interface is used, with route table provided.
1707   *
1708   * @param { NavPathStack } pathInfos - The stack of the route table.
1709   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
1710   * @syscap SystemCapability.ArkUI.ArkUI.Full
1711   * @crossplatform
1712   * @atomicservice
1713   * @since 11
1714   */
1715  (pathInfos: NavPathStack): NavigationAttribute;
1716}
1717
1718/**
1719 * Defines the status of toolbar item and it is used in the ToolbarItem interface.
1720 *
1721 * @enum { number }
1722 * @syscap SystemCapability.ArkUI.ArkUI.Full
1723 * @since 10
1724 */
1725/**
1726 * Defines the status of toolbar item and it is used in the ToolbarItem interface.
1727 *
1728 * @enum { number }
1729 * @syscap SystemCapability.ArkUI.ArkUI.Full
1730 * @crossplatform
1731 * @atomicservice
1732 * @since 11
1733 */
1734declare enum ToolbarItemStatus {
1735  /**
1736   * Normal state of toolbar item.
1737   *
1738   * @syscap SystemCapability.ArkUI.ArkUI.Full
1739   * @since 10
1740   */
1741  /**
1742   * Normal state of toolbar item.
1743   *
1744   * @syscap SystemCapability.ArkUI.ArkUI.Full
1745   * @crossplatform
1746   * @atomicservice
1747   * @since 11
1748   */
1749  NORMAL = 0,
1750
1751  /**
1752   * Disable state of toolbar item.
1753   *
1754   * @syscap SystemCapability.ArkUI.ArkUI.Full
1755   * @since 10
1756   */
1757  /**
1758   * Disable state of toolbar item.
1759   *
1760   * @syscap SystemCapability.ArkUI.ArkUI.Full
1761   * @crossplatform
1762   * @atomicservice
1763   * @since 11
1764   */
1765  DISABLED = 1,
1766
1767  /**
1768   * Active state of toolbar item.
1769   *
1770   * @syscap SystemCapability.ArkUI.ArkUI.Full
1771   * @since 10
1772   */
1773  /**
1774   * Active state of toolbar item.
1775   *
1776   * @syscap SystemCapability.ArkUI.ArkUI.Full
1777   * @crossplatform
1778   * @atomicservice
1779   * @since 11
1780   */
1781  ACTIVE = 2,
1782}
1783
1784/**
1785 * Defines the operation of current navigation transition.
1786 *
1787 * @enum { number }
1788 * @syscap SystemCapability.ArkUI.ArkUI.Full
1789 * @crossplatform
1790 * @since 11
1791 */
1792/**
1793 * Defines the operation of current navigation transition.
1794 *
1795 * @enum { number }
1796 * @syscap SystemCapability.ArkUI.ArkUI.Full
1797 * @crossplatform
1798 * @atomicservice
1799 * @since 12
1800 */
1801declare enum NavigationOperation {
1802  /**
1803   * Push operation of navigation transition.
1804   *
1805   * @syscap SystemCapability.ArkUI.ArkUI.Full
1806   * @crossplatform
1807   * @since 11
1808   */
1809  /**
1810   * Push operation of navigation transition.
1811   *
1812   * @syscap SystemCapability.ArkUI.ArkUI.Full
1813   * @crossplatform
1814   * @atomicservice
1815   * @since 12
1816   */
1817  PUSH = 1,
1818
1819  /**
1820   * Pop operation of navigation transition.
1821   *
1822   * @syscap SystemCapability.ArkUI.ArkUI.Full
1823   * @crossplatform
1824   * @since 11
1825   */
1826  /**
1827   * Pop operation of navigation transition.
1828   *
1829   * @syscap SystemCapability.ArkUI.ArkUI.Full
1830   * @crossplatform
1831   * @atomicservice
1832   * @since 12
1833   */
1834  POP = 2,
1835
1836  /**
1837   * Replace operation of navigation transition.
1838   *
1839   * @syscap SystemCapability.ArkUI.ArkUI.Full
1840   * @crossplatform
1841   * @since 11
1842   */
1843  /**
1844   * Replace operation of navigation transition.
1845   *
1846   * @syscap SystemCapability.ArkUI.ArkUI.Full
1847   * @crossplatform
1848   * @atomicservice
1849   * @since 12
1850   */
1851  REPLACE = 3,
1852}
1853
1854/**
1855 * Defines configurable parameters for toolbar item.
1856 *
1857 * @interface ToolbarItem
1858 * @syscap SystemCapability.ArkUI.ArkUI.Full
1859 * @since 10
1860 */
1861/**
1862 * Defines configurable parameters for toolbar item.
1863 *
1864 * @interface ToolbarItem
1865 * @syscap SystemCapability.ArkUI.ArkUI.Full
1866 * @atomicservice
1867 * @since 11
1868 */
1869declare interface ToolbarItem {
1870  /**
1871   * The value of navigation toolbar item.
1872   *
1873   * @type { ResourceStr }
1874   * @syscap SystemCapability.ArkUI.ArkUI.Full
1875   * @crossplatform
1876   * @since 10
1877   */
1878  /**
1879   * The value of navigation toolbar item.
1880   *
1881   * @type { ResourceStr }
1882   * @syscap SystemCapability.ArkUI.ArkUI.Full
1883   * @crossplatform
1884   * @atomicservice
1885   * @since 11
1886   */
1887  value: ResourceStr;
1888
1889  /**
1890   * The icon of navigation toolbar item.
1891   *
1892   * @type { ?ResourceStr }
1893   * @syscap SystemCapability.ArkUI.ArkUI.Full
1894   * @crossplatform
1895   * @since 10
1896   */
1897  /**
1898   * The icon of navigation toolbar item.
1899   *
1900   * @type { ?ResourceStr }
1901   * @syscap SystemCapability.ArkUI.ArkUI.Full
1902   * @crossplatform
1903   * @atomicservice
1904   * @since 11
1905   */
1906  icon?: ResourceStr;
1907
1908  /**
1909   * The symbol of navigation toolbar item.
1910   *
1911   * @type { ?SymbolGlyphModifier }
1912   * @syscap SystemCapability.ArkUI.ArkUI.Full
1913   * @crossplatform
1914   * @atomicservice
1915   * @since 12
1916   */
1917  symbolIcon?: SymbolGlyphModifier;
1918
1919  /**
1920   * Trigger by navigation toolbar item click.
1921   *
1922   * @type { ?function }
1923   * @syscap SystemCapability.ArkUI.ArkUI.Full
1924   * @crossplatform
1925   * @since 10
1926   */
1927  /**
1928   * Trigger by navigation toolbar item click.
1929   *
1930   * @type { ?function }
1931   * @syscap SystemCapability.ArkUI.ArkUI.Full
1932   * @crossplatform
1933   * @atomicservice
1934   * @since 11
1935   */
1936  action?: () => void;
1937
1938  /**
1939   * The state of navigation toolbar item.
1940   *
1941   * @type { ?ToolbarItemStatus }
1942   * @syscap SystemCapability.ArkUI.ArkUI.Full
1943   * @crossplatform
1944   * @since 10
1945   */
1946  /**
1947   * The state of navigation toolbar item.
1948   *
1949   * @type { ?ToolbarItemStatus }
1950   * @syscap SystemCapability.ArkUI.ArkUI.Full
1951   * @crossplatform
1952   * @atomicservice
1953   * @since 11
1954   */
1955  status?: ToolbarItemStatus;
1956
1957  /**
1958   * The icon of navigation toolbar item in active state.
1959   *
1960   * @type { ?ResourceStr }
1961   * @syscap SystemCapability.ArkUI.ArkUI.Full
1962   * @crossplatform
1963   * @since 10
1964   */
1965  /**
1966   * The icon of navigation toolbar item in active state.
1967   *
1968   * @type { ?ResourceStr }
1969   * @syscap SystemCapability.ArkUI.ArkUI.Full
1970   * @crossplatform
1971   * @atomicservice
1972   * @since 11
1973   */
1974  activeIcon?: ResourceStr;
1975
1976  /**
1977   * The symbol of navigation toolbar item in active state.
1978   *
1979   * @type { ?SymbolGlyphModifier }
1980   * @syscap SystemCapability.ArkUI.ArkUI.Full
1981   * @crossplatform
1982   * @atomicservice
1983   * @since 12
1984   */
1985  activeSymbolIcon?: SymbolGlyphModifier;
1986}
1987
1988/**
1989 * Indicates the options of Navigation's Titlebar.
1990 *
1991 * @interface NavigationTitleOptions
1992 * @syscap SystemCapability.ArkUI.ArkUI.Full
1993 * @crossplatform
1994 * @atomicservice
1995 * @since 11
1996 */
1997declare interface NavigationTitleOptions {
1998  /**
1999   * Background color.
2000   *
2001   * @type { ?ResourceColor }
2002   * @syscap SystemCapability.ArkUI.ArkUI.Full
2003   * @crossplatform
2004   * @atomicservice
2005   * @since 11
2006   */
2007  backgroundColor?: ResourceColor;
2008
2009  /**
2010   * Background blur style.
2011   *
2012   * @type { ?BlurStyle }
2013   * @syscap SystemCapability.ArkUI.ArkUI.Full
2014   * @crossplatform
2015   * @atomicservice
2016   * @since 11
2017   */
2018  backgroundBlurStyle?: BlurStyle;
2019
2020  /**
2021   * Set title bar style.
2022   *
2023   * @type { ?BarStyle }
2024   * @default BarStyle.STANDARD
2025   * @syscap SystemCapability.ArkUI.ArkUI.Full
2026   * @crossplatform
2027   * @atomicservice
2028   * @since 12
2029   */
2030  barStyle?: BarStyle;
2031
2032  /**
2033   * Set title bar start padding.
2034   *
2035   * @type { ?LengthMetrics }
2036   * @default LengthMetrics.resource($r('sys.float.margin_left'))
2037   * @syscap SystemCapability.ArkUI.ArkUI.Full
2038   * @crossplatform
2039   * @atomicservice
2040   * @since 12
2041   */
2042  paddingStart?: LengthMetrics;
2043
2044  /**
2045   * Set title bar end padding.
2046   *
2047   * @type { ?LengthMetrics }
2048   * @default LengthMetrics.resource($r('sys.float.margin_right'))
2049   * @syscap SystemCapability.ArkUI.ArkUI.Full
2050   * @crossplatform
2051   * @atomicservice
2052   * @since 12
2053   */
2054  paddingEnd?: LengthMetrics;
2055
2056  /**
2057   * Text modifier for main title.
2058   *
2059   * @type { ?TextModifier }
2060   * @syscap SystemCapability.ArkUI.ArkUI.Full
2061   * @crossplatform
2062   * @atomicservice
2063   * @since 13
2064   */
2065  mainTitleModifier?: TextModifier;
2066
2067  /**
2068   * Text modifier for sub title.
2069   *
2070   * @type { ?TextModifier }
2071   * @syscap SystemCapability.ArkUI.ArkUI.Full
2072   * @crossplatform
2073   * @atomicservice
2074   * @since 13
2075   */
2076  subTitleModifier?: TextModifier;
2077
2078  /**
2079   * Defines whether to respond to the hover mode.
2080   *
2081   * @type { ?boolean }
2082   * @default false
2083   * @syscap SystemCapability.ArkUI.ArkUI.Full
2084   * @crossplatform
2085   * @atomicservice
2086   * @since 13
2087   */
2088  enableHoverMode?: boolean;
2089}
2090
2091/**
2092 * Declare BarStyle enum.
2093 *
2094 * @enum { number }
2095 * @syscap SystemCapability.ArkUI.ArkUI.Full
2096 * @crossplatform
2097 * @atomicservice
2098 * @since 12
2099 */
2100declare enum BarStyle {
2101  /**
2102   * Standard style means that the bar and content area are column layouts.
2103   *
2104   * @syscap SystemCapability.ArkUI.ArkUI.Full
2105   * @crossplatform
2106   * @atomicservice
2107   * @since 12
2108   */
2109  STANDARD = 0,
2110
2111  /**
2112   * Stack style means that the bar and content area are stack layouts.
2113   *
2114   * @syscap SystemCapability.ArkUI.ArkUI.Full
2115   * @crossplatform
2116   * @atomicservice
2117   * @since 12
2118   */
2119  STACK = 1,
2120
2121  /**
2122   * SafeAreaPadding style means the bar height will be taken as content's safeAreaPadding.
2123   *
2124   * @syscap SystemCapability.ArkUI.ArkUI.Full
2125   * @crossplatform
2126   * @atomicservice
2127   * @since 14
2128   */
2129  SAFE_AREA_PADDING = 2,
2130}
2131
2132/**
2133 * Indicates the options of Navigation's Toolbar.
2134 *
2135 * @interface NavigationToolbarOptions
2136 * @syscap SystemCapability.ArkUI.ArkUI.Full
2137 * @crossplatform
2138 * @atomicservice
2139 * @since 11
2140 */
2141declare interface NavigationToolbarOptions {
2142  /**
2143   * Background color.
2144   *
2145   * @type { ?ResourceColor }
2146   * @syscap SystemCapability.ArkUI.ArkUI.Full
2147   * @crossplatform
2148   * @atomicservice
2149   * @since 11
2150   */
2151  backgroundColor?: ResourceColor;
2152
2153  /**
2154   * Background blur style.
2155   *
2156   * @type { ?BlurStyle }
2157   * @syscap SystemCapability.ArkUI.ArkUI.Full
2158   * @crossplatform
2159   * @atomicservice
2160   * @since 11
2161   */
2162  backgroundBlurStyle?: BlurStyle;
2163
2164  /**
2165   * Set tool bar style.
2166   *
2167   * @type { ?BarStyle }
2168   * @default BarStyle.STANDARD
2169   * @syscap SystemCapability.ArkUI.ArkUI.Full
2170   * @crossplatform
2171   * @atomicservice
2172   * @since 14
2173   */
2174    barStyle?: BarStyle;
2175}
2176
2177/**
2178 * Declare Navigation view properties.
2179 *
2180 * @extends CommonMethod<NavigationAttribute>
2181 * @syscap SystemCapability.ArkUI.ArkUI.Full
2182 * @since 8
2183 */
2184/**
2185 * Declare Navigation view properties.
2186 *
2187 * @extends CommonMethod<NavigationAttribute>
2188 * @syscap SystemCapability.ArkUI.ArkUI.Full
2189 * @crossplatform
2190 * @since 10
2191 */
2192/**
2193 * Declare Navigation view properties.
2194 *
2195 * @extends CommonMethod<NavigationAttribute>
2196 * @syscap SystemCapability.ArkUI.ArkUI.Full
2197 * @crossplatform
2198 * @atomicservice
2199 * @since 11
2200 */
2201declare class NavigationAttribute extends CommonMethod<NavigationAttribute> {
2202  /**
2203   * Sets the width of navigation bar.
2204   *
2205   * @param { Length } value
2206   * @returns { NavigationAttribute }
2207   * @syscap SystemCapability.ArkUI.ArkUI.Full
2208   * @since 9
2209   */
2210  /**
2211   * Sets the width of navigation bar.
2212   *
2213   * @param { Length } value
2214   * @returns { NavigationAttribute }
2215   * @syscap SystemCapability.ArkUI.ArkUI.Full
2216   * @crossplatform
2217   * @since 10
2218   */
2219  /**
2220   * Sets the width of navigation bar.
2221   *
2222   * @param { Length } value
2223   * @returns { NavigationAttribute }
2224   * @syscap SystemCapability.ArkUI.ArkUI.Full
2225   * @crossplatform
2226   * @atomicservice
2227   * @since 11
2228   */
2229  navBarWidth(value: Length): NavigationAttribute;
2230
2231  /**
2232   * Sets the position of navigation bar.
2233   *
2234   * @param { NavBarPosition } value
2235   * @returns { NavigationAttribute }
2236   * @syscap SystemCapability.ArkUI.ArkUI.Full
2237   * @since 9
2238   */
2239  /**
2240   * Sets the position of navigation bar.
2241   *
2242   * @param { NavBarPosition } value
2243   * @returns { NavigationAttribute }
2244   * @syscap SystemCapability.ArkUI.ArkUI.Full
2245   * @crossplatform
2246   * @since 10
2247   */
2248  /**
2249   * Sets the position of navigation bar.
2250   *
2251   * @param { NavBarPosition } value
2252   * @returns { NavigationAttribute }
2253   * @syscap SystemCapability.ArkUI.ArkUI.Full
2254   * @crossplatform
2255   * @atomicservice
2256   * @since 11
2257   */
2258  navBarPosition(value: NavBarPosition): NavigationAttribute;
2259
2260  /**
2261   * Sets the minimum width and the maximum width of navigation bar.
2262   *
2263   * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar.
2264   * @returns { NavigationAttribute }
2265   * @syscap SystemCapability.ArkUI.ArkUI.Full
2266   * @crossplatform
2267   * @since 10
2268   */
2269  /**
2270   * Sets the minimum width and the maximum width of navigation bar.
2271   *
2272   * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar.
2273   * @returns { NavigationAttribute }
2274   * @syscap SystemCapability.ArkUI.ArkUI.Full
2275   * @crossplatform
2276   * @atomicservice
2277   * @since 11
2278   */
2279  navBarWidthRange(value: [Dimension, Dimension]): NavigationAttribute;
2280
2281  /**
2282   * Sets the minimum width of content.
2283   *
2284   * @param { Dimension } value - The minimum width of content.
2285   * @returns { NavigationAttribute }
2286   * @syscap SystemCapability.ArkUI.ArkUI.Full
2287   * @crossplatform
2288   * @since 10
2289   */
2290  /**
2291   * Sets the minimum width of content.
2292   *
2293   * @param { Dimension } value - The minimum width of content.
2294   * @returns { NavigationAttribute }
2295   * @syscap SystemCapability.ArkUI.ArkUI.Full
2296   * @crossplatform
2297   * @atomicservice
2298   * @since 11
2299   */
2300  minContentWidth(value: Dimension): NavigationAttribute;
2301
2302  /**
2303   * Sets the mode of navigation.
2304   *
2305   * @param { NavigationMode } value
2306   * @returns { NavigationAttribute }
2307   * @syscap SystemCapability.ArkUI.ArkUI.Full
2308   * @since 9
2309   */
2310  /**
2311   * Sets the mode of navigation.
2312   *
2313   * @param { NavigationMode } value
2314   * @returns { NavigationAttribute }
2315   * @syscap SystemCapability.ArkUI.ArkUI.Full
2316   * @crossplatform
2317   * @since 10
2318   */
2319  /**
2320   * Sets the mode of navigation.
2321   *
2322   * @param { NavigationMode } value
2323   * @returns { NavigationAttribute }
2324   * @syscap SystemCapability.ArkUI.ArkUI.Full
2325   * @crossplatform
2326   * @atomicservice
2327   * @since 11
2328   */
2329  mode(value: NavigationMode): NavigationAttribute;
2330
2331  /**
2332   * Sets the back button icon.
2333   *
2334   * @param { string | PixelMap | Resource } value
2335   * @returns { NavigationAttribute }
2336   * @syscap SystemCapability.ArkUI.ArkUI.Full
2337   * @since 9
2338   */
2339  /**
2340   * Sets the back button icon.
2341   *
2342   * @param { string | PixelMap | Resource } value
2343   * @returns { NavigationAttribute }
2344   * @syscap SystemCapability.ArkUI.ArkUI.Full
2345   * @crossplatform
2346   * @since 10
2347   */
2348  /**
2349   * Sets the back button icon.
2350   *
2351   * @param { string | PixelMap | Resource } value
2352   * @returns { NavigationAttribute }
2353   * @syscap SystemCapability.ArkUI.ArkUI.Full
2354   * @crossplatform
2355   * @atomicservice
2356   * @since 11
2357   */
2358  /**
2359   * Sets the back button icon.
2360   *
2361   * @param { string | PixelMap | Resource | SymbolGlyphModifier } value
2362   * @returns { NavigationAttribute }
2363   * @syscap SystemCapability.ArkUI.ArkUI.Full
2364   * @crossplatform
2365   * @atomicservice
2366   * @since 12
2367   */
2368  backButtonIcon(value: string | PixelMap | Resource | SymbolGlyphModifier): NavigationAttribute;
2369
2370  /**
2371   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode.
2372   *
2373   * @param { boolean } value
2374   * @returns { NavigationAttribute }
2375   * @syscap SystemCapability.ArkUI.ArkUI.Full
2376   * @since 9
2377   */
2378  /**
2379   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode.
2380   *
2381   * @param { boolean } value
2382   * @returns { NavigationAttribute }
2383   * @syscap SystemCapability.ArkUI.ArkUI.Full
2384   * @crossplatform
2385   * @since 10
2386   */
2387  /**
2388   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in all mode.
2389   * It will show top page in the NavPathStack directly or empty if there is no page in the NavPathStack.
2390   *
2391   * @param { boolean } value
2392   * @returns { NavigationAttribute }
2393   * @syscap SystemCapability.ArkUI.ArkUI.Full
2394   * @crossplatform
2395   * @atomicservice
2396   * @since 11
2397   */
2398  hideNavBar(value: boolean): NavigationAttribute;
2399
2400  /**
2401   * Navigation title
2402   *
2403   * @param { string | CustomBuilder } value
2404   * @returns { NavigationAttribute }
2405   * @syscap SystemCapability.ArkUI.ArkUI.Full
2406   * @since 8
2407   */
2408  /**
2409   * Navigation title
2410   *
2411   * @param { string | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
2412   * @returns { NavigationAttribute }
2413   * @syscap SystemCapability.ArkUI.ArkUI.Full
2414   * @since 9
2415   */
2416  /**
2417   * Navigation title
2418   *
2419   * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
2420   * @returns { NavigationAttribute }
2421   * @syscap SystemCapability.ArkUI.ArkUI.Full
2422   * @crossplatform
2423   * @since 10
2424   */
2425  /**
2426   * Navigation title
2427   *
2428   * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
2429   * @param { NavigationTitleOptions } [options] - Indicates the options of titlebar.
2430   * @returns { NavigationAttribute }
2431   * @syscap SystemCapability.ArkUI.ArkUI.Full
2432   * @crossplatform
2433   * @atomicservice
2434   * @since 11
2435   */
2436  title(value: ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle, options?: NavigationTitleOptions): NavigationAttribute;
2437
2438  /**
2439   * Navigation subtitle
2440   *
2441   * @param { string } value
2442   * @returns { NavigationAttribute }
2443   * @syscap SystemCapability.ArkUI.ArkUI.Full
2444   * @since 8
2445   * @deprecated since 9
2446   * @useinstead title
2447   */
2448  subTitle(value: string): NavigationAttribute;
2449
2450  /**
2451   * Hide navigation title bar
2452   *
2453   * @param { boolean } value
2454   * @returns { NavigationAttribute }
2455   * @syscap SystemCapability.ArkUI.ArkUI.Full
2456   * @since 8
2457   */
2458  /**
2459   * Hide navigation title bar
2460   *
2461   * @param { boolean } value
2462   * @returns { NavigationAttribute }
2463   * @syscap SystemCapability.ArkUI.ArkUI.Full
2464   * @crossplatform
2465   * @since 10
2466   */
2467  /**
2468   * Hide navigation title bar
2469   *
2470   * @param { boolean } value
2471   * @returns { NavigationAttribute }
2472   * @syscap SystemCapability.ArkUI.ArkUI.Full
2473   * @crossplatform
2474   * @atomicservice
2475   * @since 11
2476   */
2477  hideTitleBar(value: boolean): NavigationAttribute;
2478
2479  /**
2480   * Hide navigation title bar
2481   *
2482   * @param { boolean } hide
2483   * @param { boolean } animated
2484   * @returns { NavigationAttribute }
2485   * @syscap SystemCapability.ArkUI.ArkUI.Full
2486   * @crossplatform
2487   * @atomicservice
2488   * @since 13
2489   */
2490  hideTitleBar(hide: boolean, animated: boolean): NavigationAttribute;
2491
2492  /**
2493   * Hide navigation back button
2494   *
2495   * @param { boolean } value
2496   * @returns { NavigationAttribute }
2497   * @syscap SystemCapability.ArkUI.ArkUI.Full
2498   * @since 8
2499   */
2500  /**
2501   * Hide navigation back button
2502   *
2503   * @param { boolean } value
2504   * @returns { NavigationAttribute }
2505   * @syscap SystemCapability.ArkUI.ArkUI.Full
2506   * @crossplatform
2507   * @since 10
2508   */
2509  /**
2510   * Hide navigation back button
2511   *
2512   * @param { boolean } value
2513   * @returns { NavigationAttribute }
2514   * @syscap SystemCapability.ArkUI.ArkUI.Full
2515   * @crossplatform
2516   * @atomicservice
2517   * @since 11
2518   */
2519  hideBackButton(value: boolean): NavigationAttribute;
2520
2521  /**
2522   * Navigation title mode
2523   *
2524   * @param { NavigationTitleMode } value
2525   * @returns { NavigationAttribute }
2526   * @syscap SystemCapability.ArkUI.ArkUI.Full
2527   * @since 8
2528   */
2529  /**
2530   * Navigation title mode
2531   *
2532   * @param { NavigationTitleMode } value
2533   * @returns { NavigationAttribute }
2534   * @syscap SystemCapability.ArkUI.ArkUI.Full
2535   * @crossplatform
2536   * @since 10
2537   */
2538  /**
2539   * Navigation title mode
2540   *
2541   * @param { NavigationTitleMode } value
2542   * @returns { NavigationAttribute }
2543   * @syscap SystemCapability.ArkUI.ArkUI.Full
2544   * @crossplatform
2545   * @atomicservice
2546   * @since 11
2547   */
2548  titleMode(value: NavigationTitleMode): NavigationAttribute;
2549
2550  /**
2551   * Navigation title bar's menus
2552   *
2553   * @param { Array<NavigationMenuItem> | CustomBuilder } value
2554   * @returns { NavigationAttribute }
2555   * @syscap SystemCapability.ArkUI.ArkUI.Full
2556   * @since 8
2557   */
2558  /**
2559   * Navigation title bar's menus
2560   *
2561   * @param { Array<NavigationMenuItem> | CustomBuilder } value
2562   * @returns { NavigationAttribute }
2563   * @syscap SystemCapability.ArkUI.ArkUI.Full
2564   * @crossplatform
2565   * @since 10
2566   */
2567  /**
2568   * Navigation title bar's menus
2569   *
2570   * @param { Array<NavigationMenuItem> | CustomBuilder } value
2571   * @returns { NavigationAttribute }
2572   * @syscap SystemCapability.ArkUI.ArkUI.Full
2573   * @crossplatform
2574   * @atomicservice
2575   * @since 11
2576   */
2577  menus(value: Array<NavigationMenuItem> | CustomBuilder): NavigationAttribute;
2578
2579  /**
2580   * Tool bar
2581   *
2582   * @param { object | CustomBuilder } value
2583   * @returns { NavigationAttribute }
2584   * @syscap SystemCapability.ArkUI.ArkUI.Full
2585   * @since 8
2586   * @deprecated since 10
2587   * @useinstead navigation/NavigationAttribute#toolbarConfiguration
2588   */
2589  toolBar(value: object | CustomBuilder): NavigationAttribute;
2590
2591  /**
2592    * Configure toolbar with default style parameter or custom parameter.
2593    *
2594    * @param { Array<ToolbarItem> | CustomBuilder } value - Toolbar configuration parameters.
2595    * @returns { NavigationAttribute }
2596    * @syscap SystemCapability.ArkUI.ArkUI.Full
2597    * @crossplatform
2598    * @form
2599    * @since 10
2600    */
2601  /**
2602    * Configure toolbar with default style parameter or custom parameter.
2603    *
2604    * @param { Array<ToolbarItem> | CustomBuilder } value - Toolbar configuration parameters.
2605    * @param { NavigationToolbarOptions } [options] - Indicates the options of toolbar.
2606    * @returns { NavigationAttribute }
2607    * @syscap SystemCapability.ArkUI.ArkUI.Full
2608    * @crossplatform
2609    * @form
2610    * @atomicservice
2611    * @since 11
2612    */
2613  toolbarConfiguration(value: Array<ToolbarItem> | CustomBuilder, options?: NavigationToolbarOptions): NavigationAttribute;
2614
2615  /**
2616   * Hide tool bar
2617   *
2618   * @param { boolean } value
2619   * @returns { NavigationAttribute }
2620   * @syscap SystemCapability.ArkUI.ArkUI.Full
2621   * @since 8
2622   */
2623  /**
2624   * Hide tool bar
2625   *
2626   * @param { boolean } value
2627   * @returns { NavigationAttribute }
2628   * @syscap SystemCapability.ArkUI.ArkUI.Full
2629   * @crossplatform
2630   * @since 10
2631   */
2632  /**
2633   * Hide tool bar
2634   *
2635   * @param { boolean } value
2636   * @returns { NavigationAttribute }
2637   * @syscap SystemCapability.ArkUI.ArkUI.Full
2638   * @crossplatform
2639   * @atomicservice
2640   * @since 11
2641   */
2642  hideToolBar(value: boolean): NavigationAttribute;
2643
2644  /**
2645   * Hide tool bar
2646   *
2647   * @param { boolean } hide
2648   * @param { boolean } animated
2649   * @returns { NavigationAttribute }
2650   * @syscap SystemCapability.ArkUI.ArkUI.Full
2651   * @crossplatform
2652   * @atomicservice
2653   * @since 13
2654   */
2655  hideToolBar(hide: boolean, animated: boolean): NavigationAttribute;
2656
2657  /**
2658   * Trigger callback when title mode change finished at free mode.
2659   *
2660   * @param { (titleMode: NavigationTitleMode) => void } callback
2661   * @returns { NavigationAttribute }
2662   * @syscap SystemCapability.ArkUI.ArkUI.Full
2663   * @since 8
2664   */
2665  /**
2666   * Trigger callback when title mode change finished at free mode.
2667   *
2668   * @param { function } callback
2669   * @returns { NavigationAttribute }
2670   * @syscap SystemCapability.ArkUI.ArkUI.Full
2671   * @crossplatform
2672   * @since 10
2673   */
2674  /**
2675   * Trigger callback when title mode change finished at free mode.
2676   *
2677   * @param { function } callback
2678   * @returns { NavigationAttribute }
2679   * @syscap SystemCapability.ArkUI.ArkUI.Full
2680   * @crossplatform
2681   * @atomicservice
2682   * @since 11
2683   */
2684  onTitleModeChange(callback: (titleMode: NavigationTitleMode) => void): NavigationAttribute;
2685
2686  /**
2687   * Trigger callback when the visibility of navigation bar change.
2688   *
2689   * @param { (isVisible: boolean) => void } callback
2690   * @returns { NavigationAttribute }
2691   * @syscap SystemCapability.ArkUI.ArkUI.Full
2692   * @since 9
2693   */
2694  /**
2695   * Trigger callback when the visibility of navigation bar change.
2696   *
2697   * @param { function } callback
2698   * @returns { NavigationAttribute }
2699   * @syscap SystemCapability.ArkUI.ArkUI.Full
2700   * @crossplatform
2701   * @since 10
2702   */
2703  /**
2704   * Trigger callback when the visibility of navigation bar change.
2705   *
2706   * @param { function } callback
2707   * @returns { NavigationAttribute }
2708   * @syscap SystemCapability.ArkUI.ArkUI.Full
2709   * @crossplatform
2710   * @atomicservice
2711   * @since 11
2712   */
2713  onNavBarStateChange(callback: (isVisible: boolean) => void): NavigationAttribute;
2714
2715  /**
2716   * Trigger callback when navigation mode changes.
2717   *
2718   * @param { function } callback
2719   * @returns { NavigationAttribute }
2720   * @syscap SystemCapability.ArkUI.ArkUI.Full
2721   * @crossplatform
2722   * @atomicservice
2723   * @since 11
2724   */
2725  onNavigationModeChange(callback: (mode: NavigationMode) => void): NavigationAttribute;
2726
2727  /**
2728   * Set builder for user-defined NavDestination component.
2729   *
2730   * @param { function } builder - The builder function of NavDestination component.
2731   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2732   * @syscap SystemCapability.ArkUI.ArkUI.Full
2733   * @crossplatform
2734   * @since 10
2735   */
2736  /**
2737   * Set builder for user-defined NavDestination component.
2738   *
2739   * @param { function } builder - The builder function of NavDestination component.
2740   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2741   * @syscap SystemCapability.ArkUI.ArkUI.Full
2742   * @crossplatform
2743   * @atomicservice
2744   * @since 11
2745   */
2746  navDestination(builder: (name: string, param: unknown) => void): NavigationAttribute;
2747
2748  /**
2749   * Set custom navigation content transition animation.
2750   *
2751   * @param { function } delegate - Custom transition delegate.
2752   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2753   * @syscap SystemCapability.ArkUI.ArkUI.Full
2754   * @crossplatform
2755   * @since 11
2756   */
2757  /**
2758   * Set custom navigation content transition animation.
2759   *
2760   * @param { function } delegate - Custom transition delegate.
2761   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2762   * @syscap SystemCapability.ArkUI.ArkUI.Full
2763   * @crossplatform
2764   * @atomicservice
2765   * @since 12
2766   */
2767  customNavContentTransition(delegate: (from: NavContentInfo, to: NavContentInfo, operation: NavigationOperation) => NavigationAnimatedTransition | undefined): NavigationAttribute;
2768
2769  /**
2770   * Set navigation content expand types and edges.
2771   *
2772   * @param { Array<LayoutSafeAreaType> } [types] - Indicates the types of the safe area.
2773   * @param { Array<LayoutSafeAreaEdge> } [edges] - Indicates the edges of the safe area.
2774   * @returns { NavigationAttribute }
2775   * @syscap SystemCapability.ArkUI.ArkUI.Full
2776   * @crossplatform
2777   * @atomicservice
2778   * @since 12
2779   */
2780  ignoreLayoutSafeArea(types?: Array<LayoutSafeAreaType>, edges?: Array<LayoutSafeAreaEdge>): NavigationAttribute;
2781
2782  /**
2783   * Set the style of system bar
2784   *
2785   * @param { Optional<SystemBarStyle> } style - The properties of system bar
2786   * @returns { NavigationAttribute }
2787   * @syscap SystemCapability.ArkUI.ArkUI.Full
2788   * @atomicservice
2789   * @since 12
2790   */
2791  systemBarStyle(style: Optional<SystemBarStyle>): NavigationAttribute;
2792
2793  /**
2794   * Set the Navigation can be restored after the application is terminated.
2795   * To enable this attribute, a navigation id must be set.
2796   *
2797   * @param { boolean } recoverable - navigation can be recovered.
2798   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2799   * @syscap SystemCapability.ArkUI.ArkUI.Full
2800   * @since 14
2801   */
2802  recoverable(recoverable: Optional<boolean>): NavigationAttribute;
2803
2804  /**
2805   * Enable dragbar
2806   *
2807   * @param { Optional<boolean> } isEnabled - enable dragbar or disable dragbar.
2808   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
2809   * @syscap SystemCapability.ArkUI.ArkUI.Full
2810   * @crossplatform
2811   * @atomicservice
2812   * @since 14
2813   */
2814  enableDragBar(isEnabled: Optional<boolean>): NavigationAttribute;
2815}
2816
2817/**
2818* Navigation transition animation protocol.
2819*
2820* @interface NavigationAnimatedTransition
2821* @syscap SystemCapability.ArkUI.ArkUI.Full
2822* @crossplatform
2823* @since 11
2824*/
2825/**
2826* Navigation transition animation protocol.
2827*
2828* @interface NavigationAnimatedTransition
2829* @syscap SystemCapability.ArkUI.ArkUI.Full
2830* @crossplatform
2831* @atomicservice
2832* @since 12
2833*/
2834declare interface NavigationAnimatedTransition {
2835  /**
2836   * This method is called after the transition ends to notify whether the transition was successful.
2837   *
2838   * @type { ?function }
2839   * @syscap SystemCapability.ArkUI.ArkUI.Full
2840   * @crossplatform
2841   * @since 11
2842   */
2843  /**
2844   * This method is called after the transition ends to notify whether the transition was successful.
2845   *
2846   * @type { ?function }
2847   * @syscap SystemCapability.ArkUI.ArkUI.Full
2848   * @crossplatform
2849   * @atomicservice
2850   * @since 12
2851   */
2852  onTransitionEnd?: (success: boolean) => void
2853
2854  /**
2855   * Define the limit duration of the transition animation.
2856   *
2857   * @type { ?number }
2858   * @syscap SystemCapability.ArkUI.ArkUI.Full
2859   * @crossplatform
2860   * @since 11
2861   */
2862  /**
2863   * Define the limit duration of the transition animation.
2864   *
2865   * @type { ?number }
2866   * @syscap SystemCapability.ArkUI.ArkUI.Full
2867   * @crossplatform
2868   * @atomicservice
2869   * @since 12
2870   */
2871  timeout?: number;
2872
2873  /**
2874   * Indicates whether it is an interactive transition.
2875   *
2876   * @type { ?boolean }
2877   * @default false
2878   * @syscap SystemCapability.ArkUI.ArkUI.Full
2879   * @crossplatform
2880   * @atomicservice
2881   * @since 12
2882   */
2883  isInteractive?: boolean;
2884
2885  /**
2886   * Configure the animations associated with custom transition.
2887   *
2888   * @type { function }
2889   * @syscap SystemCapability.ArkUI.ArkUI.Full
2890   * @crossplatform
2891   * @since 11
2892   */
2893  /**
2894   * Configure the animations associated with custom transition.
2895   *
2896   * @type { function }
2897   * @syscap SystemCapability.ArkUI.ArkUI.Full
2898   * @crossplatform
2899   * @atomicservice
2900   * @since 12
2901   */
2902  transition: (transitionProxy: NavigationTransitionProxy) => void
2903}
2904
2905/**
2906 * Navigation transition proxy.
2907 *
2908 * @interface NavigationTransitionProxy
2909 * @syscap SystemCapability.ArkUI.ArkUI.Full
2910 * @crossplatform
2911 * @since 11
2912 */
2913/**
2914 * Navigation transition proxy.
2915 *
2916 * @interface NavigationTransitionProxy
2917 * @syscap SystemCapability.ArkUI.ArkUI.Full
2918 * @crossplatform
2919 * @atomicservice
2920 * @since 12
2921 */
2922declare interface NavigationTransitionProxy {
2923  /**
2924   * From navigation content info.
2925   *
2926   * @type { NavContentInfo }
2927   * @syscap SystemCapability.ArkUI.ArkUI.Full
2928   * @crossplatform
2929   * @since 11
2930   */
2931  /**
2932   * From navigation content info.
2933   *
2934   * @type { NavContentInfo }
2935   * @syscap SystemCapability.ArkUI.ArkUI.Full
2936   * @crossplatform
2937   * @atomicservice
2938   * @since 12
2939   */
2940  from: NavContentInfo;
2941
2942  /**
2943   * To navigation content info.
2944   *
2945   * @type { NavContentInfo }
2946   * @syscap SystemCapability.ArkUI.ArkUI.Full
2947   * @crossplatform
2948   * @since 11
2949   */
2950  /**
2951   * To navigation content info.
2952   *
2953   * @type { NavContentInfo }
2954   * @syscap SystemCapability.ArkUI.ArkUI.Full
2955   * @crossplatform
2956   * @atomicservice
2957   * @since 12
2958   */
2959  to: NavContentInfo;
2960
2961  /**
2962   * Indicates whether it is an interactive transition.
2963   *
2964   * @type { ?boolean }
2965   * @default false
2966   * @syscap SystemCapability.ArkUI.ArkUI.Full
2967   * @crossplatform
2968   * @atomicservice
2969   * @since 12
2970   */
2971  isInteractive?: boolean;
2972
2973  /**
2974   * Notification system transition animation completed.
2975   *
2976   * @syscap SystemCapability.ArkUI.ArkUI.Full
2977   * @crossplatform
2978   * @since 11
2979   */
2980  /**
2981   * Notification system transition animation completed.
2982   *
2983   * @syscap SystemCapability.ArkUI.ArkUI.Full
2984   * @crossplatform
2985   * @atomicservice
2986   * @since 12
2987   */
2988  finishTransition(): void;
2989
2990  /**
2991   * Notification system transition animation canceled.
2992   *
2993   * @syscap SystemCapability.ArkUI.ArkUI.Full
2994   * @crossplatform
2995   * @atomicservice
2996   * @since 12
2997   */
2998  cancelTransition?(): void;
2999
3000  /**
3001   * Notification system transition animation update.
3002   *
3003   * @param { number } progress - The progress of transition animation.
3004   * @syscap SystemCapability.ArkUI.ArkUI.Full
3005   * @crossplatform
3006   * @atomicservice
3007   * @since 12
3008   */
3009  updateTransition?(progress: number): void;
3010}
3011
3012/**
3013 * Navigation content info.
3014 *
3015 * @interface NavContentInfo
3016 * @syscap SystemCapability.ArkUI.ArkUI.Full
3017 * @crossplatform
3018 * @since 11
3019 */
3020/**
3021 * Navigation content info.
3022 *
3023 * @interface NavContentInfo
3024 * @syscap SystemCapability.ArkUI.ArkUI.Full
3025 * @crossplatform
3026 * @atomicservice
3027 * @since 12
3028 */
3029declare interface NavContentInfo {
3030  /**
3031   * Navigation content name.
3032   *
3033   * @type { ?string }
3034   * @syscap SystemCapability.ArkUI.ArkUI.Full
3035   * @crossplatform
3036   * @since 11
3037   */
3038  /**
3039   * Navigation content name.
3040   *
3041   * @type { ?string }
3042   * @syscap SystemCapability.ArkUI.ArkUI.Full
3043   * @crossplatform
3044   * @atomicservice
3045   * @since 12
3046   */
3047  name?: string;
3048
3049  /**
3050   * Navigation content index.
3051   *
3052   * @type { number }
3053   * @syscap SystemCapability.ArkUI.ArkUI.Full
3054   * @crossplatform
3055   * @since 11
3056   */
3057  /**
3058   * Navigation content index.
3059   *
3060   * @type { number }
3061   * @syscap SystemCapability.ArkUI.ArkUI.Full
3062   * @crossplatform
3063   * @atomicservice
3064   * @since 12
3065   */
3066  index: number;
3067
3068  /**
3069   * Navigation content mode.
3070   *
3071   * @type { ?NavDestinationMode }
3072   * @syscap SystemCapability.ArkUI.ArkUI.Full
3073   * @crossplatform
3074   * @since 11
3075   */
3076  /**
3077   * Navigation content mode.
3078   *
3079   * @type { ?NavDestinationMode }
3080   * @syscap SystemCapability.ArkUI.ArkUI.Full
3081   * @crossplatform
3082   * @atomicservice
3083   * @since 12
3084   */
3085  mode?: NavDestinationMode;
3086
3087  /**
3088   * Navigation content param.
3089   *
3090   * @type { ?Object }
3091   * @syscap SystemCapability.ArkUI.ArkUI.Full
3092   * @crossplatform
3093   * @atomicservice
3094   * @since 12
3095   */
3096  param?: Object;
3097
3098  /**
3099   * The unique id of NavDestination.
3100   *
3101   * @type { ?string }
3102   * @syscap SystemCapability.ArkUI.ArkUI.Full
3103   * @crossplatform
3104   * @atomicservice
3105   * @since 12
3106   */
3107  navDestinationId?: string;
3108}
3109
3110/**
3111 * Defines Navigation Component.
3112 *
3113 * @syscap SystemCapability.ArkUI.ArkUI.Full
3114 * @since 8
3115 */
3116/**
3117 * Defines Navigation Component.
3118 *
3119 * @syscap SystemCapability.ArkUI.ArkUI.Full
3120 * @crossplatform
3121 * @since 10
3122 */
3123/**
3124 * Defines Navigation Component.
3125 *
3126 * @syscap SystemCapability.ArkUI.ArkUI.Full
3127 * @crossplatform
3128 * @atomicservice
3129 * @since 11
3130 */
3131declare const Navigation: NavigationInterface;
3132
3133/**
3134 * Defines Navigation Component instance.
3135 *
3136 * @syscap SystemCapability.ArkUI.ArkUI.Full
3137 * @since 8
3138 */
3139/**
3140 * Defines Navigation Component instance.
3141 *
3142 * @syscap SystemCapability.ArkUI.ArkUI.Full
3143 * @crossplatform
3144 * @since 10
3145 */
3146/**
3147 * Defines Navigation Component instance.
3148 *
3149 * @syscap SystemCapability.ArkUI.ArkUI.Full
3150 * @crossplatform
3151 * @atomicservice
3152 * @since 11
3153 */
3154declare const NavigationInstance: NavigationAttribute;
3155