161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2021-2024 Huawei Device Co., Ltd.
361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
461847f8eSopenharmony_ci * you may not use this file except in compliance with the License.
561847f8eSopenharmony_ci * You may obtain a copy of the License at
661847f8eSopenharmony_ci *
761847f8eSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
861847f8eSopenharmony_ci *
961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and
1361847f8eSopenharmony_ci * limitations under the License.
1461847f8eSopenharmony_ci */
1561847f8eSopenharmony_ci
1661847f8eSopenharmony_ci/**
1761847f8eSopenharmony_ci * @file
1861847f8eSopenharmony_ci * @kit ArkUI
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ci/**
2261847f8eSopenharmony_ci * Import the SystemBarStyle type for Navigation.
2361847f8eSopenharmony_ci *
2461847f8eSopenharmony_ci * @typedef { import('../api/@ohos.window').default.SystemBarStyle } SystemBarStyle
2561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
2661847f8eSopenharmony_ci * @atomicservice
2761847f8eSopenharmony_ci * @since 12
2861847f8eSopenharmony_ci */
2961847f8eSopenharmony_cideclare type SystemBarStyle = import('../api/@ohos.window').default.SystemBarStyle;
3061847f8eSopenharmony_ci
3161847f8eSopenharmony_ci/**
3261847f8eSopenharmony_ci * Defines the navigation common title.
3361847f8eSopenharmony_ci *
3461847f8eSopenharmony_ci * @interface NavigationCommonTitle
3561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
3661847f8eSopenharmony_ci * @since 9
3761847f8eSopenharmony_ci */
3861847f8eSopenharmony_ci/**
3961847f8eSopenharmony_ci * Defines the navigation common title.
4061847f8eSopenharmony_ci *
4161847f8eSopenharmony_ci * @interface NavigationCommonTitle
4261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
4361847f8eSopenharmony_ci * @crossplatform
4461847f8eSopenharmony_ci * @since 10
4561847f8eSopenharmony_ci */
4661847f8eSopenharmony_ci/**
4761847f8eSopenharmony_ci * Defines the navigation common title.
4861847f8eSopenharmony_ci *
4961847f8eSopenharmony_ci * @interface NavigationCommonTitle
5061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
5161847f8eSopenharmony_ci * @crossplatform
5261847f8eSopenharmony_ci * @atomicservice
5361847f8eSopenharmony_ci * @since 11
5461847f8eSopenharmony_ci */
5561847f8eSopenharmony_cideclare interface NavigationCommonTitle {
5661847f8eSopenharmony_ci  /**
5761847f8eSopenharmony_ci   * Sets the main title.
5861847f8eSopenharmony_ci   *
5961847f8eSopenharmony_ci   * @type { string }
6061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
6161847f8eSopenharmony_ci   * @since 9
6261847f8eSopenharmony_ci   */
6361847f8eSopenharmony_ci  /**
6461847f8eSopenharmony_ci   * Sets the main title.
6561847f8eSopenharmony_ci   *
6661847f8eSopenharmony_ci   * @type { string }
6761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
6861847f8eSopenharmony_ci   * @crossplatform
6961847f8eSopenharmony_ci   * @since 10
7061847f8eSopenharmony_ci   */
7161847f8eSopenharmony_ci  /**
7261847f8eSopenharmony_ci   * Sets the main title.
7361847f8eSopenharmony_ci   *
7461847f8eSopenharmony_ci   * @type { string }
7561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
7661847f8eSopenharmony_ci   * @crossplatform
7761847f8eSopenharmony_ci   * @atomicservice
7861847f8eSopenharmony_ci   * @since 11
7961847f8eSopenharmony_ci   */
8061847f8eSopenharmony_ci  /**
8161847f8eSopenharmony_ci   * Sets the main title.
8261847f8eSopenharmony_ci   *
8361847f8eSopenharmony_ci   * @type { string | Resource }
8461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
8561847f8eSopenharmony_ci   * @crossplatform
8661847f8eSopenharmony_ci   * @atomicservice
8761847f8eSopenharmony_ci   * @since 13
8861847f8eSopenharmony_ci   */
8961847f8eSopenharmony_ci  main: string | Resource;
9061847f8eSopenharmony_ci
9161847f8eSopenharmony_ci  /**
9261847f8eSopenharmony_ci   * Sets the sub title.
9361847f8eSopenharmony_ci   *
9461847f8eSopenharmony_ci   * @type { string }
9561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
9661847f8eSopenharmony_ci   * @since 9
9761847f8eSopenharmony_ci   */
9861847f8eSopenharmony_ci  /**
9961847f8eSopenharmony_ci   * Sets the sub title.
10061847f8eSopenharmony_ci   *
10161847f8eSopenharmony_ci   * @type { string }
10261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
10361847f8eSopenharmony_ci   * @crossplatform
10461847f8eSopenharmony_ci   * @since 10
10561847f8eSopenharmony_ci   */
10661847f8eSopenharmony_ci  /**
10761847f8eSopenharmony_ci   * Sets the sub title.
10861847f8eSopenharmony_ci   *
10961847f8eSopenharmony_ci   * @type { string }
11061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
11161847f8eSopenharmony_ci   * @crossplatform
11261847f8eSopenharmony_ci   * @atomicservice
11361847f8eSopenharmony_ci   * @since 11
11461847f8eSopenharmony_ci   */
11561847f8eSopenharmony_ci  /**
11661847f8eSopenharmony_ci   * Sets the sub title.
11761847f8eSopenharmony_ci   *
11861847f8eSopenharmony_ci   * @type { string | Resource }
11961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
12061847f8eSopenharmony_ci   * @crossplatform
12161847f8eSopenharmony_ci   * @atomicservice
12261847f8eSopenharmony_ci   * @since 13
12361847f8eSopenharmony_ci   */
12461847f8eSopenharmony_ci  sub: string | Resource;
12561847f8eSopenharmony_ci}
12661847f8eSopenharmony_ci
12761847f8eSopenharmony_ci/**
12861847f8eSopenharmony_ci * Defines the navigation custom title.
12961847f8eSopenharmony_ci *
13061847f8eSopenharmony_ci * @interface NavigationCustomTitle
13161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
13261847f8eSopenharmony_ci * @since 9
13361847f8eSopenharmony_ci */
13461847f8eSopenharmony_ci/**
13561847f8eSopenharmony_ci * Defines the navigation custom title.
13661847f8eSopenharmony_ci *
13761847f8eSopenharmony_ci * @interface NavigationCustomTitle
13861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
13961847f8eSopenharmony_ci * @crossplatform
14061847f8eSopenharmony_ci * @since 10
14161847f8eSopenharmony_ci */
14261847f8eSopenharmony_ci/**
14361847f8eSopenharmony_ci * Defines the navigation custom title.
14461847f8eSopenharmony_ci *
14561847f8eSopenharmony_ci * @interface NavigationCustomTitle
14661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
14761847f8eSopenharmony_ci * @crossplatform
14861847f8eSopenharmony_ci * @atomicservice
14961847f8eSopenharmony_ci * @since 11
15061847f8eSopenharmony_ci */
15161847f8eSopenharmony_cideclare interface NavigationCustomTitle {
15261847f8eSopenharmony_ci  /**
15361847f8eSopenharmony_ci   * Sets the custom title builder.
15461847f8eSopenharmony_ci   *
15561847f8eSopenharmony_ci   * @type { CustomBuilder }
15661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
15761847f8eSopenharmony_ci   * @since 9
15861847f8eSopenharmony_ci   */
15961847f8eSopenharmony_ci  /**
16061847f8eSopenharmony_ci   * Sets the custom title builder.
16161847f8eSopenharmony_ci   *
16261847f8eSopenharmony_ci   * @type { CustomBuilder }
16361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
16461847f8eSopenharmony_ci   * @crossplatform
16561847f8eSopenharmony_ci   * @since 10
16661847f8eSopenharmony_ci   */
16761847f8eSopenharmony_ci  /**
16861847f8eSopenharmony_ci   * Sets the custom title builder.
16961847f8eSopenharmony_ci   *
17061847f8eSopenharmony_ci   * @type { CustomBuilder }
17161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
17261847f8eSopenharmony_ci   * @crossplatform
17361847f8eSopenharmony_ci   * @atomicservice
17461847f8eSopenharmony_ci   * @since 11
17561847f8eSopenharmony_ci   */
17661847f8eSopenharmony_ci  builder: CustomBuilder;
17761847f8eSopenharmony_ci
17861847f8eSopenharmony_ci  /**
17961847f8eSopenharmony_ci   * Sets the custom title height.
18061847f8eSopenharmony_ci   *
18161847f8eSopenharmony_ci   * @type { TitleHeight | Length }
18261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
18361847f8eSopenharmony_ci   * @since 9
18461847f8eSopenharmony_ci   */
18561847f8eSopenharmony_ci  /**
18661847f8eSopenharmony_ci   * Sets the custom title height.
18761847f8eSopenharmony_ci   *
18861847f8eSopenharmony_ci   * @type { TitleHeight | Length }
18961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
19061847f8eSopenharmony_ci   * @crossplatform
19161847f8eSopenharmony_ci   * @since 10
19261847f8eSopenharmony_ci   */
19361847f8eSopenharmony_ci  /**
19461847f8eSopenharmony_ci   * Sets the custom title height.
19561847f8eSopenharmony_ci   *
19661847f8eSopenharmony_ci   * @type { TitleHeight | Length }
19761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
19861847f8eSopenharmony_ci   * @crossplatform
19961847f8eSopenharmony_ci   * @atomicservice
20061847f8eSopenharmony_ci   * @since 11
20161847f8eSopenharmony_ci   */
20261847f8eSopenharmony_ci  height: TitleHeight | Length;
20361847f8eSopenharmony_ci}
20461847f8eSopenharmony_ci
20561847f8eSopenharmony_ci
20661847f8eSopenharmony_ci/**
20761847f8eSopenharmony_ci * Navigation mode
20861847f8eSopenharmony_ci *
20961847f8eSopenharmony_ci * @enum { number }
21061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
21161847f8eSopenharmony_ci * @since 9
21261847f8eSopenharmony_ci */
21361847f8eSopenharmony_ci/**
21461847f8eSopenharmony_ci * Navigation mode
21561847f8eSopenharmony_ci *
21661847f8eSopenharmony_ci * @enum { number }
21761847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
21861847f8eSopenharmony_ci * @crossplatform
21961847f8eSopenharmony_ci * @since 10
22061847f8eSopenharmony_ci */
22161847f8eSopenharmony_ci/**
22261847f8eSopenharmony_ci * Navigation mode
22361847f8eSopenharmony_ci *
22461847f8eSopenharmony_ci * @enum { number }
22561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
22661847f8eSopenharmony_ci * @crossplatform
22761847f8eSopenharmony_ci * @atomicservice
22861847f8eSopenharmony_ci * @since 11
22961847f8eSopenharmony_ci */
23061847f8eSopenharmony_cideclare enum NavigationMode {
23161847f8eSopenharmony_ci  /**
23261847f8eSopenharmony_ci   * The navigation bar and the content area are displayed in stack.
23361847f8eSopenharmony_ci   *
23461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
23561847f8eSopenharmony_ci   * @since 9
23661847f8eSopenharmony_ci   */
23761847f8eSopenharmony_ci  /**
23861847f8eSopenharmony_ci   * The navigation bar and the content area are displayed in stack.
23961847f8eSopenharmony_ci   *
24061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
24161847f8eSopenharmony_ci   * @crossplatform
24261847f8eSopenharmony_ci   * @since 10
24361847f8eSopenharmony_ci   */
24461847f8eSopenharmony_ci  /**
24561847f8eSopenharmony_ci   * The navigation bar and the content area are displayed in stack.
24661847f8eSopenharmony_ci   *
24761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
24861847f8eSopenharmony_ci   * @crossplatform
24961847f8eSopenharmony_ci   * @atomicservice
25061847f8eSopenharmony_ci   * @since 11
25161847f8eSopenharmony_ci   */
25261847f8eSopenharmony_ci  Stack,
25361847f8eSopenharmony_ci
25461847f8eSopenharmony_ci  /**
25561847f8eSopenharmony_ci   * The navigation bar and the content area are displayed side by side.
25661847f8eSopenharmony_ci   *
25761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
25861847f8eSopenharmony_ci   * @since 9
25961847f8eSopenharmony_ci   */
26061847f8eSopenharmony_ci  /**
26161847f8eSopenharmony_ci   * The navigation bar and the content area are displayed side by side.
26261847f8eSopenharmony_ci   *
26361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
26461847f8eSopenharmony_ci   * @crossplatform
26561847f8eSopenharmony_ci   * @since 10
26661847f8eSopenharmony_ci   */
26761847f8eSopenharmony_ci  /**
26861847f8eSopenharmony_ci   * The navigation bar and the content area are displayed side by side.
26961847f8eSopenharmony_ci   *
27061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
27161847f8eSopenharmony_ci   * @crossplatform
27261847f8eSopenharmony_ci   * @atomicservice
27361847f8eSopenharmony_ci   * @since 11
27461847f8eSopenharmony_ci   */
27561847f8eSopenharmony_ci  Split,
27661847f8eSopenharmony_ci
27761847f8eSopenharmony_ci  /**
27861847f8eSopenharmony_ci   * If the window width is greater than 520vp, the navigation component is displayed in split mode.
27961847f8eSopenharmony_ci   * Otherwise it's displayed in stack mode.
28061847f8eSopenharmony_ci   *
28161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
28261847f8eSopenharmony_ci   * @since 9
28361847f8eSopenharmony_ci   */
28461847f8eSopenharmony_ci  /**
28561847f8eSopenharmony_ci   * If the window width is greater than the sum of minNavBarWidth and minContentWidth, the navigation component is displayed in split mode.
28661847f8eSopenharmony_ci   * Otherwise it's displayed in stack mode.
28761847f8eSopenharmony_ci   *
28861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
28961847f8eSopenharmony_ci   * @crossplatform
29061847f8eSopenharmony_ci   * @since 10
29161847f8eSopenharmony_ci   */
29261847f8eSopenharmony_ci  /**
29361847f8eSopenharmony_ci   * If the window width is greater than the sum of minNavBarWidth and minContentWidth, the navigation component is displayed in split mode.
29461847f8eSopenharmony_ci   * Otherwise it's displayed in stack mode.
29561847f8eSopenharmony_ci   *
29661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
29761847f8eSopenharmony_ci   * @crossplatform
29861847f8eSopenharmony_ci   * @atomicservice
29961847f8eSopenharmony_ci   * @since 11
30061847f8eSopenharmony_ci   */
30161847f8eSopenharmony_ci  Auto,
30261847f8eSopenharmony_ci}
30361847f8eSopenharmony_ci
30461847f8eSopenharmony_ci/**
30561847f8eSopenharmony_ci * Navigation bar position
30661847f8eSopenharmony_ci *
30761847f8eSopenharmony_ci * @enum { number }
30861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
30961847f8eSopenharmony_ci * @since 9
31061847f8eSopenharmony_ci */
31161847f8eSopenharmony_ci/**
31261847f8eSopenharmony_ci * Navigation bar position
31361847f8eSopenharmony_ci *
31461847f8eSopenharmony_ci * @enum { number }
31561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
31661847f8eSopenharmony_ci * @crossplatform
31761847f8eSopenharmony_ci * @since 10
31861847f8eSopenharmony_ci */
31961847f8eSopenharmony_ci/**
32061847f8eSopenharmony_ci * Navigation bar position
32161847f8eSopenharmony_ci *
32261847f8eSopenharmony_ci * @enum { number }
32361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
32461847f8eSopenharmony_ci * @crossplatform
32561847f8eSopenharmony_ci * @atomicservice
32661847f8eSopenharmony_ci * @since 11
32761847f8eSopenharmony_ci */
32861847f8eSopenharmony_cideclare enum NavBarPosition {
32961847f8eSopenharmony_ci  /**
33061847f8eSopenharmony_ci   * The navigation bar is on the Start of the container
33161847f8eSopenharmony_ci   *
33261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
33361847f8eSopenharmony_ci   * @since 9
33461847f8eSopenharmony_ci   */
33561847f8eSopenharmony_ci  /**
33661847f8eSopenharmony_ci   * The navigation bar is on the Start of the container
33761847f8eSopenharmony_ci   *
33861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
33961847f8eSopenharmony_ci   * @crossplatform
34061847f8eSopenharmony_ci   * @since 10
34161847f8eSopenharmony_ci   */
34261847f8eSopenharmony_ci  /**
34361847f8eSopenharmony_ci   * The navigation bar is on the Start of the container
34461847f8eSopenharmony_ci   *
34561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
34661847f8eSopenharmony_ci   * @crossplatform
34761847f8eSopenharmony_ci   * @atomicservice
34861847f8eSopenharmony_ci   * @since 11
34961847f8eSopenharmony_ci   */
35061847f8eSopenharmony_ci  Start,
35161847f8eSopenharmony_ci
35261847f8eSopenharmony_ci  /**
35361847f8eSopenharmony_ci   * The navigation bar is on the End of the container
35461847f8eSopenharmony_ci   *
35561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
35661847f8eSopenharmony_ci   * @since 9
35761847f8eSopenharmony_ci   */
35861847f8eSopenharmony_ci  /**
35961847f8eSopenharmony_ci   * The navigation bar is on the End of the container
36061847f8eSopenharmony_ci   *
36161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
36261847f8eSopenharmony_ci   * @crossplatform
36361847f8eSopenharmony_ci   * @since 10
36461847f8eSopenharmony_ci   */
36561847f8eSopenharmony_ci  /**
36661847f8eSopenharmony_ci   * The navigation bar is on the End of the container
36761847f8eSopenharmony_ci   *
36861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
36961847f8eSopenharmony_ci   * @crossplatform
37061847f8eSopenharmony_ci   * @atomicservice
37161847f8eSopenharmony_ci   * @since 11
37261847f8eSopenharmony_ci   */
37361847f8eSopenharmony_ci  End,
37461847f8eSopenharmony_ci}
37561847f8eSopenharmony_ci
37661847f8eSopenharmony_ci/**
37761847f8eSopenharmony_ci * Navigation title mode.
37861847f8eSopenharmony_ci *
37961847f8eSopenharmony_ci * @enum { number }
38061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
38161847f8eSopenharmony_ci * @since 8
38261847f8eSopenharmony_ci */
38361847f8eSopenharmony_ci/**
38461847f8eSopenharmony_ci * Navigation title mode.
38561847f8eSopenharmony_ci *
38661847f8eSopenharmony_ci * @enum { number }
38761847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
38861847f8eSopenharmony_ci * @crossplatform
38961847f8eSopenharmony_ci * @since 10
39061847f8eSopenharmony_ci */
39161847f8eSopenharmony_ci/**
39261847f8eSopenharmony_ci * Navigation title mode.
39361847f8eSopenharmony_ci *
39461847f8eSopenharmony_ci * @enum { number }
39561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
39661847f8eSopenharmony_ci * @crossplatform
39761847f8eSopenharmony_ci * @atomicservice
39861847f8eSopenharmony_ci * @since 11
39961847f8eSopenharmony_ci */
40061847f8eSopenharmony_cideclare enum NavigationTitleMode {
40161847f8eSopenharmony_ci  /**
40261847f8eSopenharmony_ci   * The title is free mode.
40361847f8eSopenharmony_ci   *
40461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
40561847f8eSopenharmony_ci   * @since 8
40661847f8eSopenharmony_ci   */
40761847f8eSopenharmony_ci  /**
40861847f8eSopenharmony_ci   * The title is free mode.
40961847f8eSopenharmony_ci   *
41061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
41161847f8eSopenharmony_ci   * @crossplatform
41261847f8eSopenharmony_ci   * @since 10
41361847f8eSopenharmony_ci   */
41461847f8eSopenharmony_ci  /**
41561847f8eSopenharmony_ci   * The title is free mode.
41661847f8eSopenharmony_ci   *
41761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
41861847f8eSopenharmony_ci   * @crossplatform
41961847f8eSopenharmony_ci   * @atomicservice
42061847f8eSopenharmony_ci   * @since 11
42161847f8eSopenharmony_ci   */
42261847f8eSopenharmony_ci  Free = 0,
42361847f8eSopenharmony_ci
42461847f8eSopenharmony_ci  /**
42561847f8eSopenharmony_ci   * The title is full mode.
42661847f8eSopenharmony_ci   *
42761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
42861847f8eSopenharmony_ci   * @since 8
42961847f8eSopenharmony_ci   */
43061847f8eSopenharmony_ci  /**
43161847f8eSopenharmony_ci   * The title is full mode.
43261847f8eSopenharmony_ci   *
43361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
43461847f8eSopenharmony_ci   * @crossplatform
43561847f8eSopenharmony_ci   * @since 10
43661847f8eSopenharmony_ci   */
43761847f8eSopenharmony_ci  /**
43861847f8eSopenharmony_ci   * The title is full mode.
43961847f8eSopenharmony_ci   *
44061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
44161847f8eSopenharmony_ci   * @crossplatform
44261847f8eSopenharmony_ci   * @atomicservice
44361847f8eSopenharmony_ci   * @since 11
44461847f8eSopenharmony_ci   */
44561847f8eSopenharmony_ci  Full,
44661847f8eSopenharmony_ci
44761847f8eSopenharmony_ci  /**
44861847f8eSopenharmony_ci   * The title is mini mode.
44961847f8eSopenharmony_ci   *
45061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
45161847f8eSopenharmony_ci   * @since 8
45261847f8eSopenharmony_ci   */
45361847f8eSopenharmony_ci  /**
45461847f8eSopenharmony_ci   * The title is mini mode.
45561847f8eSopenharmony_ci   *
45661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
45761847f8eSopenharmony_ci   * @crossplatform
45861847f8eSopenharmony_ci   * @since 10
45961847f8eSopenharmony_ci   */
46061847f8eSopenharmony_ci  /**
46161847f8eSopenharmony_ci   * The title is mini mode.
46261847f8eSopenharmony_ci   *
46361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
46461847f8eSopenharmony_ci   * @crossplatform
46561847f8eSopenharmony_ci   * @atomicservice
46661847f8eSopenharmony_ci   * @since 11
46761847f8eSopenharmony_ci   */
46861847f8eSopenharmony_ci  Mini,
46961847f8eSopenharmony_ci}
47061847f8eSopenharmony_ci
47161847f8eSopenharmony_ci/**
47261847f8eSopenharmony_ci * Navigation menu item, include menu icon and menu info
47361847f8eSopenharmony_ci *
47461847f8eSopenharmony_ci * @interface NavigationMenuItem
47561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
47661847f8eSopenharmony_ci * @since 8
47761847f8eSopenharmony_ci */
47861847f8eSopenharmony_ci/**
47961847f8eSopenharmony_ci * Navigation menu item, include menu icon and menu info
48061847f8eSopenharmony_ci *
48161847f8eSopenharmony_ci * @interface NavigationMenuItem
48261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
48361847f8eSopenharmony_ci * @crossplatform
48461847f8eSopenharmony_ci * @since 10
48561847f8eSopenharmony_ci */
48661847f8eSopenharmony_ci/**
48761847f8eSopenharmony_ci * Navigation menu item, include menu icon and menu info
48861847f8eSopenharmony_ci *
48961847f8eSopenharmony_ci * @interface NavigationMenuItem
49061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
49161847f8eSopenharmony_ci * @crossplatform
49261847f8eSopenharmony_ci * @atomicservice
49361847f8eSopenharmony_ci * @since 11
49461847f8eSopenharmony_ci */
49561847f8eSopenharmony_cideclare interface NavigationMenuItem {
49661847f8eSopenharmony_ci  /**
49761847f8eSopenharmony_ci   * The value of navigation menu item.
49861847f8eSopenharmony_ci   *
49961847f8eSopenharmony_ci   * @type { string }
50061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
50161847f8eSopenharmony_ci   * @since 8
50261847f8eSopenharmony_ci   */
50361847f8eSopenharmony_ci  /**
50461847f8eSopenharmony_ci   * The value of navigation menu item.
50561847f8eSopenharmony_ci   *
50661847f8eSopenharmony_ci   * @type { string }
50761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
50861847f8eSopenharmony_ci   * @crossplatform
50961847f8eSopenharmony_ci   * @since 10
51061847f8eSopenharmony_ci   */
51161847f8eSopenharmony_ci  /**
51261847f8eSopenharmony_ci   * The value of navigation menu item.
51361847f8eSopenharmony_ci   *
51461847f8eSopenharmony_ci   * @type { string }
51561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
51661847f8eSopenharmony_ci   * @crossplatform
51761847f8eSopenharmony_ci   * @atomicservice
51861847f8eSopenharmony_ci   * @since 11
51961847f8eSopenharmony_ci   */
52061847f8eSopenharmony_ci  /**
52161847f8eSopenharmony_ci   * The value of navigation menu item.
52261847f8eSopenharmony_ci   *
52361847f8eSopenharmony_ci   * @type { string | Resource }
52461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
52561847f8eSopenharmony_ci   * @crossplatform
52661847f8eSopenharmony_ci   * @atomicservice
52761847f8eSopenharmony_ci   * @since 13
52861847f8eSopenharmony_ci   */
52961847f8eSopenharmony_ci  value: string | Resource;
53061847f8eSopenharmony_ci
53161847f8eSopenharmony_ci  /**
53261847f8eSopenharmony_ci   * The icon of navigation menu item.
53361847f8eSopenharmony_ci   *
53461847f8eSopenharmony_ci   * @type { ?string }
53561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
53661847f8eSopenharmony_ci   * @since 8
53761847f8eSopenharmony_ci   */
53861847f8eSopenharmony_ci  /**
53961847f8eSopenharmony_ci   * The icon of navigation menu item.
54061847f8eSopenharmony_ci   *
54161847f8eSopenharmony_ci   * @type { ?string }
54261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
54361847f8eSopenharmony_ci   * @crossplatform
54461847f8eSopenharmony_ci   * @since 10
54561847f8eSopenharmony_ci   */
54661847f8eSopenharmony_ci  /**
54761847f8eSopenharmony_ci   * The icon of navigation menu item.
54861847f8eSopenharmony_ci   *
54961847f8eSopenharmony_ci   * @type { ?string }
55061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
55161847f8eSopenharmony_ci   * @crossplatform
55261847f8eSopenharmony_ci   * @atomicservice
55361847f8eSopenharmony_ci   * @since 11
55461847f8eSopenharmony_ci   */
55561847f8eSopenharmony_ci  /**
55661847f8eSopenharmony_ci   * The value of navigation menu item.
55761847f8eSopenharmony_ci   *
55861847f8eSopenharmony_ci   * @type { ?(string | Resource) }
55961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
56061847f8eSopenharmony_ci   * @crossplatform
56161847f8eSopenharmony_ci   * @atomicservice
56261847f8eSopenharmony_ci   * @since 13
56361847f8eSopenharmony_ci   */
56461847f8eSopenharmony_ci  icon?: string | Resource;
56561847f8eSopenharmony_ci
56661847f8eSopenharmony_ci  /**
56761847f8eSopenharmony_ci   * The symbol of navigation menu item.
56861847f8eSopenharmony_ci   *
56961847f8eSopenharmony_ci   * @type { ?SymbolGlyphModifier }
57061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
57161847f8eSopenharmony_ci   * @crossplatform
57261847f8eSopenharmony_ci   * @atomicservice
57361847f8eSopenharmony_ci   * @since 12
57461847f8eSopenharmony_ci   */
57561847f8eSopenharmony_ci  symbolIcon?: SymbolGlyphModifier;
57661847f8eSopenharmony_ci
57761847f8eSopenharmony_ci  /**
57861847f8eSopenharmony_ci   * Whether to enable this menu item.
57961847f8eSopenharmony_ci   *
58061847f8eSopenharmony_ci   * @type { ?boolean }
58161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
58261847f8eSopenharmony_ci   * @crossplatform
58361847f8eSopenharmony_ci   * @atomicservice
58461847f8eSopenharmony_ci   * @since 12
58561847f8eSopenharmony_ci   */
58661847f8eSopenharmony_ci  isEnabled?: boolean;
58761847f8eSopenharmony_ci
58861847f8eSopenharmony_ci  /**
58961847f8eSopenharmony_ci   * Trigger by navigation menu item click.
59061847f8eSopenharmony_ci   *
59161847f8eSopenharmony_ci   * @type { ?(() => void) }
59261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
59361847f8eSopenharmony_ci   * @since 8
59461847f8eSopenharmony_ci   */
59561847f8eSopenharmony_ci  /**
59661847f8eSopenharmony_ci   * Trigger by navigation menu item click.
59761847f8eSopenharmony_ci   *
59861847f8eSopenharmony_ci   * @type { ?function }
59961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
60061847f8eSopenharmony_ci   * @crossplatform
60161847f8eSopenharmony_ci   * @since 10
60261847f8eSopenharmony_ci   */
60361847f8eSopenharmony_ci  /**
60461847f8eSopenharmony_ci   * Trigger by navigation menu item click.
60561847f8eSopenharmony_ci   *
60661847f8eSopenharmony_ci   * @type { ?function }
60761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
60861847f8eSopenharmony_ci   * @crossplatform
60961847f8eSopenharmony_ci   * @atomicservice
61061847f8eSopenharmony_ci   * @since 11
61161847f8eSopenharmony_ci   */
61261847f8eSopenharmony_ci  action?: () => void;
61361847f8eSopenharmony_ci}
61461847f8eSopenharmony_ci
61561847f8eSopenharmony_ci/**
61661847f8eSopenharmony_ci * Indicates the information of the popped page.
61761847f8eSopenharmony_ci *
61861847f8eSopenharmony_ci * @interface PopInfo
61961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
62061847f8eSopenharmony_ci * @crossplatform
62161847f8eSopenharmony_ci * @since 11
62261847f8eSopenharmony_ci */
62361847f8eSopenharmony_ci/**
62461847f8eSopenharmony_ci * Indicates the information of the popped page.
62561847f8eSopenharmony_ci *
62661847f8eSopenharmony_ci * @interface PopInfo
62761847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
62861847f8eSopenharmony_ci * @crossplatform
62961847f8eSopenharmony_ci * @atomicservice
63061847f8eSopenharmony_ci * @since 12
63161847f8eSopenharmony_ci */
63261847f8eSopenharmony_cideclare interface PopInfo {
63361847f8eSopenharmony_ci  /**
63461847f8eSopenharmony_ci   * The info of the popped page.
63561847f8eSopenharmony_ci   *
63661847f8eSopenharmony_ci   * @type { NavPathInfo }
63761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
63861847f8eSopenharmony_ci   * @crossplatform
63961847f8eSopenharmony_ci   * @since 11
64061847f8eSopenharmony_ci   */
64161847f8eSopenharmony_ci  /**
64261847f8eSopenharmony_ci   * The info of the popped page.
64361847f8eSopenharmony_ci   *
64461847f8eSopenharmony_ci   * @type { NavPathInfo }
64561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
64661847f8eSopenharmony_ci   * @crossplatform
64761847f8eSopenharmony_ci   * @atomicservice
64861847f8eSopenharmony_ci   * @since 12
64961847f8eSopenharmony_ci   */
65061847f8eSopenharmony_ci  info: NavPathInfo;
65161847f8eSopenharmony_ci
65261847f8eSopenharmony_ci  /**
65361847f8eSopenharmony_ci   * The result of the popped page.
65461847f8eSopenharmony_ci   *
65561847f8eSopenharmony_ci   * @type { Object }
65661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
65761847f8eSopenharmony_ci   * @crossplatform
65861847f8eSopenharmony_ci   * @since 11
65961847f8eSopenharmony_ci   */
66061847f8eSopenharmony_ci  /**
66161847f8eSopenharmony_ci   * The result of the popped page.
66261847f8eSopenharmony_ci   *
66361847f8eSopenharmony_ci   * @type { Object }
66461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
66561847f8eSopenharmony_ci   * @crossplatform
66661847f8eSopenharmony_ci   * @atomicservice
66761847f8eSopenharmony_ci   * @since 12
66861847f8eSopenharmony_ci   */
66961847f8eSopenharmony_ci  result: Object;
67061847f8eSopenharmony_ci}
67161847f8eSopenharmony_ci
67261847f8eSopenharmony_ci/**
67361847f8eSopenharmony_ci * Indicates the information of NavDestination.
67461847f8eSopenharmony_ci *
67561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
67661847f8eSopenharmony_ci * @crossplatform
67761847f8eSopenharmony_ci * @since 10
67861847f8eSopenharmony_ci */
67961847f8eSopenharmony_ci/**
68061847f8eSopenharmony_ci * Indicates the information of NavDestination.
68161847f8eSopenharmony_ci *
68261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
68361847f8eSopenharmony_ci * @crossplatform
68461847f8eSopenharmony_ci * @atomicservice
68561847f8eSopenharmony_ci * @since 11
68661847f8eSopenharmony_ci */
68761847f8eSopenharmony_cideclare class NavPathInfo {
68861847f8eSopenharmony_ci  /**
68961847f8eSopenharmony_ci   * Creates an instance of NavPathInfo.
69061847f8eSopenharmony_ci   *
69161847f8eSopenharmony_ci   * @param { string } name - The name of NavDestination.
69261847f8eSopenharmony_ci   * @param { unknown } param - The detailed parameter of the NavDestination.
69361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
69461847f8eSopenharmony_ci   * @crossplatform
69561847f8eSopenharmony_ci   * @since 10
69661847f8eSopenharmony_ci   */
69761847f8eSopenharmony_ci  /**
69861847f8eSopenharmony_ci   * Creates an instance of NavPathInfo.
69961847f8eSopenharmony_ci   *
70061847f8eSopenharmony_ci   * @param { string } name - The name of NavDestination.
70161847f8eSopenharmony_ci   * @param { unknown } param - The detailed parameter of the NavDestination.
70261847f8eSopenharmony_ci   * @param { ?import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
70361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
70461847f8eSopenharmony_ci   * @crossplatform
70561847f8eSopenharmony_ci   * @atomicservice
70661847f8eSopenharmony_ci   * @since 11
70761847f8eSopenharmony_ci   */
70861847f8eSopenharmony_ci  /**
70961847f8eSopenharmony_ci   * Creates an instance of NavPathInfo.
71061847f8eSopenharmony_ci   *
71161847f8eSopenharmony_ci   * @param { string } name - The name of NavDestination.
71261847f8eSopenharmony_ci   * @param { unknown } param - The detailed parameter of the NavDestination.
71361847f8eSopenharmony_ci   * @param { ?import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
71461847f8eSopenharmony_ci   * @param { ?boolean } isEntry - Indicates whether it is an entry destination.
71561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
71661847f8eSopenharmony_ci   * @crossplatform
71761847f8eSopenharmony_ci   * @atomicservice
71861847f8eSopenharmony_ci   * @since 12
71961847f8eSopenharmony_ci   */
72061847f8eSopenharmony_ci  constructor(name: string, param: unknown, onPop?: import('../api/@ohos.base').Callback<PopInfo>, isEntry?: boolean);
72161847f8eSopenharmony_ci
72261847f8eSopenharmony_ci  /**
72361847f8eSopenharmony_ci   * The name of NavDestination.
72461847f8eSopenharmony_ci   *
72561847f8eSopenharmony_ci   * @type { string }
72661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
72761847f8eSopenharmony_ci   * @crossplatform
72861847f8eSopenharmony_ci   * @since 10
72961847f8eSopenharmony_ci   */
73061847f8eSopenharmony_ci  /**
73161847f8eSopenharmony_ci   * The name of NavDestination.
73261847f8eSopenharmony_ci   *
73361847f8eSopenharmony_ci   * @type { string }
73461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
73561847f8eSopenharmony_ci   * @crossplatform
73661847f8eSopenharmony_ci   * @atomicservice
73761847f8eSopenharmony_ci   * @since 11
73861847f8eSopenharmony_ci   */
73961847f8eSopenharmony_ci  name: string;
74061847f8eSopenharmony_ci
74161847f8eSopenharmony_ci  /**
74261847f8eSopenharmony_ci   * The detailed parameter of the NavDestination.
74361847f8eSopenharmony_ci   *
74461847f8eSopenharmony_ci   * @type { ?unknown }
74561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
74661847f8eSopenharmony_ci   * @crossplatform
74761847f8eSopenharmony_ci   * @since 10
74861847f8eSopenharmony_ci   */
74961847f8eSopenharmony_ci  /**
75061847f8eSopenharmony_ci   * The detailed parameter of the NavDestination.
75161847f8eSopenharmony_ci   *
75261847f8eSopenharmony_ci   * @type { ?unknown }
75361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
75461847f8eSopenharmony_ci   * @crossplatform
75561847f8eSopenharmony_ci   * @atomicservice
75661847f8eSopenharmony_ci   * @since 11
75761847f8eSopenharmony_ci   */
75861847f8eSopenharmony_ci  param?: unknown;
75961847f8eSopenharmony_ci
76061847f8eSopenharmony_ci  /**
76161847f8eSopenharmony_ci   * The callback when next page returns.
76261847f8eSopenharmony_ci   *
76361847f8eSopenharmony_ci   * @type { ?import('../api/@ohos.base').Callback<PopInfo> }
76461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
76561847f8eSopenharmony_ci   * @crossplatform
76661847f8eSopenharmony_ci   * @since 11
76761847f8eSopenharmony_ci   */
76861847f8eSopenharmony_ci  /**
76961847f8eSopenharmony_ci   * The callback when next page returns.
77061847f8eSopenharmony_ci   *
77161847f8eSopenharmony_ci   * @type { ?import('../api/@ohos.base').Callback<PopInfo> }
77261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
77361847f8eSopenharmony_ci   * @crossplatform
77461847f8eSopenharmony_ci   * @atomicservice
77561847f8eSopenharmony_ci   * @since 12
77661847f8eSopenharmony_ci   */
77761847f8eSopenharmony_ci  onPop?: import('../api/@ohos.base').Callback<PopInfo>;
77861847f8eSopenharmony_ci
77961847f8eSopenharmony_ci  /**
78061847f8eSopenharmony_ci   * Indicates whether it is an entry destination.
78161847f8eSopenharmony_ci   *
78261847f8eSopenharmony_ci   * @type { ?boolean }
78361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
78461847f8eSopenharmony_ci   * @crossplatform
78561847f8eSopenharmony_ci   * @atomicservice
78661847f8eSopenharmony_ci   * @since 12
78761847f8eSopenharmony_ci   */
78861847f8eSopenharmony_ci  isEntry?: boolean;
78961847f8eSopenharmony_ci}
79061847f8eSopenharmony_ci
79161847f8eSopenharmony_ci/**
79261847f8eSopenharmony_ci * Defines the mode of stack operation.
79361847f8eSopenharmony_ci *
79461847f8eSopenharmony_ci * @enum { number }
79561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
79661847f8eSopenharmony_ci * @crossplatform
79761847f8eSopenharmony_ci * @atomicservice
79861847f8eSopenharmony_ci * @since 12
79961847f8eSopenharmony_ci */
80061847f8eSopenharmony_cideclare enum LaunchMode {
80161847f8eSopenharmony_ci  /**
80261847f8eSopenharmony_ci   * The default mode of stack operation.
80361847f8eSopenharmony_ci   *
80461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
80561847f8eSopenharmony_ci   * @crossplatform
80661847f8eSopenharmony_ci   * @atomicservice
80761847f8eSopenharmony_ci   * @since 12
80861847f8eSopenharmony_ci   */
80961847f8eSopenharmony_ci  STANDARD = 0,
81061847f8eSopenharmony_ci
81161847f8eSopenharmony_ci  /**
81261847f8eSopenharmony_ci   * When the NavDestination with a specified name exists, it will be moved to top of stack,
81361847f8eSopenharmony_ci   * otherwise, the behavior will be consistent with the STANDARD mode.
81461847f8eSopenharmony_ci   *
81561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
81661847f8eSopenharmony_ci   * @crossplatform
81761847f8eSopenharmony_ci   * @atomicservice
81861847f8eSopenharmony_ci   * @since 12
81961847f8eSopenharmony_ci   */
82061847f8eSopenharmony_ci  MOVE_TO_TOP_SINGLETON = 1,
82161847f8eSopenharmony_ci
82261847f8eSopenharmony_ci  /**
82361847f8eSopenharmony_ci   * When the NavDestination with a specified name exists, the stack will pop until that NavDestination,
82461847f8eSopenharmony_ci   * otherwise, the behavior will be consistent with the STANDARD mode.
82561847f8eSopenharmony_ci   *
82661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
82761847f8eSopenharmony_ci   * @crossplatform
82861847f8eSopenharmony_ci   * @atomicservice
82961847f8eSopenharmony_ci   * @since 12
83061847f8eSopenharmony_ci   */
83161847f8eSopenharmony_ci  POP_TO_SINGLETON = 2,
83261847f8eSopenharmony_ci  
83361847f8eSopenharmony_ci  /**
83461847f8eSopenharmony_ci   * Forced to create a new NavDestination instance.
83561847f8eSopenharmony_ci   *
83661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
83761847f8eSopenharmony_ci   * @crossplatform
83861847f8eSopenharmony_ci   * @atomicservice
83961847f8eSopenharmony_ci   * @since 12
84061847f8eSopenharmony_ci   */
84161847f8eSopenharmony_ci  NEW_INSTANCE = 3,
84261847f8eSopenharmony_ci}
84361847f8eSopenharmony_ci
84461847f8eSopenharmony_ci/**
84561847f8eSopenharmony_ci * Indicates the options of stack operation.
84661847f8eSopenharmony_ci *
84761847f8eSopenharmony_ci * @interface NavigationOptions
84861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
84961847f8eSopenharmony_ci * @crossplatform
85061847f8eSopenharmony_ci * @atomicservice
85161847f8eSopenharmony_ci * @since 12
85261847f8eSopenharmony_ci */
85361847f8eSopenharmony_cideclare interface NavigationOptions {
85461847f8eSopenharmony_ci  /**
85561847f8eSopenharmony_ci   * Indicates the launchMode of stack operation.
85661847f8eSopenharmony_ci   *
85761847f8eSopenharmony_ci   * @type { ?LaunchMode }
85861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
85961847f8eSopenharmony_ci   * @crossplatform
86061847f8eSopenharmony_ci   * @atomicservice
86161847f8eSopenharmony_ci   * @since 12
86261847f8eSopenharmony_ci   */
86361847f8eSopenharmony_ci  launchMode?: LaunchMode;
86461847f8eSopenharmony_ci
86561847f8eSopenharmony_ci  /**
86661847f8eSopenharmony_ci   * Indicates whether the transition is animated.
86761847f8eSopenharmony_ci   *
86861847f8eSopenharmony_ci   * @type { ?boolean }
86961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
87061847f8eSopenharmony_ci   * @crossplatform
87161847f8eSopenharmony_ci   * @atomicservice
87261847f8eSopenharmony_ci   * @since 12
87361847f8eSopenharmony_ci   */
87461847f8eSopenharmony_ci  animated?: boolean;
87561847f8eSopenharmony_ci}
87661847f8eSopenharmony_ci
87761847f8eSopenharmony_ci/**
87861847f8eSopenharmony_ci * Indicates the information of NavDestinations. Providers methods for controlling destination page in the stack
87961847f8eSopenharmony_ci *
88061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
88161847f8eSopenharmony_ci * @crossplatform
88261847f8eSopenharmony_ci * @since 10
88361847f8eSopenharmony_ci */
88461847f8eSopenharmony_ci/**
88561847f8eSopenharmony_ci * Indicates the information of NavDestinations. Providers methods for controlling destination page in the stack
88661847f8eSopenharmony_ci *
88761847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
88861847f8eSopenharmony_ci * @crossplatform
88961847f8eSopenharmony_ci * @atomicservice
89061847f8eSopenharmony_ci * @since 11
89161847f8eSopenharmony_ci */
89261847f8eSopenharmony_cideclare class NavPathStack {
89361847f8eSopenharmony_ci  /**
89461847f8eSopenharmony_ci   * Creates an instance of NavPathStack.
89561847f8eSopenharmony_ci   *
89661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
89761847f8eSopenharmony_ci   * @crossplatform
89861847f8eSopenharmony_ci   * @since 10
89961847f8eSopenharmony_ci   */
90061847f8eSopenharmony_ci  /**
90161847f8eSopenharmony_ci   * Creates an instance of NavPathStack.
90261847f8eSopenharmony_ci   *
90361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
90461847f8eSopenharmony_ci   * @crossplatform
90561847f8eSopenharmony_ci   * @atomicservice
90661847f8eSopenharmony_ci   * @since 11
90761847f8eSopenharmony_ci   */
90861847f8eSopenharmony_ci  constructor();
90961847f8eSopenharmony_ci
91061847f8eSopenharmony_ci  /**
91161847f8eSopenharmony_ci   * Pushes the NavDestination into the stack.
91261847f8eSopenharmony_ci   *
91361847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
91461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
91561847f8eSopenharmony_ci   * @crossplatform
91661847f8eSopenharmony_ci   * @since 10
91761847f8eSopenharmony_ci   */
91861847f8eSopenharmony_ci  /**
91961847f8eSopenharmony_ci   * Pushes the NavDestination into the stack.
92061847f8eSopenharmony_ci   *
92161847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
92261847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
92361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
92461847f8eSopenharmony_ci   * @crossplatform
92561847f8eSopenharmony_ci   * @atomicservice
92661847f8eSopenharmony_ci   * @since 11
92761847f8eSopenharmony_ci   */
92861847f8eSopenharmony_ci  pushPath(info: NavPathInfo, animated?: boolean): void;
92961847f8eSopenharmony_ci
93061847f8eSopenharmony_ci  /**
93161847f8eSopenharmony_ci   * Pushes the NavDestination into the stack.
93261847f8eSopenharmony_ci   *
93361847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
93461847f8eSopenharmony_ci   * @param { NavigationOptions } [options] - Indicates options of stack operation.
93561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
93661847f8eSopenharmony_ci   * @crossplatform
93761847f8eSopenharmony_ci   * @atomicservice
93861847f8eSopenharmony_ci   * @since 12
93961847f8eSopenharmony_ci   */
94061847f8eSopenharmony_ci  pushPath(info: NavPathInfo, options?: NavigationOptions): void;
94161847f8eSopenharmony_ci
94261847f8eSopenharmony_ci  /**
94361847f8eSopenharmony_ci   * Pushes the NavDestination into the stack.
94461847f8eSopenharmony_ci   *
94561847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
94661847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
94761847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
94861847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
94961847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
95061847f8eSopenharmony_ci   *     2. Incorrect parameters types.
95161847f8eSopenharmony_ci   *     3. Parameter verification failed.
95261847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
95361847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
95461847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
95561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
95661847f8eSopenharmony_ci   * @crossplatform
95761847f8eSopenharmony_ci   * @since 11
95861847f8eSopenharmony_ci   */
95961847f8eSopenharmony_ci  /**
96061847f8eSopenharmony_ci   * Pushes the NavDestination into the stack.
96161847f8eSopenharmony_ci   *
96261847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
96361847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
96461847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
96561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
96661847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
96761847f8eSopenharmony_ci   *     2. Incorrect parameters types.
96861847f8eSopenharmony_ci   *     3. Parameter verification failed.
96961847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
97061847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
97161847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
97261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
97361847f8eSopenharmony_ci   * @crossplatform
97461847f8eSopenharmony_ci   * @atomicservice
97561847f8eSopenharmony_ci   * @since 12
97661847f8eSopenharmony_ci   */
97761847f8eSopenharmony_ci  pushDestination(info: NavPathInfo, animated?: boolean): Promise<void>;
97861847f8eSopenharmony_ci
97961847f8eSopenharmony_ci  /**
98061847f8eSopenharmony_ci   * Pushes the NavDestination into the stack.
98161847f8eSopenharmony_ci   *
98261847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the NavDestination to be pushed.
98361847f8eSopenharmony_ci   * @param { NavigationOptions } [options] - Indicates options of stack operation.
98461847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
98561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
98661847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
98761847f8eSopenharmony_ci   *     2. Incorrect parameters types.
98861847f8eSopenharmony_ci   *     3. Parameter verification failed.
98961847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
99061847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
99161847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
99261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
99361847f8eSopenharmony_ci   * @crossplatform
99461847f8eSopenharmony_ci   * @atomicservice
99561847f8eSopenharmony_ci   * @since 12
99661847f8eSopenharmony_ci   */
99761847f8eSopenharmony_ci  pushDestination(info: NavPathInfo, options?: NavigationOptions): Promise<void>;
99861847f8eSopenharmony_ci
99961847f8eSopenharmony_ci  /**
100061847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
100161847f8eSopenharmony_ci   *
100261847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
100361847f8eSopenharmony_ci   * @param { unknown } param - Indicates the detailed parameter of the NavDestination to be pushed.
100461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
100561847f8eSopenharmony_ci   * @crossplatform
100661847f8eSopenharmony_ci   * @since 10
100761847f8eSopenharmony_ci   */
100861847f8eSopenharmony_ci  /**
100961847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
101061847f8eSopenharmony_ci   *
101161847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
101261847f8eSopenharmony_ci   * @param { unknown } param - Indicates the detailed parameter of the NavDestination to be pushed.
101361847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
101461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
101561847f8eSopenharmony_ci   * @crossplatform
101661847f8eSopenharmony_ci   * @atomicservice
101761847f8eSopenharmony_ci   * @since 11
101861847f8eSopenharmony_ci   */
101961847f8eSopenharmony_ci  pushPathByName(name: string, param: unknown, animated?: boolean): void;
102061847f8eSopenharmony_ci
102161847f8eSopenharmony_ci  /**
102261847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
102361847f8eSopenharmony_ci   *
102461847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
102561847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
102661847f8eSopenharmony_ci   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
102761847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
102861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
102961847f8eSopenharmony_ci   * @crossplatform
103061847f8eSopenharmony_ci   * @since 11
103161847f8eSopenharmony_ci   */
103261847f8eSopenharmony_ci  /**
103361847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
103461847f8eSopenharmony_ci   *
103561847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
103661847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
103761847f8eSopenharmony_ci   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
103861847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
103961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
104061847f8eSopenharmony_ci   * @crossplatform
104161847f8eSopenharmony_ci   * @atomicservice
104261847f8eSopenharmony_ci   * @since 12
104361847f8eSopenharmony_ci   */
104461847f8eSopenharmony_ci  pushPathByName(name: string, param: Object, onPop: import('../api/@ohos.base').Callback<PopInfo>, animated?: boolean): void;
104561847f8eSopenharmony_ci
104661847f8eSopenharmony_ci  /**
104761847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
104861847f8eSopenharmony_ci   *
104961847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
105061847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
105161847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
105261847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
105361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
105461847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
105561847f8eSopenharmony_ci   *     2. Incorrect parameters types.
105661847f8eSopenharmony_ci   *     3. Parameter verification failed.
105761847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
105861847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
105961847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
106061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
106161847f8eSopenharmony_ci   * @crossplatform
106261847f8eSopenharmony_ci   * @since 11
106361847f8eSopenharmony_ci   */
106461847f8eSopenharmony_ci  /**
106561847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
106661847f8eSopenharmony_ci   *
106761847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
106861847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
106961847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
107061847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
107161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
107261847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
107361847f8eSopenharmony_ci   *     2. Incorrect parameters types.
107461847f8eSopenharmony_ci   *     3. Parameter verification failed.
107561847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
107661847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
107761847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
107861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
107961847f8eSopenharmony_ci   * @crossplatform
108061847f8eSopenharmony_ci   * @atomicservice
108161847f8eSopenharmony_ci   * @since 12
108261847f8eSopenharmony_ci   */
108361847f8eSopenharmony_ci  pushDestinationByName(name: string, param: Object, animated?: boolean): Promise<void>;
108461847f8eSopenharmony_ci
108561847f8eSopenharmony_ci  /**
108661847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
108761847f8eSopenharmony_ci   *
108861847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
108961847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
109061847f8eSopenharmony_ci   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
109161847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
109261847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
109361847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
109461847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
109561847f8eSopenharmony_ci   *     2. Incorrect parameters types.
109661847f8eSopenharmony_ci   *     3. Parameter verification failed.
109761847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
109861847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
109961847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
110061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
110161847f8eSopenharmony_ci   * @crossplatform
110261847f8eSopenharmony_ci   * @since 11
110361847f8eSopenharmony_ci   */
110461847f8eSopenharmony_ci  /**
110561847f8eSopenharmony_ci   * Pushes the specified NavDestination into the stack.
110661847f8eSopenharmony_ci   *
110761847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be pushed.
110861847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed.
110961847f8eSopenharmony_ci   * @param { import('../api/@ohos.base').Callback<PopInfo> } onPop - The callback when next page returns.
111061847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
111161847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
111261847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
111361847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
111461847f8eSopenharmony_ci   *     2. Incorrect parameters types.
111561847f8eSopenharmony_ci   *     3. Parameter verification failed.
111661847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
111761847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
111861847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
111961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
112061847f8eSopenharmony_ci   * @crossplatform
112161847f8eSopenharmony_ci   * @atomicservice
112261847f8eSopenharmony_ci   * @since 12
112361847f8eSopenharmony_ci   */
112461847f8eSopenharmony_ci  pushDestinationByName(name: string, param: Object, onPop: import('../api/@ohos.base').Callback<PopInfo>, animated?: boolean): Promise<void>;
112561847f8eSopenharmony_ci
112661847f8eSopenharmony_ci  /**
112761847f8eSopenharmony_ci   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
112861847f8eSopenharmony_ci   *
112961847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the new NavDestination in top of the stack.
113061847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
113161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
113261847f8eSopenharmony_ci   * @crossplatform
113361847f8eSopenharmony_ci   * @since 11
113461847f8eSopenharmony_ci   */
113561847f8eSopenharmony_ci  /**
113661847f8eSopenharmony_ci   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
113761847f8eSopenharmony_ci   *
113861847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the new NavDestination in top of the stack.
113961847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
114061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
114161847f8eSopenharmony_ci   * @crossplatform
114261847f8eSopenharmony_ci   * @atomicservice
114361847f8eSopenharmony_ci   * @since 12
114461847f8eSopenharmony_ci   */
114561847f8eSopenharmony_ci  replacePath(info: NavPathInfo, animated?: boolean): void;
114661847f8eSopenharmony_ci
114761847f8eSopenharmony_ci  /**
114861847f8eSopenharmony_ci   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
114961847f8eSopenharmony_ci   *
115061847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the new NavDestination in top of the stack.
115161847f8eSopenharmony_ci   * @param { NavigationOptions } [options] - Indicates options of stack operation.
115261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
115361847f8eSopenharmony_ci   * @crossplatform
115461847f8eSopenharmony_ci   * @atomicservice
115561847f8eSopenharmony_ci   * @since 12
115661847f8eSopenharmony_ci   */
115761847f8eSopenharmony_ci  replacePath(info: NavPathInfo, options?: NavigationOptions): void;
115861847f8eSopenharmony_ci
115961847f8eSopenharmony_ci  /**
116061847f8eSopenharmony_ci   * Replace the NavDestination into the stack.
116161847f8eSopenharmony_ci   *
116261847f8eSopenharmony_ci   * @param { NavPathInfo } info - Indicates the NavDestination to replace in stack.
116361847f8eSopenharmony_ci   * @param { NavigationOptions } [options] - Indicates options of stack operation.
116461847f8eSopenharmony_ci   * @returns { Promise<void> } The promise returned by the function.
116561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible causes: 
116661847f8eSopenharmony_ci   *     1. Mandatory parameters are left unspecified.
116761847f8eSopenharmony_ci   *     2. Incorrect parameters types.
116861847f8eSopenharmony_ci   *     3. Parameter verification failed.
116961847f8eSopenharmony_ci   * @throws { BusinessError } 100001 - Internal error.
117061847f8eSopenharmony_ci   * @throws { BusinessError } 100005 - Builder function not registered.
117161847f8eSopenharmony_ci   * @throws { BusinessError } 100006 - NavDestination not found.
117261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
117361847f8eSopenharmony_ci   * @crossplatform
117461847f8eSopenharmony_ci   * @atomicservice
117561847f8eSopenharmony_ci   * @since 14
117661847f8eSopenharmony_ci   */
117761847f8eSopenharmony_ci  replaceDestination(info: NavPathInfo, options?: NavigationOptions): Promise<void>;
117861847f8eSopenharmony_ci
117961847f8eSopenharmony_ci  /**
118061847f8eSopenharmony_ci   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
118161847f8eSopenharmony_ci   *
118261847f8eSopenharmony_ci   * @param { string } name - Indicates name of the new NavDestination in top of stack.
118361847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack.
118461847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
118561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
118661847f8eSopenharmony_ci   * @crossplatform
118761847f8eSopenharmony_ci   * @since 11
118861847f8eSopenharmony_ci   */
118961847f8eSopenharmony_ci  /**
119061847f8eSopenharmony_ci   * Replace the current NavDestination with the specific one.The current NavDestination will be destroyed.
119161847f8eSopenharmony_ci   *
119261847f8eSopenharmony_ci   * @param { string } name - Indicates name of the new NavDestination in top of stack.
119361847f8eSopenharmony_ci   * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack.
119461847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
119561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
119661847f8eSopenharmony_ci   * @crossplatform
119761847f8eSopenharmony_ci   * @atomicservice
119861847f8eSopenharmony_ci   * @since 12
119961847f8eSopenharmony_ci   */
120061847f8eSopenharmony_ci  replacePathByName(name: string, param: Object, animated?: boolean): void;
120161847f8eSopenharmony_ci
120261847f8eSopenharmony_ci  /**
120361847f8eSopenharmony_ci   * Remove the specified NavDestinations by indexes.
120461847f8eSopenharmony_ci   *
120561847f8eSopenharmony_ci   * @param { Array<number> } indexes - Indicates the indexes of the NavDestinations to be removed.
120661847f8eSopenharmony_ci   * @returns { number } Returns the number of removed pages. Invalid indexes will be ignored.
120761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
120861847f8eSopenharmony_ci   * @crossplatform
120961847f8eSopenharmony_ci   * @since 11
121061847f8eSopenharmony_ci   */
121161847f8eSopenharmony_ci  /**
121261847f8eSopenharmony_ci   * Remove the specified NavDestinations by indexes.
121361847f8eSopenharmony_ci   *
121461847f8eSopenharmony_ci   * @param { Array<number> } indexes - Indicates the indexes of the NavDestinations to be removed.
121561847f8eSopenharmony_ci   * @returns { number } Returns the number of removed pages. Invalid indexes will be ignored.
121661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
121761847f8eSopenharmony_ci   * @crossplatform
121861847f8eSopenharmony_ci   * @atomicservice
121961847f8eSopenharmony_ci   * @since 12
122061847f8eSopenharmony_ci   */
122161847f8eSopenharmony_ci  removeByIndexes(indexes: Array<number>): number;
122261847f8eSopenharmony_ci
122361847f8eSopenharmony_ci  /**
122461847f8eSopenharmony_ci   * Remove the specified NavDestination by name.
122561847f8eSopenharmony_ci   *
122661847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be removed.
122761847f8eSopenharmony_ci   * @returns { number } Returns the number of removed NavDestinations.
122861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
122961847f8eSopenharmony_ci   * @crossplatform
123061847f8eSopenharmony_ci   * @since 11
123161847f8eSopenharmony_ci   */
123261847f8eSopenharmony_ci  /**
123361847f8eSopenharmony_ci   * Remove the specified NavDestination by name.
123461847f8eSopenharmony_ci   *
123561847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be removed.
123661847f8eSopenharmony_ci   * @returns { number } Returns the number of removed NavDestinations.
123761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
123861847f8eSopenharmony_ci   * @crossplatform
123961847f8eSopenharmony_ci   * @atomicservice
124061847f8eSopenharmony_ci   * @since 12
124161847f8eSopenharmony_ci   */
124261847f8eSopenharmony_ci  removeByName(name: string): number;
124361847f8eSopenharmony_ci
124461847f8eSopenharmony_ci  /**
124561847f8eSopenharmony_ci   * Remove the specified NavDestination by its navDestinationId.
124661847f8eSopenharmony_ci   *
124761847f8eSopenharmony_ci   * @param { string } navDestinationId - Indicates the navDestinationId of the NavDestination to be removed.
124861847f8eSopenharmony_ci   * @returns { boolean } Returns true if remove successfully, otherwise returns false.
124961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
125061847f8eSopenharmony_ci   * @crossplatform
125161847f8eSopenharmony_ci   * @atomicservice
125261847f8eSopenharmony_ci   * @since 12
125361847f8eSopenharmony_ci   */
125461847f8eSopenharmony_ci  removeByNavDestinationId(navDestinationId: string): boolean;
125561847f8eSopenharmony_ci
125661847f8eSopenharmony_ci  /**
125761847f8eSopenharmony_ci   * Pops the top NavDestination out of the stack.
125861847f8eSopenharmony_ci   *
125961847f8eSopenharmony_ci   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
126061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
126161847f8eSopenharmony_ci   * @crossplatform
126261847f8eSopenharmony_ci   * @since 10
126361847f8eSopenharmony_ci   */
126461847f8eSopenharmony_ci  /**
126561847f8eSopenharmony_ci   * Pops the top NavDestination out of the stack.
126661847f8eSopenharmony_ci   *
126761847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
126861847f8eSopenharmony_ci   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
126961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
127061847f8eSopenharmony_ci   * @crossplatform
127161847f8eSopenharmony_ci   * @atomicservice
127261847f8eSopenharmony_ci   * @since 11
127361847f8eSopenharmony_ci   */
127461847f8eSopenharmony_ci  pop(animated?: boolean): NavPathInfo | undefined;
127561847f8eSopenharmony_ci
127661847f8eSopenharmony_ci  /**
127761847f8eSopenharmony_ci   * Pops the top NavDestination out of the stack.
127861847f8eSopenharmony_ci   *
127961847f8eSopenharmony_ci   * @param { Object } result - The result of the NavDestination.
128061847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
128161847f8eSopenharmony_ci   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
128261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
128361847f8eSopenharmony_ci   * @crossplatform
128461847f8eSopenharmony_ci   * @since 11
128561847f8eSopenharmony_ci   */
128661847f8eSopenharmony_ci  /**
128761847f8eSopenharmony_ci   * Pops the top NavDestination out of the stack.
128861847f8eSopenharmony_ci   *
128961847f8eSopenharmony_ci   * @param { Object } result - The result of the NavDestination.
129061847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
129161847f8eSopenharmony_ci   * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined.
129261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
129361847f8eSopenharmony_ci   * @crossplatform
129461847f8eSopenharmony_ci   * @atomicservice
129561847f8eSopenharmony_ci   * @since 12
129661847f8eSopenharmony_ci   */
129761847f8eSopenharmony_ci  pop(result: Object, animated?: boolean): NavPathInfo | undefined;
129861847f8eSopenharmony_ci
129961847f8eSopenharmony_ci  /**
130061847f8eSopenharmony_ci   * Pops the specified NavDestination out of the stack.
130161847f8eSopenharmony_ci   *
130261847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be popped.
130361847f8eSopenharmony_ci   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
130461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
130561847f8eSopenharmony_ci   * @crossplatform
130661847f8eSopenharmony_ci   * @since 10
130761847f8eSopenharmony_ci   */
130861847f8eSopenharmony_ci  /**
130961847f8eSopenharmony_ci   * Pops the specified NavDestination out of the stack.
131061847f8eSopenharmony_ci   *
131161847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be popped.
131261847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
131361847f8eSopenharmony_ci   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
131461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
131561847f8eSopenharmony_ci   * @crossplatform
131661847f8eSopenharmony_ci   * @atomicservice
131761847f8eSopenharmony_ci   * @since 11
131861847f8eSopenharmony_ci   */
131961847f8eSopenharmony_ci  popToName(name: string, animated?: boolean): number;
132061847f8eSopenharmony_ci
132161847f8eSopenharmony_ci  /**
132261847f8eSopenharmony_ci   * Pops the specified NavDestination out of the stack.
132361847f8eSopenharmony_ci   *
132461847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be popped.
132561847f8eSopenharmony_ci   * @param { Object } result - The result of the NavDestination.
132661847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
132761847f8eSopenharmony_ci   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
132861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
132961847f8eSopenharmony_ci   * @crossplatform
133061847f8eSopenharmony_ci   * @since 11
133161847f8eSopenharmony_ci   */
133261847f8eSopenharmony_ci  /**
133361847f8eSopenharmony_ci   * Pops the specified NavDestination out of the stack.
133461847f8eSopenharmony_ci   *
133561847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be popped.
133661847f8eSopenharmony_ci   * @param { Object } result - The result of the NavDestination.
133761847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
133861847f8eSopenharmony_ci   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
133961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
134061847f8eSopenharmony_ci   * @crossplatform
134161847f8eSopenharmony_ci   * @atomicservice
134261847f8eSopenharmony_ci   * @since 12
134361847f8eSopenharmony_ci   */
134461847f8eSopenharmony_ci  popToName(name: string, result: Object, animated?: boolean): number;
134561847f8eSopenharmony_ci
134661847f8eSopenharmony_ci  /**
134761847f8eSopenharmony_ci   * Pops the specified NavDestination out of the stack.
134861847f8eSopenharmony_ci   *
134961847f8eSopenharmony_ci   * @param { number } index - Indicates the index of the NavDestination to be popped.
135061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
135161847f8eSopenharmony_ci   * @crossplatform
135261847f8eSopenharmony_ci   * @since 10
135361847f8eSopenharmony_ci   */
135461847f8eSopenharmony_ci  /**
135561847f8eSopenharmony_ci   * Pops the specified NavDestination out of the stack.
135661847f8eSopenharmony_ci   *
135761847f8eSopenharmony_ci   * @param { number } index - Indicates the index of the NavDestination to be popped.
135861847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
135961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
136061847f8eSopenharmony_ci   * @crossplatform
136161847f8eSopenharmony_ci   * @atomicservice
136261847f8eSopenharmony_ci   * @since 11
136361847f8eSopenharmony_ci   */
136461847f8eSopenharmony_ci  popToIndex(index: number, animated?: boolean): void;
136561847f8eSopenharmony_ci
136661847f8eSopenharmony_ci  /**
136761847f8eSopenharmony_ci   * Pops the specified NavDestination out of the stack.
136861847f8eSopenharmony_ci   *
136961847f8eSopenharmony_ci   * @param { number } index - Indicates the index of the NavDestination to be popped.
137061847f8eSopenharmony_ci   * @param { Object } result - The result of the NavDestination.
137161847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
137261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
137361847f8eSopenharmony_ci   * @crossplatform
137461847f8eSopenharmony_ci   * @atomicservice
137561847f8eSopenharmony_ci   * @since 11
137661847f8eSopenharmony_ci   */
137761847f8eSopenharmony_ci  popToIndex(index: number, result: Object, animated?: boolean): void;
137861847f8eSopenharmony_ci
137961847f8eSopenharmony_ci  /**
138061847f8eSopenharmony_ci   * Moves the specified NavDestination to stack top.
138161847f8eSopenharmony_ci   *
138261847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be moved to the top.
138361847f8eSopenharmony_ci   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
138461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
138561847f8eSopenharmony_ci   * @crossplatform
138661847f8eSopenharmony_ci   * @since 10
138761847f8eSopenharmony_ci   */
138861847f8eSopenharmony_ci  /**
138961847f8eSopenharmony_ci   * Moves the specified NavDestination to stack top.
139061847f8eSopenharmony_ci   *
139161847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination to be moved to the top.
139261847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
139361847f8eSopenharmony_ci   * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1;
139461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
139561847f8eSopenharmony_ci   * @crossplatform
139661847f8eSopenharmony_ci   * @atomicservice
139761847f8eSopenharmony_ci   * @since 11
139861847f8eSopenharmony_ci   */
139961847f8eSopenharmony_ci  moveToTop(name: string, animated?: boolean): number;
140061847f8eSopenharmony_ci
140161847f8eSopenharmony_ci  /**
140261847f8eSopenharmony_ci   * Moves the specified NavDestination to stack top.
140361847f8eSopenharmony_ci   *
140461847f8eSopenharmony_ci   * @param { number } index - Indicates the index of the NavDestination to be moved to the top.
140561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
140661847f8eSopenharmony_ci   * @crossplatform
140761847f8eSopenharmony_ci   * @since 10
140861847f8eSopenharmony_ci   */
140961847f8eSopenharmony_ci  /**
141061847f8eSopenharmony_ci   * Moves the specified NavDestination to stack top.
141161847f8eSopenharmony_ci   *
141261847f8eSopenharmony_ci   * @param { number } index - Indicates the index of the NavDestination to be moved to the top.
141361847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
141461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
141561847f8eSopenharmony_ci   * @crossplatform
141661847f8eSopenharmony_ci   * @atomicservice
141761847f8eSopenharmony_ci   * @since 11
141861847f8eSopenharmony_ci   */
141961847f8eSopenharmony_ci  moveIndexToTop(index: number, animated?: boolean): void;
142061847f8eSopenharmony_ci
142161847f8eSopenharmony_ci  /**
142261847f8eSopenharmony_ci   * Clears the stack.
142361847f8eSopenharmony_ci   *
142461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
142561847f8eSopenharmony_ci   * @crossplatform
142661847f8eSopenharmony_ci   * @since 10
142761847f8eSopenharmony_ci   */
142861847f8eSopenharmony_ci  /**
142961847f8eSopenharmony_ci   * Clears the stack.
143061847f8eSopenharmony_ci   *
143161847f8eSopenharmony_ci   * @param { boolean } [animated] - Indicates whether the transition is animated.
143261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
143361847f8eSopenharmony_ci   * @crossplatform
143461847f8eSopenharmony_ci   * @atomicservice
143561847f8eSopenharmony_ci   * @since 11
143661847f8eSopenharmony_ci   */
143761847f8eSopenharmony_ci  clear(animated?: boolean): void;
143861847f8eSopenharmony_ci
143961847f8eSopenharmony_ci  /**
144061847f8eSopenharmony_ci   * Obtains all the NavDestination name in the stack.
144161847f8eSopenharmony_ci   *
144261847f8eSopenharmony_ci   * @returns { Array<string> } Returns all the NavDestination name in the stack;
144361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
144461847f8eSopenharmony_ci   * @crossplatform
144561847f8eSopenharmony_ci   * @since 10
144661847f8eSopenharmony_ci   */
144761847f8eSopenharmony_ci  /**
144861847f8eSopenharmony_ci   * Obtains all the NavDestination name in the stack.
144961847f8eSopenharmony_ci   *
145061847f8eSopenharmony_ci   * @returns { Array<string> } Returns all the NavDestination name in the stack;
145161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
145261847f8eSopenharmony_ci   * @crossplatform
145361847f8eSopenharmony_ci   * @atomicservice
145461847f8eSopenharmony_ci   * @since 11
145561847f8eSopenharmony_ci   */
145661847f8eSopenharmony_ci  getAllPathName(): Array<string>;
145761847f8eSopenharmony_ci
145861847f8eSopenharmony_ci  /**
145961847f8eSopenharmony_ci   * Obtains the param of the specified NavDestination.
146061847f8eSopenharmony_ci   *
146161847f8eSopenharmony_ci   * @param { number } index - Indicates the index of the NavDestination.
146261847f8eSopenharmony_ci   * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined;
146361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
146461847f8eSopenharmony_ci   * @crossplatform
146561847f8eSopenharmony_ci   * @since 10
146661847f8eSopenharmony_ci   */
146761847f8eSopenharmony_ci  /**
146861847f8eSopenharmony_ci   * Obtains the param of the specified NavDestination.
146961847f8eSopenharmony_ci   *
147061847f8eSopenharmony_ci   * @param { number } index - Indicates the index of the NavDestination.
147161847f8eSopenharmony_ci   * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined;
147261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
147361847f8eSopenharmony_ci   * @crossplatform
147461847f8eSopenharmony_ci   * @atomicservice
147561847f8eSopenharmony_ci   * @since 11
147661847f8eSopenharmony_ci   */
147761847f8eSopenharmony_ci  getParamByIndex(index: number): unknown | undefined;
147861847f8eSopenharmony_ci
147961847f8eSopenharmony_ci  /**
148061847f8eSopenharmony_ci   * Obtains the param of the specified NavDestination.
148161847f8eSopenharmony_ci   *
148261847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination.
148361847f8eSopenharmony_ci   * @returns { Array<unknown> } Returns the detailed parameter of all the NavDestinations.
148461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
148561847f8eSopenharmony_ci   * @crossplatform
148661847f8eSopenharmony_ci   * @since 10
148761847f8eSopenharmony_ci   */
148861847f8eSopenharmony_ci  /**
148961847f8eSopenharmony_ci   * Obtains the param of the specified NavDestination.
149061847f8eSopenharmony_ci   *
149161847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination.
149261847f8eSopenharmony_ci   * @returns { Array<unknown> } Returns the detailed parameter of all the NavDestinations.
149361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
149461847f8eSopenharmony_ci   * @crossplatform
149561847f8eSopenharmony_ci   * @atomicservice
149661847f8eSopenharmony_ci   * @since 11
149761847f8eSopenharmony_ci   */
149861847f8eSopenharmony_ci  getParamByName(name: string): Array<unknown>;
149961847f8eSopenharmony_ci
150061847f8eSopenharmony_ci  /**
150161847f8eSopenharmony_ci   * Obtains the index of the specified NavDestination.
150261847f8eSopenharmony_ci   *
150361847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination.
150461847f8eSopenharmony_ci   * @returns { Array<number> } Returns the index of all the NavDestinations.
150561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
150661847f8eSopenharmony_ci   * @crossplatform
150761847f8eSopenharmony_ci   * @since 10
150861847f8eSopenharmony_ci   */
150961847f8eSopenharmony_ci  /**
151061847f8eSopenharmony_ci   * Obtains the index of the specified NavDestination.
151161847f8eSopenharmony_ci   *
151261847f8eSopenharmony_ci   * @param { string } name - Indicates the name of the NavDestination.
151361847f8eSopenharmony_ci   * @returns { Array<number> } Returns the index of all the NavDestinations.
151461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
151561847f8eSopenharmony_ci   * @crossplatform
151661847f8eSopenharmony_ci   * @atomicservice
151761847f8eSopenharmony_ci   * @since 11
151861847f8eSopenharmony_ci   */
151961847f8eSopenharmony_ci  getIndexByName(name: string): Array<number>;
152061847f8eSopenharmony_ci
152161847f8eSopenharmony_ci  /**
152261847f8eSopenharmony_ci   * Obtains the parent of the current stack.
152361847f8eSopenharmony_ci   *
152461847f8eSopenharmony_ci   * @returns { NavPathStack | null } Returns the parent of the current stack. If no parent, it returns null.
152561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
152661847f8eSopenharmony_ci   * @crossplatform
152761847f8eSopenharmony_ci   * @atomicservice
152861847f8eSopenharmony_ci   * @since 11
152961847f8eSopenharmony_ci   */
153061847f8eSopenharmony_ci  getParent(): NavPathStack | null;
153161847f8eSopenharmony_ci
153261847f8eSopenharmony_ci  /**
153361847f8eSopenharmony_ci   * Obtains the size of the stack.
153461847f8eSopenharmony_ci   *
153561847f8eSopenharmony_ci   * @returns { number } Returns the size of the stack.
153661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
153761847f8eSopenharmony_ci   * @crossplatform
153861847f8eSopenharmony_ci   * @since 10
153961847f8eSopenharmony_ci   */
154061847f8eSopenharmony_ci  /**
154161847f8eSopenharmony_ci   * Obtains the size of the stack.
154261847f8eSopenharmony_ci   *
154361847f8eSopenharmony_ci   * @returns { number } Returns the size of the stack.
154461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
154561847f8eSopenharmony_ci   * @crossplatform
154661847f8eSopenharmony_ci   * @atomicservice
154761847f8eSopenharmony_ci   * @since 11
154861847f8eSopenharmony_ci   */
154961847f8eSopenharmony_ci  size(): number;
155061847f8eSopenharmony_ci
155161847f8eSopenharmony_ci  /**
155261847f8eSopenharmony_ci   * disable or enable all transition animation in this navigation stack.
155361847f8eSopenharmony_ci   *
155461847f8eSopenharmony_ci   * @param { boolean } value - Indicates whether the transition is animated.
155561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
155661847f8eSopenharmony_ci   * @crossplatform
155761847f8eSopenharmony_ci   * @since 11
155861847f8eSopenharmony_ci   */
155961847f8eSopenharmony_ci  /**
156061847f8eSopenharmony_ci   * disable or enable all transition animation in this navigation stack.
156161847f8eSopenharmony_ci   *
156261847f8eSopenharmony_ci   * @param { boolean } value - Indicates whether the transition is animated.
156361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
156461847f8eSopenharmony_ci   * @crossplatform
156561847f8eSopenharmony_ci   * @atomicservice
156661847f8eSopenharmony_ci   * @since 12
156761847f8eSopenharmony_ci   */
156861847f8eSopenharmony_ci  disableAnimation(value: boolean): void;
156961847f8eSopenharmony_ci
157061847f8eSopenharmony_ci  /**
157161847f8eSopenharmony_ci   * set navigation transition interception.It will be called in navPathStack changes or navigation mode changes.
157261847f8eSopenharmony_ci   *
157361847f8eSopenharmony_ci   * @param { NavigationInterception } interception - the instance to intercept in navigation changes.
157461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
157561847f8eSopenharmony_ci   * @crossplatform
157661847f8eSopenharmony_ci   * @atomicservice
157761847f8eSopenharmony_ci   * @since 12
157861847f8eSopenharmony_ci   */
157961847f8eSopenharmony_ci  setInterception(interception: NavigationInterception): void;
158061847f8eSopenharmony_ci}
158161847f8eSopenharmony_ci
158261847f8eSopenharmony_ci/**
158361847f8eSopenharmony_ci * Navigation home name
158461847f8eSopenharmony_ci *
158561847f8eSopenharmony_ci * @typedef { 'navBar' } NavBar
158661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
158761847f8eSopenharmony_ci * @crossplatform
158861847f8eSopenharmony_ci * @atomicservice
158961847f8eSopenharmony_ci * @since 12
159061847f8eSopenharmony_ci */
159161847f8eSopenharmony_cideclare type NavBar = 'navBar'
159261847f8eSopenharmony_ci
159361847f8eSopenharmony_ci/**
159461847f8eSopenharmony_ci * navigation interception callback using in willShow and didShow
159561847f8eSopenharmony_ci *
159661847f8eSopenharmony_ci * @typedef { function } InterceptionShowCallback
159761847f8eSopenharmony_ci * @param { NavDestinationContext | NavBar } from - Indicates the starting NavDestination or NavBar.
159861847f8eSopenharmony_ci * @param { NavDestinationContext | NavBar } to - Indicates the destination NavDestination or NavBar.
159961847f8eSopenharmony_ci * @param { NavigationOperation } operation - Indicates the type of stack operation.
160061847f8eSopenharmony_ci * @param { boolean } isAnimated - Indicates whether the transition is animated.
160161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
160261847f8eSopenharmony_ci * @crossplatform
160361847f8eSopenharmony_ci * @atomicservice
160461847f8eSopenharmony_ci * @since 12
160561847f8eSopenharmony_ci */
160661847f8eSopenharmony_cideclare type InterceptionShowCallback = (from: NavDestinationContext|NavBar, to: NavDestinationContext|NavBar, operation: NavigationOperation, isAnimated: boolean) => void;
160761847f8eSopenharmony_ci
160861847f8eSopenharmony_ci/**
160961847f8eSopenharmony_ci * navigation interception callback using in navigation mode change
161061847f8eSopenharmony_ci *
161161847f8eSopenharmony_ci * @typedef { function } InterceptionModeCallback
161261847f8eSopenharmony_ci * @param { NavigationMode } mode - Indicates the mode of Navigation.
161361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
161461847f8eSopenharmony_ci * @crossplatform
161561847f8eSopenharmony_ci * @atomicservice
161661847f8eSopenharmony_ci * @since 12
161761847f8eSopenharmony_ci */
161861847f8eSopenharmony_cideclare type InterceptionModeCallback = (mode: NavigationMode) => void;
161961847f8eSopenharmony_ci
162061847f8eSopenharmony_ci/**
162161847f8eSopenharmony_ci * Provide navigation transition interception
162261847f8eSopenharmony_ci *
162361847f8eSopenharmony_ci * @interface NavigationInterception
162461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
162561847f8eSopenharmony_ci * @crossplatform
162661847f8eSopenharmony_ci * @atomicservice
162761847f8eSopenharmony_ci * @since 12
162861847f8eSopenharmony_ci */
162961847f8eSopenharmony_cideclare interface NavigationInterception {
163061847f8eSopenharmony_ci  /**
163161847f8eSopenharmony_ci   * Called before destination transition.NavPathStack can be changed in this callback,
163261847f8eSopenharmony_ci   * it will takes effect during this transition.For details, see { @Link InterceptionShowCallback}.
163361847f8eSopenharmony_ci   *
163461847f8eSopenharmony_ci   * @type { ?InterceptionShowCallback }
163561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
163661847f8eSopenharmony_ci   * @crossplatform
163761847f8eSopenharmony_ci   * @atomicservice
163861847f8eSopenharmony_ci   * @since 12
163961847f8eSopenharmony_ci   */
164061847f8eSopenharmony_ci  willShow?: InterceptionShowCallback;
164161847f8eSopenharmony_ci
164261847f8eSopenharmony_ci  /**
164361847f8eSopenharmony_ci   * Called after destination transition.For details, see { @Link InterceptionShowCallback}.
164461847f8eSopenharmony_ci   *
164561847f8eSopenharmony_ci   * @type { ?InterceptionShowCallback }
164661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
164761847f8eSopenharmony_ci   * @crossplatform
164861847f8eSopenharmony_ci   * @atomicservice
164961847f8eSopenharmony_ci   * @since 12
165061847f8eSopenharmony_ci   */
165161847f8eSopenharmony_ci  didShow?: InterceptionShowCallback;
165261847f8eSopenharmony_ci
165361847f8eSopenharmony_ci  /**
165461847f8eSopenharmony_ci   * Called when navigation mode changed.For details, see { @Link InterceptionModeCallback}.
165561847f8eSopenharmony_ci   *
165661847f8eSopenharmony_ci   * @type { ?InterceptionModeCallback }
165761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
165861847f8eSopenharmony_ci   * @crossplatform
165961847f8eSopenharmony_ci   * @atomicservice
166061847f8eSopenharmony_ci   * @since 12
166161847f8eSopenharmony_ci   */
166261847f8eSopenharmony_ci  modeChange?: InterceptionModeCallback;
166361847f8eSopenharmony_ci}
166461847f8eSopenharmony_ci
166561847f8eSopenharmony_ci/**
166661847f8eSopenharmony_ci * Provide navigator view interface
166761847f8eSopenharmony_ci *
166861847f8eSopenharmony_ci * @interface NavigationInterface
166961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
167061847f8eSopenharmony_ci * @since 8
167161847f8eSopenharmony_ci */
167261847f8eSopenharmony_ci/**
167361847f8eSopenharmony_ci * Provide navigator view interface
167461847f8eSopenharmony_ci *
167561847f8eSopenharmony_ci * @interface NavigationInterface
167661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
167761847f8eSopenharmony_ci * @crossplatform
167861847f8eSopenharmony_ci * @since 10
167961847f8eSopenharmony_ci */
168061847f8eSopenharmony_ci/**
168161847f8eSopenharmony_ci * Provide navigator view interface
168261847f8eSopenharmony_ci *
168361847f8eSopenharmony_ci * @interface NavigationInterface
168461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
168561847f8eSopenharmony_ci * @crossplatform
168661847f8eSopenharmony_ci * @atomicservice
168761847f8eSopenharmony_ci * @since 11
168861847f8eSopenharmony_ci */
168961847f8eSopenharmony_ciinterface NavigationInterface {
169061847f8eSopenharmony_ci  /**
169161847f8eSopenharmony_ci   * Called when the navigator view interface is used.
169261847f8eSopenharmony_ci   *
169361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
169461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
169561847f8eSopenharmony_ci   * @since 8
169661847f8eSopenharmony_ci   */
169761847f8eSopenharmony_ci  /**
169861847f8eSopenharmony_ci   * Called when the navigator view interface is used.
169961847f8eSopenharmony_ci   *
170061847f8eSopenharmony_ci   * @returns { NavigationAttribute }
170161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
170261847f8eSopenharmony_ci   * @crossplatform
170361847f8eSopenharmony_ci   * @since 10
170461847f8eSopenharmony_ci   */
170561847f8eSopenharmony_ci  /**
170661847f8eSopenharmony_ci   * Called when the navigator view interface is used.
170761847f8eSopenharmony_ci   *
170861847f8eSopenharmony_ci   * @returns { NavigationAttribute }
170961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
171061847f8eSopenharmony_ci   * @crossplatform
171161847f8eSopenharmony_ci   * @atomicservice
171261847f8eSopenharmony_ci   * @since 11
171361847f8eSopenharmony_ci   */
171461847f8eSopenharmony_ci  (): NavigationAttribute;
171561847f8eSopenharmony_ci
171661847f8eSopenharmony_ci  /**
171761847f8eSopenharmony_ci   * Called when the navigator view interface is used, with route table provided.
171861847f8eSopenharmony_ci   *
171961847f8eSopenharmony_ci   * @param { NavPathStack } pathInfos - The stack of the route table.
172061847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
172161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
172261847f8eSopenharmony_ci   * @crossplatform
172361847f8eSopenharmony_ci   * @since 10
172461847f8eSopenharmony_ci   */
172561847f8eSopenharmony_ci  /**
172661847f8eSopenharmony_ci   * Called when the navigator view interface is used, with route table provided.
172761847f8eSopenharmony_ci   *
172861847f8eSopenharmony_ci   * @param { NavPathStack } pathInfos - The stack of the route table.
172961847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
173061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
173161847f8eSopenharmony_ci   * @crossplatform
173261847f8eSopenharmony_ci   * @atomicservice
173361847f8eSopenharmony_ci   * @since 11
173461847f8eSopenharmony_ci   */
173561847f8eSopenharmony_ci  (pathInfos: NavPathStack): NavigationAttribute;
173661847f8eSopenharmony_ci}
173761847f8eSopenharmony_ci
173861847f8eSopenharmony_ci/**
173961847f8eSopenharmony_ci * Defines the status of toolbar item and it is used in the ToolbarItem interface.
174061847f8eSopenharmony_ci *
174161847f8eSopenharmony_ci * @enum { number }
174261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
174361847f8eSopenharmony_ci * @since 10
174461847f8eSopenharmony_ci */
174561847f8eSopenharmony_ci/**
174661847f8eSopenharmony_ci * Defines the status of toolbar item and it is used in the ToolbarItem interface.
174761847f8eSopenharmony_ci *
174861847f8eSopenharmony_ci * @enum { number }
174961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
175061847f8eSopenharmony_ci * @crossplatform
175161847f8eSopenharmony_ci * @atomicservice
175261847f8eSopenharmony_ci * @since 11
175361847f8eSopenharmony_ci */
175461847f8eSopenharmony_cideclare enum ToolbarItemStatus {
175561847f8eSopenharmony_ci  /**
175661847f8eSopenharmony_ci   * Normal state of toolbar item.
175761847f8eSopenharmony_ci   *
175861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
175961847f8eSopenharmony_ci   * @since 10
176061847f8eSopenharmony_ci   */
176161847f8eSopenharmony_ci  /**
176261847f8eSopenharmony_ci   * Normal state of toolbar item.
176361847f8eSopenharmony_ci   *
176461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
176561847f8eSopenharmony_ci   * @crossplatform
176661847f8eSopenharmony_ci   * @atomicservice
176761847f8eSopenharmony_ci   * @since 11
176861847f8eSopenharmony_ci   */
176961847f8eSopenharmony_ci  NORMAL = 0,
177061847f8eSopenharmony_ci
177161847f8eSopenharmony_ci  /**
177261847f8eSopenharmony_ci   * Disable state of toolbar item.
177361847f8eSopenharmony_ci   *
177461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
177561847f8eSopenharmony_ci   * @since 10
177661847f8eSopenharmony_ci   */
177761847f8eSopenharmony_ci  /**
177861847f8eSopenharmony_ci   * Disable state of toolbar item.
177961847f8eSopenharmony_ci   *
178061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
178161847f8eSopenharmony_ci   * @crossplatform
178261847f8eSopenharmony_ci   * @atomicservice
178361847f8eSopenharmony_ci   * @since 11
178461847f8eSopenharmony_ci   */
178561847f8eSopenharmony_ci  DISABLED = 1,
178661847f8eSopenharmony_ci
178761847f8eSopenharmony_ci  /**
178861847f8eSopenharmony_ci   * Active state of toolbar item.
178961847f8eSopenharmony_ci   *
179061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
179161847f8eSopenharmony_ci   * @since 10
179261847f8eSopenharmony_ci   */
179361847f8eSopenharmony_ci  /**
179461847f8eSopenharmony_ci   * Active state of toolbar item.
179561847f8eSopenharmony_ci   *
179661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
179761847f8eSopenharmony_ci   * @crossplatform
179861847f8eSopenharmony_ci   * @atomicservice
179961847f8eSopenharmony_ci   * @since 11
180061847f8eSopenharmony_ci   */
180161847f8eSopenharmony_ci  ACTIVE = 2,
180261847f8eSopenharmony_ci}
180361847f8eSopenharmony_ci
180461847f8eSopenharmony_ci/**
180561847f8eSopenharmony_ci * Defines the operation of current navigation transition.
180661847f8eSopenharmony_ci *
180761847f8eSopenharmony_ci * @enum { number }
180861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
180961847f8eSopenharmony_ci * @crossplatform
181061847f8eSopenharmony_ci * @since 11
181161847f8eSopenharmony_ci */
181261847f8eSopenharmony_ci/**
181361847f8eSopenharmony_ci * Defines the operation of current navigation transition.
181461847f8eSopenharmony_ci *
181561847f8eSopenharmony_ci * @enum { number }
181661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
181761847f8eSopenharmony_ci * @crossplatform
181861847f8eSopenharmony_ci * @atomicservice
181961847f8eSopenharmony_ci * @since 12
182061847f8eSopenharmony_ci */
182161847f8eSopenharmony_cideclare enum NavigationOperation {
182261847f8eSopenharmony_ci  /**
182361847f8eSopenharmony_ci   * Push operation of navigation transition.
182461847f8eSopenharmony_ci   *
182561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
182661847f8eSopenharmony_ci   * @crossplatform
182761847f8eSopenharmony_ci   * @since 11
182861847f8eSopenharmony_ci   */
182961847f8eSopenharmony_ci  /**
183061847f8eSopenharmony_ci   * Push operation of navigation transition.
183161847f8eSopenharmony_ci   *
183261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
183361847f8eSopenharmony_ci   * @crossplatform
183461847f8eSopenharmony_ci   * @atomicservice
183561847f8eSopenharmony_ci   * @since 12
183661847f8eSopenharmony_ci   */
183761847f8eSopenharmony_ci  PUSH = 1,
183861847f8eSopenharmony_ci
183961847f8eSopenharmony_ci  /**
184061847f8eSopenharmony_ci   * Pop operation of navigation transition.
184161847f8eSopenharmony_ci   *
184261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
184361847f8eSopenharmony_ci   * @crossplatform
184461847f8eSopenharmony_ci   * @since 11
184561847f8eSopenharmony_ci   */
184661847f8eSopenharmony_ci  /**
184761847f8eSopenharmony_ci   * Pop operation of navigation transition.
184861847f8eSopenharmony_ci   *
184961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
185061847f8eSopenharmony_ci   * @crossplatform
185161847f8eSopenharmony_ci   * @atomicservice
185261847f8eSopenharmony_ci   * @since 12
185361847f8eSopenharmony_ci   */
185461847f8eSopenharmony_ci  POP = 2,
185561847f8eSopenharmony_ci
185661847f8eSopenharmony_ci  /**
185761847f8eSopenharmony_ci   * Replace operation of navigation transition.
185861847f8eSopenharmony_ci   *
185961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
186061847f8eSopenharmony_ci   * @crossplatform
186161847f8eSopenharmony_ci   * @since 11
186261847f8eSopenharmony_ci   */
186361847f8eSopenharmony_ci  /**
186461847f8eSopenharmony_ci   * Replace operation of navigation transition.
186561847f8eSopenharmony_ci   *
186661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
186761847f8eSopenharmony_ci   * @crossplatform
186861847f8eSopenharmony_ci   * @atomicservice
186961847f8eSopenharmony_ci   * @since 12
187061847f8eSopenharmony_ci   */
187161847f8eSopenharmony_ci  REPLACE = 3,
187261847f8eSopenharmony_ci}
187361847f8eSopenharmony_ci
187461847f8eSopenharmony_ci/**
187561847f8eSopenharmony_ci * Defines configurable parameters for toolbar item.
187661847f8eSopenharmony_ci *
187761847f8eSopenharmony_ci * @interface ToolbarItem
187861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
187961847f8eSopenharmony_ci * @since 10
188061847f8eSopenharmony_ci */
188161847f8eSopenharmony_ci/**
188261847f8eSopenharmony_ci * Defines configurable parameters for toolbar item.
188361847f8eSopenharmony_ci *
188461847f8eSopenharmony_ci * @interface ToolbarItem
188561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
188661847f8eSopenharmony_ci * @atomicservice
188761847f8eSopenharmony_ci * @since 11
188861847f8eSopenharmony_ci */
188961847f8eSopenharmony_cideclare interface ToolbarItem {
189061847f8eSopenharmony_ci  /**
189161847f8eSopenharmony_ci   * The value of navigation toolbar item.
189261847f8eSopenharmony_ci   *
189361847f8eSopenharmony_ci   * @type { ResourceStr }
189461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
189561847f8eSopenharmony_ci   * @crossplatform
189661847f8eSopenharmony_ci   * @since 10
189761847f8eSopenharmony_ci   */
189861847f8eSopenharmony_ci  /**
189961847f8eSopenharmony_ci   * The value of navigation toolbar item.
190061847f8eSopenharmony_ci   *
190161847f8eSopenharmony_ci   * @type { ResourceStr }
190261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
190361847f8eSopenharmony_ci   * @crossplatform
190461847f8eSopenharmony_ci   * @atomicservice
190561847f8eSopenharmony_ci   * @since 11
190661847f8eSopenharmony_ci   */
190761847f8eSopenharmony_ci  value: ResourceStr;
190861847f8eSopenharmony_ci
190961847f8eSopenharmony_ci  /**
191061847f8eSopenharmony_ci   * The icon of navigation toolbar item.
191161847f8eSopenharmony_ci   *
191261847f8eSopenharmony_ci   * @type { ?ResourceStr }
191361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
191461847f8eSopenharmony_ci   * @crossplatform
191561847f8eSopenharmony_ci   * @since 10
191661847f8eSopenharmony_ci   */
191761847f8eSopenharmony_ci  /**
191861847f8eSopenharmony_ci   * The icon of navigation toolbar item.
191961847f8eSopenharmony_ci   *
192061847f8eSopenharmony_ci   * @type { ?ResourceStr }
192161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
192261847f8eSopenharmony_ci   * @crossplatform
192361847f8eSopenharmony_ci   * @atomicservice
192461847f8eSopenharmony_ci   * @since 11
192561847f8eSopenharmony_ci   */
192661847f8eSopenharmony_ci  icon?: ResourceStr;
192761847f8eSopenharmony_ci
192861847f8eSopenharmony_ci  /**
192961847f8eSopenharmony_ci   * The symbol of navigation toolbar item.
193061847f8eSopenharmony_ci   *
193161847f8eSopenharmony_ci   * @type { ?SymbolGlyphModifier }
193261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
193361847f8eSopenharmony_ci   * @crossplatform
193461847f8eSopenharmony_ci   * @atomicservice
193561847f8eSopenharmony_ci   * @since 12
193661847f8eSopenharmony_ci   */
193761847f8eSopenharmony_ci  symbolIcon?: SymbolGlyphModifier;
193861847f8eSopenharmony_ci
193961847f8eSopenharmony_ci  /**
194061847f8eSopenharmony_ci   * Trigger by navigation toolbar item click.
194161847f8eSopenharmony_ci   *
194261847f8eSopenharmony_ci   * @type { ?function }
194361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
194461847f8eSopenharmony_ci   * @crossplatform
194561847f8eSopenharmony_ci   * @since 10
194661847f8eSopenharmony_ci   */
194761847f8eSopenharmony_ci  /**
194861847f8eSopenharmony_ci   * Trigger by navigation toolbar item click.
194961847f8eSopenharmony_ci   *
195061847f8eSopenharmony_ci   * @type { ?function }
195161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
195261847f8eSopenharmony_ci   * @crossplatform
195361847f8eSopenharmony_ci   * @atomicservice
195461847f8eSopenharmony_ci   * @since 11
195561847f8eSopenharmony_ci   */
195661847f8eSopenharmony_ci  action?: () => void;
195761847f8eSopenharmony_ci
195861847f8eSopenharmony_ci  /**
195961847f8eSopenharmony_ci   * The state of navigation toolbar item.
196061847f8eSopenharmony_ci   *
196161847f8eSopenharmony_ci   * @type { ?ToolbarItemStatus }
196261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
196361847f8eSopenharmony_ci   * @crossplatform
196461847f8eSopenharmony_ci   * @since 10
196561847f8eSopenharmony_ci   */
196661847f8eSopenharmony_ci  /**
196761847f8eSopenharmony_ci   * The state of navigation toolbar item.
196861847f8eSopenharmony_ci   *
196961847f8eSopenharmony_ci   * @type { ?ToolbarItemStatus }
197061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
197161847f8eSopenharmony_ci   * @crossplatform
197261847f8eSopenharmony_ci   * @atomicservice
197361847f8eSopenharmony_ci   * @since 11
197461847f8eSopenharmony_ci   */
197561847f8eSopenharmony_ci  status?: ToolbarItemStatus;
197661847f8eSopenharmony_ci
197761847f8eSopenharmony_ci  /**
197861847f8eSopenharmony_ci   * The icon of navigation toolbar item in active state.
197961847f8eSopenharmony_ci   *
198061847f8eSopenharmony_ci   * @type { ?ResourceStr }
198161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
198261847f8eSopenharmony_ci   * @crossplatform
198361847f8eSopenharmony_ci   * @since 10
198461847f8eSopenharmony_ci   */
198561847f8eSopenharmony_ci  /**
198661847f8eSopenharmony_ci   * The icon of navigation toolbar item in active state.
198761847f8eSopenharmony_ci   *
198861847f8eSopenharmony_ci   * @type { ?ResourceStr }
198961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
199061847f8eSopenharmony_ci   * @crossplatform
199161847f8eSopenharmony_ci   * @atomicservice
199261847f8eSopenharmony_ci   * @since 11
199361847f8eSopenharmony_ci   */
199461847f8eSopenharmony_ci  activeIcon?: ResourceStr;
199561847f8eSopenharmony_ci
199661847f8eSopenharmony_ci  /**
199761847f8eSopenharmony_ci   * The symbol of navigation toolbar item in active state.
199861847f8eSopenharmony_ci   *
199961847f8eSopenharmony_ci   * @type { ?SymbolGlyphModifier }
200061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
200161847f8eSopenharmony_ci   * @crossplatform
200261847f8eSopenharmony_ci   * @atomicservice
200361847f8eSopenharmony_ci   * @since 12
200461847f8eSopenharmony_ci   */
200561847f8eSopenharmony_ci  activeSymbolIcon?: SymbolGlyphModifier;
200661847f8eSopenharmony_ci}
200761847f8eSopenharmony_ci
200861847f8eSopenharmony_ci/**
200961847f8eSopenharmony_ci * Indicates the options of Navigation's Titlebar.
201061847f8eSopenharmony_ci *
201161847f8eSopenharmony_ci * @interface NavigationTitleOptions
201261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
201361847f8eSopenharmony_ci * @crossplatform
201461847f8eSopenharmony_ci * @atomicservice
201561847f8eSopenharmony_ci * @since 11
201661847f8eSopenharmony_ci */
201761847f8eSopenharmony_cideclare interface NavigationTitleOptions {
201861847f8eSopenharmony_ci  /**
201961847f8eSopenharmony_ci   * Background color.
202061847f8eSopenharmony_ci   *
202161847f8eSopenharmony_ci   * @type { ?ResourceColor }
202261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
202361847f8eSopenharmony_ci   * @crossplatform
202461847f8eSopenharmony_ci   * @atomicservice
202561847f8eSopenharmony_ci   * @since 11
202661847f8eSopenharmony_ci   */
202761847f8eSopenharmony_ci  backgroundColor?: ResourceColor;
202861847f8eSopenharmony_ci
202961847f8eSopenharmony_ci  /**
203061847f8eSopenharmony_ci   * Background blur style.
203161847f8eSopenharmony_ci   *
203261847f8eSopenharmony_ci   * @type { ?BlurStyle }
203361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
203461847f8eSopenharmony_ci   * @crossplatform
203561847f8eSopenharmony_ci   * @atomicservice
203661847f8eSopenharmony_ci   * @since 11
203761847f8eSopenharmony_ci   */
203861847f8eSopenharmony_ci  backgroundBlurStyle?: BlurStyle;
203961847f8eSopenharmony_ci
204061847f8eSopenharmony_ci  /**
204161847f8eSopenharmony_ci   * Set title bar style.
204261847f8eSopenharmony_ci   *
204361847f8eSopenharmony_ci   * @type { ?BarStyle }
204461847f8eSopenharmony_ci   * @default BarStyle.STANDARD
204561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
204661847f8eSopenharmony_ci   * @crossplatform
204761847f8eSopenharmony_ci   * @atomicservice
204861847f8eSopenharmony_ci   * @since 12
204961847f8eSopenharmony_ci   */
205061847f8eSopenharmony_ci  barStyle?: BarStyle;
205161847f8eSopenharmony_ci
205261847f8eSopenharmony_ci  /**
205361847f8eSopenharmony_ci   * Set title bar start padding.
205461847f8eSopenharmony_ci   *
205561847f8eSopenharmony_ci   * @type { ?LengthMetrics }
205661847f8eSopenharmony_ci   * @default LengthMetrics.resource($r('sys.float.margin_left'))
205761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
205861847f8eSopenharmony_ci   * @crossplatform
205961847f8eSopenharmony_ci   * @atomicservice
206061847f8eSopenharmony_ci   * @since 12
206161847f8eSopenharmony_ci   */
206261847f8eSopenharmony_ci  paddingStart?: LengthMetrics;
206361847f8eSopenharmony_ci
206461847f8eSopenharmony_ci  /**
206561847f8eSopenharmony_ci   * Set title bar end padding.
206661847f8eSopenharmony_ci   *
206761847f8eSopenharmony_ci   * @type { ?LengthMetrics }
206861847f8eSopenharmony_ci   * @default LengthMetrics.resource($r('sys.float.margin_right'))
206961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
207061847f8eSopenharmony_ci   * @crossplatform
207161847f8eSopenharmony_ci   * @atomicservice
207261847f8eSopenharmony_ci   * @since 12
207361847f8eSopenharmony_ci   */
207461847f8eSopenharmony_ci  paddingEnd?: LengthMetrics;
207561847f8eSopenharmony_ci
207661847f8eSopenharmony_ci  /**
207761847f8eSopenharmony_ci   * Text modifier for main title.
207861847f8eSopenharmony_ci   *
207961847f8eSopenharmony_ci   * @type { ?TextModifier }
208061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
208161847f8eSopenharmony_ci   * @crossplatform
208261847f8eSopenharmony_ci   * @atomicservice
208361847f8eSopenharmony_ci   * @since 13
208461847f8eSopenharmony_ci   */
208561847f8eSopenharmony_ci  mainTitleModifier?: TextModifier;
208661847f8eSopenharmony_ci
208761847f8eSopenharmony_ci  /**
208861847f8eSopenharmony_ci   * Text modifier for sub title.
208961847f8eSopenharmony_ci   *
209061847f8eSopenharmony_ci   * @type { ?TextModifier }
209161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
209261847f8eSopenharmony_ci   * @crossplatform
209361847f8eSopenharmony_ci   * @atomicservice
209461847f8eSopenharmony_ci   * @since 13
209561847f8eSopenharmony_ci   */
209661847f8eSopenharmony_ci  subTitleModifier?: TextModifier;
209761847f8eSopenharmony_ci  
209861847f8eSopenharmony_ci  /**
209961847f8eSopenharmony_ci   * Defines whether to respond to the hover mode.
210061847f8eSopenharmony_ci   *
210161847f8eSopenharmony_ci   * @type { ?boolean }
210261847f8eSopenharmony_ci   * @default false
210361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
210461847f8eSopenharmony_ci   * @crossplatform
210561847f8eSopenharmony_ci   * @atomicservice
210661847f8eSopenharmony_ci   * @since 14
210761847f8eSopenharmony_ci   */
210861847f8eSopenharmony_ci  enableHoverMode?: boolean;
210961847f8eSopenharmony_ci}
211061847f8eSopenharmony_ci
211161847f8eSopenharmony_ci/**
211261847f8eSopenharmony_ci * Declare BarStyle enum.
211361847f8eSopenharmony_ci *
211461847f8eSopenharmony_ci * @enum { number }
211561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
211661847f8eSopenharmony_ci * @crossplatform
211761847f8eSopenharmony_ci * @atomicservice
211861847f8eSopenharmony_ci * @since 12
211961847f8eSopenharmony_ci */
212061847f8eSopenharmony_cideclare enum BarStyle {
212161847f8eSopenharmony_ci  /**
212261847f8eSopenharmony_ci   * Standard style means that the bar and content area are column layouts.
212361847f8eSopenharmony_ci   *
212461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
212561847f8eSopenharmony_ci   * @crossplatform
212661847f8eSopenharmony_ci   * @atomicservice
212761847f8eSopenharmony_ci   * @since 12
212861847f8eSopenharmony_ci   */
212961847f8eSopenharmony_ci  STANDARD = 0,
213061847f8eSopenharmony_ci
213161847f8eSopenharmony_ci  /**
213261847f8eSopenharmony_ci   * Stack style means that the bar and content area are stack layouts.
213361847f8eSopenharmony_ci   *
213461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
213561847f8eSopenharmony_ci   * @crossplatform
213661847f8eSopenharmony_ci   * @atomicservice
213761847f8eSopenharmony_ci   * @since 12
213861847f8eSopenharmony_ci   */
213961847f8eSopenharmony_ci  STACK = 1,
214061847f8eSopenharmony_ci
214161847f8eSopenharmony_ci  /**
214261847f8eSopenharmony_ci   * SafeAreaPadding style means the bar height will be taken as content's safeAreaPadding.
214361847f8eSopenharmony_ci   *
214461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
214561847f8eSopenharmony_ci   * @crossplatform
214661847f8eSopenharmony_ci   * @atomicservice
214761847f8eSopenharmony_ci   * @since 14
214861847f8eSopenharmony_ci   */
214961847f8eSopenharmony_ci  SAFE_AREA_PADDING = 2,
215061847f8eSopenharmony_ci}
215161847f8eSopenharmony_ci
215261847f8eSopenharmony_ci/**
215361847f8eSopenharmony_ci * Indicates the options of Navigation's Toolbar.
215461847f8eSopenharmony_ci *
215561847f8eSopenharmony_ci * @interface NavigationToolbarOptions
215661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
215761847f8eSopenharmony_ci * @crossplatform
215861847f8eSopenharmony_ci * @atomicservice
215961847f8eSopenharmony_ci * @since 11
216061847f8eSopenharmony_ci */
216161847f8eSopenharmony_cideclare interface NavigationToolbarOptions {
216261847f8eSopenharmony_ci  /**
216361847f8eSopenharmony_ci   * Background color.
216461847f8eSopenharmony_ci   *
216561847f8eSopenharmony_ci   * @type { ?ResourceColor }
216661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
216761847f8eSopenharmony_ci   * @crossplatform
216861847f8eSopenharmony_ci   * @atomicservice
216961847f8eSopenharmony_ci   * @since 11
217061847f8eSopenharmony_ci   */
217161847f8eSopenharmony_ci  backgroundColor?: ResourceColor;
217261847f8eSopenharmony_ci
217361847f8eSopenharmony_ci  /**
217461847f8eSopenharmony_ci   * Background blur style.
217561847f8eSopenharmony_ci   *
217661847f8eSopenharmony_ci   * @type { ?BlurStyle }
217761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
217861847f8eSopenharmony_ci   * @crossplatform
217961847f8eSopenharmony_ci   * @atomicservice
218061847f8eSopenharmony_ci   * @since 11
218161847f8eSopenharmony_ci   */
218261847f8eSopenharmony_ci  backgroundBlurStyle?: BlurStyle;
218361847f8eSopenharmony_ci
218461847f8eSopenharmony_ci  /**
218561847f8eSopenharmony_ci   * Set tool bar style.
218661847f8eSopenharmony_ci   *
218761847f8eSopenharmony_ci   * @type { ?BarStyle }
218861847f8eSopenharmony_ci   * @default BarStyle.STANDARD
218961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
219061847f8eSopenharmony_ci   * @crossplatform
219161847f8eSopenharmony_ci   * @atomicservice
219261847f8eSopenharmony_ci   * @since 14
219361847f8eSopenharmony_ci   */
219461847f8eSopenharmony_ci    barStyle?: BarStyle;
219561847f8eSopenharmony_ci}
219661847f8eSopenharmony_ci
219761847f8eSopenharmony_ci/**
219861847f8eSopenharmony_ci * Declare Navigation view properties.
219961847f8eSopenharmony_ci *
220061847f8eSopenharmony_ci * @extends CommonMethod<NavigationAttribute>
220161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
220261847f8eSopenharmony_ci * @since 8
220361847f8eSopenharmony_ci */
220461847f8eSopenharmony_ci/**
220561847f8eSopenharmony_ci * Declare Navigation view properties.
220661847f8eSopenharmony_ci *
220761847f8eSopenharmony_ci * @extends CommonMethod<NavigationAttribute>
220861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
220961847f8eSopenharmony_ci * @crossplatform
221061847f8eSopenharmony_ci * @since 10
221161847f8eSopenharmony_ci */
221261847f8eSopenharmony_ci/**
221361847f8eSopenharmony_ci * Declare Navigation view properties.
221461847f8eSopenharmony_ci *
221561847f8eSopenharmony_ci * @extends CommonMethod<NavigationAttribute>
221661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
221761847f8eSopenharmony_ci * @crossplatform
221861847f8eSopenharmony_ci * @atomicservice
221961847f8eSopenharmony_ci * @since 11
222061847f8eSopenharmony_ci */
222161847f8eSopenharmony_cideclare class NavigationAttribute extends CommonMethod<NavigationAttribute> {
222261847f8eSopenharmony_ci  /**
222361847f8eSopenharmony_ci   * Sets the width of navigation bar.
222461847f8eSopenharmony_ci   *
222561847f8eSopenharmony_ci   * @param { Length } value
222661847f8eSopenharmony_ci   * @returns { NavigationAttribute }
222761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
222861847f8eSopenharmony_ci   * @since 9
222961847f8eSopenharmony_ci   */
223061847f8eSopenharmony_ci  /**
223161847f8eSopenharmony_ci   * Sets the width of navigation bar.
223261847f8eSopenharmony_ci   *
223361847f8eSopenharmony_ci   * @param { Length } value
223461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
223561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
223661847f8eSopenharmony_ci   * @crossplatform
223761847f8eSopenharmony_ci   * @since 10
223861847f8eSopenharmony_ci   */
223961847f8eSopenharmony_ci  /**
224061847f8eSopenharmony_ci   * Sets the width of navigation bar.
224161847f8eSopenharmony_ci   *
224261847f8eSopenharmony_ci   * @param { Length } value
224361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
224461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
224561847f8eSopenharmony_ci   * @crossplatform
224661847f8eSopenharmony_ci   * @atomicservice
224761847f8eSopenharmony_ci   * @since 11
224861847f8eSopenharmony_ci   */
224961847f8eSopenharmony_ci  navBarWidth(value: Length): NavigationAttribute;
225061847f8eSopenharmony_ci
225161847f8eSopenharmony_ci  /**
225261847f8eSopenharmony_ci   * Sets the position of navigation bar.
225361847f8eSopenharmony_ci   *
225461847f8eSopenharmony_ci   * @param { NavBarPosition } value
225561847f8eSopenharmony_ci   * @returns { NavigationAttribute }
225661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
225761847f8eSopenharmony_ci   * @since 9
225861847f8eSopenharmony_ci   */
225961847f8eSopenharmony_ci  /**
226061847f8eSopenharmony_ci   * Sets the position of navigation bar.
226161847f8eSopenharmony_ci   *
226261847f8eSopenharmony_ci   * @param { NavBarPosition } value
226361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
226461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
226561847f8eSopenharmony_ci   * @crossplatform
226661847f8eSopenharmony_ci   * @since 10
226761847f8eSopenharmony_ci   */
226861847f8eSopenharmony_ci  /**
226961847f8eSopenharmony_ci   * Sets the position of navigation bar.
227061847f8eSopenharmony_ci   *
227161847f8eSopenharmony_ci   * @param { NavBarPosition } value
227261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
227361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
227461847f8eSopenharmony_ci   * @crossplatform
227561847f8eSopenharmony_ci   * @atomicservice
227661847f8eSopenharmony_ci   * @since 11
227761847f8eSopenharmony_ci   */
227861847f8eSopenharmony_ci  navBarPosition(value: NavBarPosition): NavigationAttribute;
227961847f8eSopenharmony_ci
228061847f8eSopenharmony_ci  /**
228161847f8eSopenharmony_ci   * Sets the minimum width and the maximum width of navigation bar.
228261847f8eSopenharmony_ci   *
228361847f8eSopenharmony_ci   * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar.
228461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
228561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
228661847f8eSopenharmony_ci   * @crossplatform
228761847f8eSopenharmony_ci   * @since 10
228861847f8eSopenharmony_ci   */
228961847f8eSopenharmony_ci  /**
229061847f8eSopenharmony_ci   * Sets the minimum width and the maximum width of navigation bar.
229161847f8eSopenharmony_ci   *
229261847f8eSopenharmony_ci   * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar.
229361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
229461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
229561847f8eSopenharmony_ci   * @crossplatform
229661847f8eSopenharmony_ci   * @atomicservice
229761847f8eSopenharmony_ci   * @since 11
229861847f8eSopenharmony_ci   */
229961847f8eSopenharmony_ci  navBarWidthRange(value: [Dimension, Dimension]): NavigationAttribute;
230061847f8eSopenharmony_ci
230161847f8eSopenharmony_ci  /**
230261847f8eSopenharmony_ci   * Sets the minimum width of content.
230361847f8eSopenharmony_ci   *
230461847f8eSopenharmony_ci   * @param { Dimension } value - The minimum width of content.
230561847f8eSopenharmony_ci   * @returns { NavigationAttribute }
230661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
230761847f8eSopenharmony_ci   * @crossplatform
230861847f8eSopenharmony_ci   * @since 10
230961847f8eSopenharmony_ci   */
231061847f8eSopenharmony_ci  /**
231161847f8eSopenharmony_ci   * Sets the minimum width of content.
231261847f8eSopenharmony_ci   *
231361847f8eSopenharmony_ci   * @param { Dimension } value - The minimum width of content.
231461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
231561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
231661847f8eSopenharmony_ci   * @crossplatform
231761847f8eSopenharmony_ci   * @atomicservice
231861847f8eSopenharmony_ci   * @since 11
231961847f8eSopenharmony_ci   */
232061847f8eSopenharmony_ci  minContentWidth(value: Dimension): NavigationAttribute;
232161847f8eSopenharmony_ci
232261847f8eSopenharmony_ci  /**
232361847f8eSopenharmony_ci   * Sets the mode of navigation.
232461847f8eSopenharmony_ci   *
232561847f8eSopenharmony_ci   * @param { NavigationMode } value
232661847f8eSopenharmony_ci   * @returns { NavigationAttribute }
232761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
232861847f8eSopenharmony_ci   * @since 9
232961847f8eSopenharmony_ci   */
233061847f8eSopenharmony_ci  /**
233161847f8eSopenharmony_ci   * Sets the mode of navigation.
233261847f8eSopenharmony_ci   *
233361847f8eSopenharmony_ci   * @param { NavigationMode } value
233461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
233561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
233661847f8eSopenharmony_ci   * @crossplatform
233761847f8eSopenharmony_ci   * @since 10
233861847f8eSopenharmony_ci   */
233961847f8eSopenharmony_ci  /**
234061847f8eSopenharmony_ci   * Sets the mode of navigation.
234161847f8eSopenharmony_ci   *
234261847f8eSopenharmony_ci   * @param { NavigationMode } value
234361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
234461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
234561847f8eSopenharmony_ci   * @crossplatform
234661847f8eSopenharmony_ci   * @atomicservice
234761847f8eSopenharmony_ci   * @since 11
234861847f8eSopenharmony_ci   */
234961847f8eSopenharmony_ci  mode(value: NavigationMode): NavigationAttribute;
235061847f8eSopenharmony_ci
235161847f8eSopenharmony_ci  /**
235261847f8eSopenharmony_ci   * Sets the back button icon.
235361847f8eSopenharmony_ci   *
235461847f8eSopenharmony_ci   * @param { string | PixelMap | Resource } value
235561847f8eSopenharmony_ci   * @returns { NavigationAttribute }
235661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
235761847f8eSopenharmony_ci   * @since 9
235861847f8eSopenharmony_ci   */
235961847f8eSopenharmony_ci  /**
236061847f8eSopenharmony_ci   * Sets the back button icon.
236161847f8eSopenharmony_ci   *
236261847f8eSopenharmony_ci   * @param { string | PixelMap | Resource } value
236361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
236461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
236561847f8eSopenharmony_ci   * @crossplatform
236661847f8eSopenharmony_ci   * @since 10
236761847f8eSopenharmony_ci   */
236861847f8eSopenharmony_ci  /**
236961847f8eSopenharmony_ci   * Sets the back button icon.
237061847f8eSopenharmony_ci   *
237161847f8eSopenharmony_ci   * @param { string | PixelMap | Resource } value
237261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
237361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
237461847f8eSopenharmony_ci   * @crossplatform
237561847f8eSopenharmony_ci   * @atomicservice
237661847f8eSopenharmony_ci   * @since 11
237761847f8eSopenharmony_ci   */
237861847f8eSopenharmony_ci  /**
237961847f8eSopenharmony_ci   * Sets the back button icon.
238061847f8eSopenharmony_ci   *
238161847f8eSopenharmony_ci   * @param { string | PixelMap | Resource | SymbolGlyphModifier } value
238261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
238361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
238461847f8eSopenharmony_ci   * @crossplatform
238561847f8eSopenharmony_ci   * @atomicservice
238661847f8eSopenharmony_ci   * @since 12
238761847f8eSopenharmony_ci   */
238861847f8eSopenharmony_ci  backButtonIcon(value: string | PixelMap | Resource | SymbolGlyphModifier): NavigationAttribute;
238961847f8eSopenharmony_ci
239061847f8eSopenharmony_ci  /**
239161847f8eSopenharmony_ci   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode.
239261847f8eSopenharmony_ci   *
239361847f8eSopenharmony_ci   * @param { boolean } value
239461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
239561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
239661847f8eSopenharmony_ci   * @since 9
239761847f8eSopenharmony_ci   */
239861847f8eSopenharmony_ci  /**
239961847f8eSopenharmony_ci   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode.
240061847f8eSopenharmony_ci   *
240161847f8eSopenharmony_ci   * @param { boolean } value
240261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
240361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
240461847f8eSopenharmony_ci   * @crossplatform
240561847f8eSopenharmony_ci   * @since 10
240661847f8eSopenharmony_ci   */
240761847f8eSopenharmony_ci  /**
240861847f8eSopenharmony_ci   * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in all mode. 
240961847f8eSopenharmony_ci   * It will show top page in the NavPathStack directly or empty if there is no page in the NavPathStack.
241061847f8eSopenharmony_ci   *
241161847f8eSopenharmony_ci   * @param { boolean } value
241261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
241361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
241461847f8eSopenharmony_ci   * @crossplatform
241561847f8eSopenharmony_ci   * @atomicservice
241661847f8eSopenharmony_ci   * @since 11
241761847f8eSopenharmony_ci   */
241861847f8eSopenharmony_ci  hideNavBar(value: boolean): NavigationAttribute;
241961847f8eSopenharmony_ci
242061847f8eSopenharmony_ci  /**
242161847f8eSopenharmony_ci   * Navigation title
242261847f8eSopenharmony_ci   *
242361847f8eSopenharmony_ci   * @param { string | CustomBuilder } value
242461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
242561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
242661847f8eSopenharmony_ci   * @since 8
242761847f8eSopenharmony_ci   */
242861847f8eSopenharmony_ci  /**
242961847f8eSopenharmony_ci   * Navigation title
243061847f8eSopenharmony_ci   *
243161847f8eSopenharmony_ci   * @param { string | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
243261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
243361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
243461847f8eSopenharmony_ci   * @since 9
243561847f8eSopenharmony_ci   */
243661847f8eSopenharmony_ci  /**
243761847f8eSopenharmony_ci   * Navigation title
243861847f8eSopenharmony_ci   *
243961847f8eSopenharmony_ci   * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
244061847f8eSopenharmony_ci   * @returns { NavigationAttribute }
244161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
244261847f8eSopenharmony_ci   * @crossplatform
244361847f8eSopenharmony_ci   * @since 10
244461847f8eSopenharmony_ci   */
244561847f8eSopenharmony_ci  /**
244661847f8eSopenharmony_ci   * Navigation title
244761847f8eSopenharmony_ci   *
244861847f8eSopenharmony_ci   * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value
244961847f8eSopenharmony_ci   * @param { NavigationTitleOptions } [options] - Indicates the options of titlebar.
245061847f8eSopenharmony_ci   * @returns { NavigationAttribute }
245161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
245261847f8eSopenharmony_ci   * @crossplatform
245361847f8eSopenharmony_ci   * @atomicservice
245461847f8eSopenharmony_ci   * @since 11
245561847f8eSopenharmony_ci   */
245661847f8eSopenharmony_ci  title(value: ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle, options?: NavigationTitleOptions): NavigationAttribute;
245761847f8eSopenharmony_ci
245861847f8eSopenharmony_ci  /**
245961847f8eSopenharmony_ci   * Navigation subtitle
246061847f8eSopenharmony_ci   *
246161847f8eSopenharmony_ci   * @param { string } value
246261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
246361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
246461847f8eSopenharmony_ci   * @since 8
246561847f8eSopenharmony_ci   * @deprecated since 9
246661847f8eSopenharmony_ci   * @useinstead title
246761847f8eSopenharmony_ci   */
246861847f8eSopenharmony_ci  subTitle(value: string): NavigationAttribute;
246961847f8eSopenharmony_ci
247061847f8eSopenharmony_ci  /**
247161847f8eSopenharmony_ci   * Hide navigation title bar
247261847f8eSopenharmony_ci   *
247361847f8eSopenharmony_ci   * @param { boolean } value
247461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
247561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
247661847f8eSopenharmony_ci   * @since 8
247761847f8eSopenharmony_ci   */
247861847f8eSopenharmony_ci  /**
247961847f8eSopenharmony_ci   * Hide navigation title bar
248061847f8eSopenharmony_ci   *
248161847f8eSopenharmony_ci   * @param { boolean } value
248261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
248361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
248461847f8eSopenharmony_ci   * @crossplatform
248561847f8eSopenharmony_ci   * @since 10
248661847f8eSopenharmony_ci   */
248761847f8eSopenharmony_ci  /**
248861847f8eSopenharmony_ci   * Hide navigation title bar
248961847f8eSopenharmony_ci   *
249061847f8eSopenharmony_ci   * @param { boolean } value
249161847f8eSopenharmony_ci   * @returns { NavigationAttribute }
249261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
249361847f8eSopenharmony_ci   * @crossplatform
249461847f8eSopenharmony_ci   * @atomicservice
249561847f8eSopenharmony_ci   * @since 11
249661847f8eSopenharmony_ci   */
249761847f8eSopenharmony_ci  hideTitleBar(value: boolean): NavigationAttribute;
249861847f8eSopenharmony_ci
249961847f8eSopenharmony_ci  /**
250061847f8eSopenharmony_ci   * Hide navigation title bar
250161847f8eSopenharmony_ci   *
250261847f8eSopenharmony_ci   * @param { boolean } hide
250361847f8eSopenharmony_ci   * @param { boolean } animated
250461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
250561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
250661847f8eSopenharmony_ci   * @crossplatform
250761847f8eSopenharmony_ci   * @atomicservice
250861847f8eSopenharmony_ci   * @since 14
250961847f8eSopenharmony_ci   */
251061847f8eSopenharmony_ci  hideTitleBar(hide: boolean, animated: boolean): NavigationAttribute;
251161847f8eSopenharmony_ci
251261847f8eSopenharmony_ci  /**
251361847f8eSopenharmony_ci   * Hide navigation back button
251461847f8eSopenharmony_ci   *
251561847f8eSopenharmony_ci   * @param { boolean } value
251661847f8eSopenharmony_ci   * @returns { NavigationAttribute }
251761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
251861847f8eSopenharmony_ci   * @since 8
251961847f8eSopenharmony_ci   */
252061847f8eSopenharmony_ci  /**
252161847f8eSopenharmony_ci   * Hide navigation back button
252261847f8eSopenharmony_ci   *
252361847f8eSopenharmony_ci   * @param { boolean } value
252461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
252561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
252661847f8eSopenharmony_ci   * @crossplatform
252761847f8eSopenharmony_ci   * @since 10
252861847f8eSopenharmony_ci   */
252961847f8eSopenharmony_ci  /**
253061847f8eSopenharmony_ci   * Hide navigation back button
253161847f8eSopenharmony_ci   *
253261847f8eSopenharmony_ci   * @param { boolean } value
253361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
253461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
253561847f8eSopenharmony_ci   * @crossplatform
253661847f8eSopenharmony_ci   * @atomicservice
253761847f8eSopenharmony_ci   * @since 11
253861847f8eSopenharmony_ci   */
253961847f8eSopenharmony_ci  hideBackButton(value: boolean): NavigationAttribute;
254061847f8eSopenharmony_ci
254161847f8eSopenharmony_ci  /**
254261847f8eSopenharmony_ci   * Navigation title mode
254361847f8eSopenharmony_ci   *
254461847f8eSopenharmony_ci   * @param { NavigationTitleMode } value
254561847f8eSopenharmony_ci   * @returns { NavigationAttribute }
254661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
254761847f8eSopenharmony_ci   * @since 8
254861847f8eSopenharmony_ci   */
254961847f8eSopenharmony_ci  /**
255061847f8eSopenharmony_ci   * Navigation title mode
255161847f8eSopenharmony_ci   *
255261847f8eSopenharmony_ci   * @param { NavigationTitleMode } value
255361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
255461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
255561847f8eSopenharmony_ci   * @crossplatform
255661847f8eSopenharmony_ci   * @since 10
255761847f8eSopenharmony_ci   */
255861847f8eSopenharmony_ci  /**
255961847f8eSopenharmony_ci   * Navigation title mode
256061847f8eSopenharmony_ci   *
256161847f8eSopenharmony_ci   * @param { NavigationTitleMode } value
256261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
256361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
256461847f8eSopenharmony_ci   * @crossplatform
256561847f8eSopenharmony_ci   * @atomicservice
256661847f8eSopenharmony_ci   * @since 11
256761847f8eSopenharmony_ci   */
256861847f8eSopenharmony_ci  titleMode(value: NavigationTitleMode): NavigationAttribute;
256961847f8eSopenharmony_ci
257061847f8eSopenharmony_ci  /**
257161847f8eSopenharmony_ci   * Navigation title bar's menus
257261847f8eSopenharmony_ci   *
257361847f8eSopenharmony_ci   * @param { Array<NavigationMenuItem> | CustomBuilder } value
257461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
257561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
257661847f8eSopenharmony_ci   * @since 8
257761847f8eSopenharmony_ci   */
257861847f8eSopenharmony_ci  /**
257961847f8eSopenharmony_ci   * Navigation title bar's menus
258061847f8eSopenharmony_ci   *
258161847f8eSopenharmony_ci   * @param { Array<NavigationMenuItem> | CustomBuilder } value
258261847f8eSopenharmony_ci   * @returns { NavigationAttribute }
258361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
258461847f8eSopenharmony_ci   * @crossplatform
258561847f8eSopenharmony_ci   * @since 10
258661847f8eSopenharmony_ci   */
258761847f8eSopenharmony_ci  /**
258861847f8eSopenharmony_ci   * Navigation title bar's menus
258961847f8eSopenharmony_ci   *
259061847f8eSopenharmony_ci   * @param { Array<NavigationMenuItem> | CustomBuilder } value
259161847f8eSopenharmony_ci   * @returns { NavigationAttribute }
259261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
259361847f8eSopenharmony_ci   * @crossplatform
259461847f8eSopenharmony_ci   * @atomicservice
259561847f8eSopenharmony_ci   * @since 11
259661847f8eSopenharmony_ci   */
259761847f8eSopenharmony_ci  menus(value: Array<NavigationMenuItem> | CustomBuilder): NavigationAttribute;
259861847f8eSopenharmony_ci
259961847f8eSopenharmony_ci  /**
260061847f8eSopenharmony_ci   * Tool bar
260161847f8eSopenharmony_ci   *
260261847f8eSopenharmony_ci   * @param { object | CustomBuilder } value
260361847f8eSopenharmony_ci   * @returns { NavigationAttribute }
260461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
260561847f8eSopenharmony_ci   * @since 8
260661847f8eSopenharmony_ci   * @deprecated since 10
260761847f8eSopenharmony_ci   * @useinstead navigation/NavigationAttribute#toolbarConfiguration
260861847f8eSopenharmony_ci   */
260961847f8eSopenharmony_ci  toolBar(value: object | CustomBuilder): NavigationAttribute;
261061847f8eSopenharmony_ci
261161847f8eSopenharmony_ci  /**
261261847f8eSopenharmony_ci    * Configure toolbar with default style parameter or custom parameter.
261361847f8eSopenharmony_ci    *
261461847f8eSopenharmony_ci    * @param { Array<ToolbarItem> | CustomBuilder } value - Toolbar configuration parameters.
261561847f8eSopenharmony_ci    * @returns { NavigationAttribute }
261661847f8eSopenharmony_ci    * @syscap SystemCapability.ArkUI.ArkUI.Full
261761847f8eSopenharmony_ci    * @crossplatform
261861847f8eSopenharmony_ci    * @form
261961847f8eSopenharmony_ci    * @since 10
262061847f8eSopenharmony_ci    */
262161847f8eSopenharmony_ci  /**
262261847f8eSopenharmony_ci    * Configure toolbar with default style parameter or custom parameter.
262361847f8eSopenharmony_ci    *
262461847f8eSopenharmony_ci    * @param { Array<ToolbarItem> | CustomBuilder } value - Toolbar configuration parameters.
262561847f8eSopenharmony_ci    * @param { NavigationToolbarOptions } [options] - Indicates the options of toolbar.
262661847f8eSopenharmony_ci    * @returns { NavigationAttribute }
262761847f8eSopenharmony_ci    * @syscap SystemCapability.ArkUI.ArkUI.Full
262861847f8eSopenharmony_ci    * @crossplatform
262961847f8eSopenharmony_ci    * @form
263061847f8eSopenharmony_ci    * @atomicservice
263161847f8eSopenharmony_ci    * @since 11
263261847f8eSopenharmony_ci    */
263361847f8eSopenharmony_ci  toolbarConfiguration(value: Array<ToolbarItem> | CustomBuilder, options?: NavigationToolbarOptions): NavigationAttribute;
263461847f8eSopenharmony_ci
263561847f8eSopenharmony_ci  /**
263661847f8eSopenharmony_ci   * Hide tool bar
263761847f8eSopenharmony_ci   *
263861847f8eSopenharmony_ci   * @param { boolean } value
263961847f8eSopenharmony_ci   * @returns { NavigationAttribute }
264061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
264161847f8eSopenharmony_ci   * @since 8
264261847f8eSopenharmony_ci   */
264361847f8eSopenharmony_ci  /**
264461847f8eSopenharmony_ci   * Hide tool bar
264561847f8eSopenharmony_ci   *
264661847f8eSopenharmony_ci   * @param { boolean } value
264761847f8eSopenharmony_ci   * @returns { NavigationAttribute }
264861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
264961847f8eSopenharmony_ci   * @crossplatform
265061847f8eSopenharmony_ci   * @since 10
265161847f8eSopenharmony_ci   */
265261847f8eSopenharmony_ci  /**
265361847f8eSopenharmony_ci   * Hide tool bar
265461847f8eSopenharmony_ci   *
265561847f8eSopenharmony_ci   * @param { boolean } value
265661847f8eSopenharmony_ci   * @returns { NavigationAttribute }
265761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
265861847f8eSopenharmony_ci   * @crossplatform
265961847f8eSopenharmony_ci   * @atomicservice
266061847f8eSopenharmony_ci   * @since 11
266161847f8eSopenharmony_ci   */
266261847f8eSopenharmony_ci  hideToolBar(value: boolean): NavigationAttribute;
266361847f8eSopenharmony_ci
266461847f8eSopenharmony_ci  /**
266561847f8eSopenharmony_ci   * Hide tool bar
266661847f8eSopenharmony_ci   *
266761847f8eSopenharmony_ci   * @param { boolean } hide
266861847f8eSopenharmony_ci   * @param { boolean } animated
266961847f8eSopenharmony_ci   * @returns { NavigationAttribute }
267061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
267161847f8eSopenharmony_ci   * @crossplatform
267261847f8eSopenharmony_ci   * @atomicservice
267361847f8eSopenharmony_ci   * @since 14
267461847f8eSopenharmony_ci   */
267561847f8eSopenharmony_ci  hideToolBar(hide: boolean, animated: boolean): NavigationAttribute;
267661847f8eSopenharmony_ci
267761847f8eSopenharmony_ci  /**
267861847f8eSopenharmony_ci   * Trigger callback when title mode change finished at free mode.
267961847f8eSopenharmony_ci   *
268061847f8eSopenharmony_ci   * @param { (titleMode: NavigationTitleMode) => void } callback
268161847f8eSopenharmony_ci   * @returns { NavigationAttribute }
268261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
268361847f8eSopenharmony_ci   * @since 8
268461847f8eSopenharmony_ci   */
268561847f8eSopenharmony_ci  /**
268661847f8eSopenharmony_ci   * Trigger callback when title mode change finished at free mode.
268761847f8eSopenharmony_ci   *
268861847f8eSopenharmony_ci   * @param { function } callback
268961847f8eSopenharmony_ci   * @returns { NavigationAttribute }
269061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
269161847f8eSopenharmony_ci   * @crossplatform
269261847f8eSopenharmony_ci   * @since 10
269361847f8eSopenharmony_ci   */
269461847f8eSopenharmony_ci  /**
269561847f8eSopenharmony_ci   * Trigger callback when title mode change finished at free mode.
269661847f8eSopenharmony_ci   *
269761847f8eSopenharmony_ci   * @param { function } callback
269861847f8eSopenharmony_ci   * @returns { NavigationAttribute }
269961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
270061847f8eSopenharmony_ci   * @crossplatform
270161847f8eSopenharmony_ci   * @atomicservice
270261847f8eSopenharmony_ci   * @since 11
270361847f8eSopenharmony_ci   */
270461847f8eSopenharmony_ci  onTitleModeChange(callback: (titleMode: NavigationTitleMode) => void): NavigationAttribute;
270561847f8eSopenharmony_ci
270661847f8eSopenharmony_ci  /**
270761847f8eSopenharmony_ci   * Trigger callback when the visibility of navigation bar change.
270861847f8eSopenharmony_ci   *
270961847f8eSopenharmony_ci   * @param { (isVisible: boolean) => void } callback
271061847f8eSopenharmony_ci   * @returns { NavigationAttribute }
271161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
271261847f8eSopenharmony_ci   * @since 9
271361847f8eSopenharmony_ci   */
271461847f8eSopenharmony_ci  /**
271561847f8eSopenharmony_ci   * Trigger callback when the visibility of navigation bar change.
271661847f8eSopenharmony_ci   *
271761847f8eSopenharmony_ci   * @param { function } callback
271861847f8eSopenharmony_ci   * @returns { NavigationAttribute }
271961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
272061847f8eSopenharmony_ci   * @crossplatform
272161847f8eSopenharmony_ci   * @since 10
272261847f8eSopenharmony_ci   */
272361847f8eSopenharmony_ci  /**
272461847f8eSopenharmony_ci   * Trigger callback when the visibility of navigation bar change.
272561847f8eSopenharmony_ci   *
272661847f8eSopenharmony_ci   * @param { function } callback
272761847f8eSopenharmony_ci   * @returns { NavigationAttribute }
272861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
272961847f8eSopenharmony_ci   * @crossplatform
273061847f8eSopenharmony_ci   * @atomicservice
273161847f8eSopenharmony_ci   * @since 11
273261847f8eSopenharmony_ci   */
273361847f8eSopenharmony_ci  onNavBarStateChange(callback: (isVisible: boolean) => void): NavigationAttribute;
273461847f8eSopenharmony_ci
273561847f8eSopenharmony_ci  /**
273661847f8eSopenharmony_ci   * Trigger callback when navigation mode changes.
273761847f8eSopenharmony_ci   *
273861847f8eSopenharmony_ci   * @param { function } callback
273961847f8eSopenharmony_ci   * @returns { NavigationAttribute }
274061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
274161847f8eSopenharmony_ci   * @crossplatform
274261847f8eSopenharmony_ci   * @atomicservice
274361847f8eSopenharmony_ci   * @since 11
274461847f8eSopenharmony_ci   */
274561847f8eSopenharmony_ci  onNavigationModeChange(callback: (mode: NavigationMode) => void): NavigationAttribute;
274661847f8eSopenharmony_ci
274761847f8eSopenharmony_ci  /**
274861847f8eSopenharmony_ci   * Set builder for user-defined NavDestination component.
274961847f8eSopenharmony_ci   *
275061847f8eSopenharmony_ci   * @param { function } builder - The builder function of NavDestination component.
275161847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
275261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
275361847f8eSopenharmony_ci   * @crossplatform
275461847f8eSopenharmony_ci   * @since 10
275561847f8eSopenharmony_ci   */
275661847f8eSopenharmony_ci  /**
275761847f8eSopenharmony_ci   * Set builder for user-defined NavDestination component.
275861847f8eSopenharmony_ci   *
275961847f8eSopenharmony_ci   * @param { function } builder - The builder function of NavDestination component.
276061847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
276161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
276261847f8eSopenharmony_ci   * @crossplatform
276361847f8eSopenharmony_ci   * @atomicservice
276461847f8eSopenharmony_ci   * @since 11
276561847f8eSopenharmony_ci   */
276661847f8eSopenharmony_ci  navDestination(builder: (name: string, param: unknown) => void): NavigationAttribute;
276761847f8eSopenharmony_ci
276861847f8eSopenharmony_ci  /**
276961847f8eSopenharmony_ci   * Set custom navigation content transition animation.
277061847f8eSopenharmony_ci   *
277161847f8eSopenharmony_ci   * @param { function } delegate - Custom transition delegate.
277261847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
277361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
277461847f8eSopenharmony_ci   * @crossplatform
277561847f8eSopenharmony_ci   * @since 11
277661847f8eSopenharmony_ci   */
277761847f8eSopenharmony_ci  /**
277861847f8eSopenharmony_ci   * Set custom navigation content transition animation.
277961847f8eSopenharmony_ci   *
278061847f8eSopenharmony_ci   * @param { function } delegate - Custom transition delegate.
278161847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
278261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
278361847f8eSopenharmony_ci   * @crossplatform
278461847f8eSopenharmony_ci   * @atomicservice
278561847f8eSopenharmony_ci   * @since 12
278661847f8eSopenharmony_ci   */
278761847f8eSopenharmony_ci  customNavContentTransition(delegate: (from: NavContentInfo, to: NavContentInfo, operation: NavigationOperation) => NavigationAnimatedTransition | undefined): NavigationAttribute;
278861847f8eSopenharmony_ci
278961847f8eSopenharmony_ci  /**
279061847f8eSopenharmony_ci   * Set navigation content expand types and edges.
279161847f8eSopenharmony_ci   *
279261847f8eSopenharmony_ci   * @param { Array<LayoutSafeAreaType> } [types] - Indicates the types of the safe area.
279361847f8eSopenharmony_ci   * @param { Array<LayoutSafeAreaEdge> } [edges] - Indicates the edges of the safe area.
279461847f8eSopenharmony_ci   * @returns { NavigationAttribute }
279561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
279661847f8eSopenharmony_ci   * @crossplatform
279761847f8eSopenharmony_ci   * @atomicservice
279861847f8eSopenharmony_ci   * @since 12
279961847f8eSopenharmony_ci   */
280061847f8eSopenharmony_ci  ignoreLayoutSafeArea(types?: Array<LayoutSafeAreaType>, edges?: Array<LayoutSafeAreaEdge>): NavigationAttribute;
280161847f8eSopenharmony_ci
280261847f8eSopenharmony_ci  /**
280361847f8eSopenharmony_ci   * Set the style of system bar
280461847f8eSopenharmony_ci   *
280561847f8eSopenharmony_ci   * @param { Optional<SystemBarStyle> } style - The properties of system bar
280661847f8eSopenharmony_ci   * @returns { NavigationAttribute }
280761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
280861847f8eSopenharmony_ci   * @atomicservice
280961847f8eSopenharmony_ci   * @since 12
281061847f8eSopenharmony_ci   */
281161847f8eSopenharmony_ci  systemBarStyle(style: Optional<SystemBarStyle>): NavigationAttribute;
281261847f8eSopenharmony_ci  
281361847f8eSopenharmony_ci  /**
281461847f8eSopenharmony_ci   * Set the Navigation can be restored after the application is terminated.
281561847f8eSopenharmony_ci   * To enable this attribute, a navigation id must be set.
281661847f8eSopenharmony_ci   * 
281761847f8eSopenharmony_ci   * @param { boolean } recoverable - navigation can be recovered.
281861847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
281961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
282061847f8eSopenharmony_ci   * @since 13
282161847f8eSopenharmony_ci   */
282261847f8eSopenharmony_ci  recoverable(recoverable: Optional<boolean>): NavigationAttribute;
282361847f8eSopenharmony_ci
282461847f8eSopenharmony_ci  /**
282561847f8eSopenharmony_ci   * Enable dragbar
282661847f8eSopenharmony_ci   * 
282761847f8eSopenharmony_ci   * @param { Optional<boolean> } isEnabled - enable dragbar or disable dragbar.
282861847f8eSopenharmony_ci   * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute.
282961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
283061847f8eSopenharmony_ci   * @crossplatform
283161847f8eSopenharmony_ci   * @atomicservice
283261847f8eSopenharmony_ci   * @since 14
283361847f8eSopenharmony_ci   */
283461847f8eSopenharmony_ci  enableDragBar(isEnabled: Optional<boolean>): NavigationAttribute;
283561847f8eSopenharmony_ci}
283661847f8eSopenharmony_ci
283761847f8eSopenharmony_ci/**
283861847f8eSopenharmony_ci* Navigation transition animation protocol.
283961847f8eSopenharmony_ci*
284061847f8eSopenharmony_ci* @interface NavigationAnimatedTransition
284161847f8eSopenharmony_ci* @syscap SystemCapability.ArkUI.ArkUI.Full
284261847f8eSopenharmony_ci* @crossplatform
284361847f8eSopenharmony_ci* @since 11
284461847f8eSopenharmony_ci*/
284561847f8eSopenharmony_ci/**
284661847f8eSopenharmony_ci* Navigation transition animation protocol.
284761847f8eSopenharmony_ci*
284861847f8eSopenharmony_ci* @interface NavigationAnimatedTransition
284961847f8eSopenharmony_ci* @syscap SystemCapability.ArkUI.ArkUI.Full
285061847f8eSopenharmony_ci* @crossplatform
285161847f8eSopenharmony_ci* @atomicservice
285261847f8eSopenharmony_ci* @since 12
285361847f8eSopenharmony_ci*/
285461847f8eSopenharmony_cideclare interface NavigationAnimatedTransition {
285561847f8eSopenharmony_ci  /**
285661847f8eSopenharmony_ci   * This method is called after the transition ends to notify whether the transition was successful.
285761847f8eSopenharmony_ci   *
285861847f8eSopenharmony_ci   * @type { ?function }
285961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
286061847f8eSopenharmony_ci   * @crossplatform
286161847f8eSopenharmony_ci   * @since 11
286261847f8eSopenharmony_ci   */
286361847f8eSopenharmony_ci  /**
286461847f8eSopenharmony_ci   * This method is called after the transition ends to notify whether the transition was successful.
286561847f8eSopenharmony_ci   *
286661847f8eSopenharmony_ci   * @type { ?function }
286761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
286861847f8eSopenharmony_ci   * @crossplatform
286961847f8eSopenharmony_ci   * @atomicservice
287061847f8eSopenharmony_ci   * @since 12
287161847f8eSopenharmony_ci   */
287261847f8eSopenharmony_ci  onTransitionEnd?: (success: boolean) => void
287361847f8eSopenharmony_ci
287461847f8eSopenharmony_ci  /**
287561847f8eSopenharmony_ci   * Define the limit duration of the transition animation.
287661847f8eSopenharmony_ci   *
287761847f8eSopenharmony_ci   * @type { ?number }
287861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
287961847f8eSopenharmony_ci   * @crossplatform
288061847f8eSopenharmony_ci   * @since 11
288161847f8eSopenharmony_ci   */
288261847f8eSopenharmony_ci  /**
288361847f8eSopenharmony_ci   * Define the limit duration of the transition animation.
288461847f8eSopenharmony_ci   *
288561847f8eSopenharmony_ci   * @type { ?number }
288661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
288761847f8eSopenharmony_ci   * @crossplatform
288861847f8eSopenharmony_ci   * @atomicservice
288961847f8eSopenharmony_ci   * @since 12
289061847f8eSopenharmony_ci   */
289161847f8eSopenharmony_ci  timeout?: number;
289261847f8eSopenharmony_ci
289361847f8eSopenharmony_ci  /**
289461847f8eSopenharmony_ci   * Indicates whether it is an interactive transition.
289561847f8eSopenharmony_ci   *
289661847f8eSopenharmony_ci   * @type { ?boolean }
289761847f8eSopenharmony_ci   * @default false
289861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
289961847f8eSopenharmony_ci   * @crossplatform
290061847f8eSopenharmony_ci   * @atomicservice
290161847f8eSopenharmony_ci   * @since 12
290261847f8eSopenharmony_ci   */
290361847f8eSopenharmony_ci  isInteractive?: boolean;
290461847f8eSopenharmony_ci
290561847f8eSopenharmony_ci  /**
290661847f8eSopenharmony_ci   * Configure the animations associated with custom transition.
290761847f8eSopenharmony_ci   *
290861847f8eSopenharmony_ci   * @type { function }
290961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
291061847f8eSopenharmony_ci   * @crossplatform
291161847f8eSopenharmony_ci   * @since 11
291261847f8eSopenharmony_ci   */
291361847f8eSopenharmony_ci  /**
291461847f8eSopenharmony_ci   * Configure the animations associated with custom transition.
291561847f8eSopenharmony_ci   *
291661847f8eSopenharmony_ci   * @type { function }
291761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
291861847f8eSopenharmony_ci   * @crossplatform
291961847f8eSopenharmony_ci   * @atomicservice
292061847f8eSopenharmony_ci   * @since 12
292161847f8eSopenharmony_ci   */
292261847f8eSopenharmony_ci  transition: (transitionProxy: NavigationTransitionProxy) => void
292361847f8eSopenharmony_ci}
292461847f8eSopenharmony_ci
292561847f8eSopenharmony_ci/**
292661847f8eSopenharmony_ci * Navigation transition proxy.
292761847f8eSopenharmony_ci *
292861847f8eSopenharmony_ci * @interface NavigationTransitionProxy
292961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
293061847f8eSopenharmony_ci * @crossplatform
293161847f8eSopenharmony_ci * @since 11
293261847f8eSopenharmony_ci */
293361847f8eSopenharmony_ci/**
293461847f8eSopenharmony_ci * Navigation transition proxy.
293561847f8eSopenharmony_ci *
293661847f8eSopenharmony_ci * @interface NavigationTransitionProxy
293761847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
293861847f8eSopenharmony_ci * @crossplatform
293961847f8eSopenharmony_ci * @atomicservice
294061847f8eSopenharmony_ci * @since 12
294161847f8eSopenharmony_ci */
294261847f8eSopenharmony_cideclare interface NavigationTransitionProxy {
294361847f8eSopenharmony_ci  /**
294461847f8eSopenharmony_ci   * From navigation content info.
294561847f8eSopenharmony_ci   *
294661847f8eSopenharmony_ci   * @type { NavContentInfo }
294761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
294861847f8eSopenharmony_ci   * @crossplatform
294961847f8eSopenharmony_ci   * @since 11
295061847f8eSopenharmony_ci   */
295161847f8eSopenharmony_ci  /**
295261847f8eSopenharmony_ci   * From navigation content info.
295361847f8eSopenharmony_ci   *
295461847f8eSopenharmony_ci   * @type { NavContentInfo }
295561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
295661847f8eSopenharmony_ci   * @crossplatform
295761847f8eSopenharmony_ci   * @atomicservice
295861847f8eSopenharmony_ci   * @since 12
295961847f8eSopenharmony_ci   */
296061847f8eSopenharmony_ci  from: NavContentInfo;
296161847f8eSopenharmony_ci
296261847f8eSopenharmony_ci  /**
296361847f8eSopenharmony_ci   * To navigation content info.
296461847f8eSopenharmony_ci   *
296561847f8eSopenharmony_ci   * @type { NavContentInfo }
296661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
296761847f8eSopenharmony_ci   * @crossplatform
296861847f8eSopenharmony_ci   * @since 11
296961847f8eSopenharmony_ci   */
297061847f8eSopenharmony_ci  /**
297161847f8eSopenharmony_ci   * To navigation content info.
297261847f8eSopenharmony_ci   *
297361847f8eSopenharmony_ci   * @type { NavContentInfo }
297461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
297561847f8eSopenharmony_ci   * @crossplatform
297661847f8eSopenharmony_ci   * @atomicservice
297761847f8eSopenharmony_ci   * @since 12
297861847f8eSopenharmony_ci   */
297961847f8eSopenharmony_ci  to: NavContentInfo;
298061847f8eSopenharmony_ci
298161847f8eSopenharmony_ci  /**
298261847f8eSopenharmony_ci   * Indicates whether it is an interactive transition.
298361847f8eSopenharmony_ci   *
298461847f8eSopenharmony_ci   * @type { ?boolean }
298561847f8eSopenharmony_ci   * @default false
298661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
298761847f8eSopenharmony_ci   * @crossplatform
298861847f8eSopenharmony_ci   * @atomicservice
298961847f8eSopenharmony_ci   * @since 12
299061847f8eSopenharmony_ci   */
299161847f8eSopenharmony_ci  isInteractive?: boolean;
299261847f8eSopenharmony_ci
299361847f8eSopenharmony_ci  /**
299461847f8eSopenharmony_ci   * Notification system transition animation completed.
299561847f8eSopenharmony_ci   *
299661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
299761847f8eSopenharmony_ci   * @crossplatform
299861847f8eSopenharmony_ci   * @since 11
299961847f8eSopenharmony_ci   */
300061847f8eSopenharmony_ci  /**
300161847f8eSopenharmony_ci   * Notification system transition animation completed.
300261847f8eSopenharmony_ci   *
300361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
300461847f8eSopenharmony_ci   * @crossplatform
300561847f8eSopenharmony_ci   * @atomicservice
300661847f8eSopenharmony_ci   * @since 12
300761847f8eSopenharmony_ci   */
300861847f8eSopenharmony_ci  finishTransition(): void;
300961847f8eSopenharmony_ci
301061847f8eSopenharmony_ci  /**
301161847f8eSopenharmony_ci   * Notification system transition animation canceled.
301261847f8eSopenharmony_ci   *
301361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
301461847f8eSopenharmony_ci   * @crossplatform
301561847f8eSopenharmony_ci   * @atomicservice
301661847f8eSopenharmony_ci   * @since 12
301761847f8eSopenharmony_ci   */
301861847f8eSopenharmony_ci  cancelTransition?(): void;
301961847f8eSopenharmony_ci
302061847f8eSopenharmony_ci  /**
302161847f8eSopenharmony_ci   * Notification system transition animation update.
302261847f8eSopenharmony_ci   *
302361847f8eSopenharmony_ci   * @param { number } progress - The progress of transition animation.
302461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
302561847f8eSopenharmony_ci   * @crossplatform
302661847f8eSopenharmony_ci   * @atomicservice
302761847f8eSopenharmony_ci   * @since 12
302861847f8eSopenharmony_ci   */
302961847f8eSopenharmony_ci  updateTransition?(progress: number): void;
303061847f8eSopenharmony_ci}
303161847f8eSopenharmony_ci
303261847f8eSopenharmony_ci/**
303361847f8eSopenharmony_ci * Navigation content info.
303461847f8eSopenharmony_ci *
303561847f8eSopenharmony_ci * @interface NavContentInfo
303661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
303761847f8eSopenharmony_ci * @crossplatform
303861847f8eSopenharmony_ci * @since 11
303961847f8eSopenharmony_ci */
304061847f8eSopenharmony_ci/**
304161847f8eSopenharmony_ci * Navigation content info.
304261847f8eSopenharmony_ci *
304361847f8eSopenharmony_ci * @interface NavContentInfo
304461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
304561847f8eSopenharmony_ci * @crossplatform
304661847f8eSopenharmony_ci * @atomicservice
304761847f8eSopenharmony_ci * @since 12
304861847f8eSopenharmony_ci */
304961847f8eSopenharmony_cideclare interface NavContentInfo {
305061847f8eSopenharmony_ci  /**
305161847f8eSopenharmony_ci   * Navigation content name.
305261847f8eSopenharmony_ci   *
305361847f8eSopenharmony_ci   * @type { ?string }
305461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
305561847f8eSopenharmony_ci   * @crossplatform
305661847f8eSopenharmony_ci   * @since 11
305761847f8eSopenharmony_ci   */
305861847f8eSopenharmony_ci  /**
305961847f8eSopenharmony_ci   * Navigation content name.
306061847f8eSopenharmony_ci   *
306161847f8eSopenharmony_ci   * @type { ?string }
306261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
306361847f8eSopenharmony_ci   * @crossplatform
306461847f8eSopenharmony_ci   * @atomicservice
306561847f8eSopenharmony_ci   * @since 12
306661847f8eSopenharmony_ci   */
306761847f8eSopenharmony_ci  name?: string;
306861847f8eSopenharmony_ci
306961847f8eSopenharmony_ci  /**
307061847f8eSopenharmony_ci   * Navigation content index.
307161847f8eSopenharmony_ci   *
307261847f8eSopenharmony_ci   * @type { number }
307361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
307461847f8eSopenharmony_ci   * @crossplatform
307561847f8eSopenharmony_ci   * @since 11
307661847f8eSopenharmony_ci   */
307761847f8eSopenharmony_ci  /**
307861847f8eSopenharmony_ci   * Navigation content index.
307961847f8eSopenharmony_ci   *
308061847f8eSopenharmony_ci   * @type { number }
308161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
308261847f8eSopenharmony_ci   * @crossplatform
308361847f8eSopenharmony_ci   * @atomicservice
308461847f8eSopenharmony_ci   * @since 12
308561847f8eSopenharmony_ci   */
308661847f8eSopenharmony_ci  index: number;
308761847f8eSopenharmony_ci
308861847f8eSopenharmony_ci  /**
308961847f8eSopenharmony_ci   * Navigation content mode.
309061847f8eSopenharmony_ci   *
309161847f8eSopenharmony_ci   * @type { ?NavDestinationMode }
309261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
309361847f8eSopenharmony_ci   * @crossplatform
309461847f8eSopenharmony_ci   * @since 11
309561847f8eSopenharmony_ci   */
309661847f8eSopenharmony_ci  /**
309761847f8eSopenharmony_ci   * Navigation content mode.
309861847f8eSopenharmony_ci   *
309961847f8eSopenharmony_ci   * @type { ?NavDestinationMode }
310061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
310161847f8eSopenharmony_ci   * @crossplatform
310261847f8eSopenharmony_ci   * @atomicservice
310361847f8eSopenharmony_ci   * @since 12
310461847f8eSopenharmony_ci   */
310561847f8eSopenharmony_ci  mode?: NavDestinationMode;
310661847f8eSopenharmony_ci
310761847f8eSopenharmony_ci  /**
310861847f8eSopenharmony_ci   * Navigation content param.
310961847f8eSopenharmony_ci   *
311061847f8eSopenharmony_ci   * @type { ?Object }
311161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
311261847f8eSopenharmony_ci   * @crossplatform
311361847f8eSopenharmony_ci   * @atomicservice
311461847f8eSopenharmony_ci   * @since 12
311561847f8eSopenharmony_ci   */
311661847f8eSopenharmony_ci  param?: Object;
311761847f8eSopenharmony_ci
311861847f8eSopenharmony_ci  /**
311961847f8eSopenharmony_ci   * The unique id of NavDestination.
312061847f8eSopenharmony_ci   *
312161847f8eSopenharmony_ci   * @type { ?string }
312261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
312361847f8eSopenharmony_ci   * @crossplatform
312461847f8eSopenharmony_ci   * @atomicservice
312561847f8eSopenharmony_ci   * @since 12
312661847f8eSopenharmony_ci   */
312761847f8eSopenharmony_ci  navDestinationId?: string;
312861847f8eSopenharmony_ci}
312961847f8eSopenharmony_ci
313061847f8eSopenharmony_ci/**
313161847f8eSopenharmony_ci * Defines Navigation Component.
313261847f8eSopenharmony_ci *
313361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
313461847f8eSopenharmony_ci * @since 8
313561847f8eSopenharmony_ci */
313661847f8eSopenharmony_ci/**
313761847f8eSopenharmony_ci * Defines Navigation Component.
313861847f8eSopenharmony_ci *
313961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
314061847f8eSopenharmony_ci * @crossplatform
314161847f8eSopenharmony_ci * @since 10
314261847f8eSopenharmony_ci */
314361847f8eSopenharmony_ci/**
314461847f8eSopenharmony_ci * Defines Navigation Component.
314561847f8eSopenharmony_ci *
314661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
314761847f8eSopenharmony_ci * @crossplatform
314861847f8eSopenharmony_ci * @atomicservice
314961847f8eSopenharmony_ci * @since 11
315061847f8eSopenharmony_ci */
315161847f8eSopenharmony_cideclare const Navigation: NavigationInterface;
315261847f8eSopenharmony_ci
315361847f8eSopenharmony_ci/**
315461847f8eSopenharmony_ci * Defines Navigation Component instance.
315561847f8eSopenharmony_ci *
315661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
315761847f8eSopenharmony_ci * @since 8
315861847f8eSopenharmony_ci */
315961847f8eSopenharmony_ci/**
316061847f8eSopenharmony_ci * Defines Navigation Component instance.
316161847f8eSopenharmony_ci *
316261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
316361847f8eSopenharmony_ci * @crossplatform
316461847f8eSopenharmony_ci * @since 10
316561847f8eSopenharmony_ci */
316661847f8eSopenharmony_ci/**
316761847f8eSopenharmony_ci * Defines Navigation Component instance.
316861847f8eSopenharmony_ci *
316961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
317061847f8eSopenharmony_ci * @crossplatform
317161847f8eSopenharmony_ci * @atomicservice
317261847f8eSopenharmony_ci * @since 11
317361847f8eSopenharmony_ci */
317461847f8eSopenharmony_cideclare const NavigationInstance: NavigationAttribute;
3175