161847f8eSopenharmony_ci/* 261847f8eSopenharmony_ci * Copyright (c) 2022-2023 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 * Indicates the information of the route page. 2361847f8eSopenharmony_ci * 2461847f8eSopenharmony_ci * @interface RouteInfo 2561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 2661847f8eSopenharmony_ci * @crossplatform 2761847f8eSopenharmony_ci * @since 10 2861847f8eSopenharmony_ci */ 2961847f8eSopenharmony_ci/** 3061847f8eSopenharmony_ci * Indicates the information of the route page. 3161847f8eSopenharmony_ci * 3261847f8eSopenharmony_ci * @interface RouteInfo 3361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 3461847f8eSopenharmony_ci * @crossplatform 3561847f8eSopenharmony_ci * @atomicservice 3661847f8eSopenharmony_ci * @since 11 3761847f8eSopenharmony_ci * @deprecated since 13 3861847f8eSopenharmony_ci */ 3961847f8eSopenharmony_cideclare interface RouteInfo { 4061847f8eSopenharmony_ci /** 4161847f8eSopenharmony_ci * The name of the route page. 4261847f8eSopenharmony_ci * 4361847f8eSopenharmony_ci * @type { string } 4461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 4561847f8eSopenharmony_ci * @crossplatform 4661847f8eSopenharmony_ci * @since 10 4761847f8eSopenharmony_ci */ 4861847f8eSopenharmony_ci /** 4961847f8eSopenharmony_ci * The name of the route page. 5061847f8eSopenharmony_ci * 5161847f8eSopenharmony_ci * @type { string } 5261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 5361847f8eSopenharmony_ci * @crossplatform 5461847f8eSopenharmony_ci * @atomicservice 5561847f8eSopenharmony_ci * @since 11 5661847f8eSopenharmony_ci * @deprecated since 13 5761847f8eSopenharmony_ci */ 5861847f8eSopenharmony_ci name: string; 5961847f8eSopenharmony_ci 6061847f8eSopenharmony_ci /** 6161847f8eSopenharmony_ci * The detailed parameter of the route page. 6261847f8eSopenharmony_ci * 6361847f8eSopenharmony_ci * @type { ?unknown } 6461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 6561847f8eSopenharmony_ci * @crossplatform 6661847f8eSopenharmony_ci * @since 10 6761847f8eSopenharmony_ci */ 6861847f8eSopenharmony_ci /** 6961847f8eSopenharmony_ci * The detailed parameter of the route page. 7061847f8eSopenharmony_ci * 7161847f8eSopenharmony_ci * @type { ?unknown } 7261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 7361847f8eSopenharmony_ci * @crossplatform 7461847f8eSopenharmony_ci * @atomicservice 7561847f8eSopenharmony_ci * @since 11 7661847f8eSopenharmony_ci * @deprecated since 13 7761847f8eSopenharmony_ci */ 7861847f8eSopenharmony_ci param?: unknown; 7961847f8eSopenharmony_ci} 8061847f8eSopenharmony_ci 8161847f8eSopenharmony_ci/** 8261847f8eSopenharmony_ci * The construct function of NavRouter. 8361847f8eSopenharmony_ci * 8461847f8eSopenharmony_ci * @interface NavRouterInterface 8561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 8661847f8eSopenharmony_ci * @since 9 8761847f8eSopenharmony_ci */ 8861847f8eSopenharmony_ci/** 8961847f8eSopenharmony_ci * The construct function of NavRouter. 9061847f8eSopenharmony_ci * 9161847f8eSopenharmony_ci * @interface NavRouterInterface 9261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 9361847f8eSopenharmony_ci * @crossplatform 9461847f8eSopenharmony_ci * @since 10 9561847f8eSopenharmony_ci */ 9661847f8eSopenharmony_ci/** 9761847f8eSopenharmony_ci * The construct function of NavRouter. 9861847f8eSopenharmony_ci * 9961847f8eSopenharmony_ci * @interface NavRouterInterface 10061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 10161847f8eSopenharmony_ci * @crossplatform 10261847f8eSopenharmony_ci * @atomicservice 10361847f8eSopenharmony_ci * @since 11 10461847f8eSopenharmony_ci * @deprecated since 13 10561847f8eSopenharmony_ci */ 10661847f8eSopenharmony_cideclare interface NavRouterInterface { 10761847f8eSopenharmony_ci /** 10861847f8eSopenharmony_ci * Constructor. 10961847f8eSopenharmony_ci * 11061847f8eSopenharmony_ci * @returns { NavRouterAttribute } 11161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 11261847f8eSopenharmony_ci * @since 9 11361847f8eSopenharmony_ci */ 11461847f8eSopenharmony_ci /** 11561847f8eSopenharmony_ci * Constructor. 11661847f8eSopenharmony_ci * 11761847f8eSopenharmony_ci * @returns { NavRouterAttribute } 11861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 11961847f8eSopenharmony_ci * @crossplatform 12061847f8eSopenharmony_ci * @since 10 12161847f8eSopenharmony_ci */ 12261847f8eSopenharmony_ci /** 12361847f8eSopenharmony_ci * Constructor. 12461847f8eSopenharmony_ci * 12561847f8eSopenharmony_ci * @returns { NavRouterAttribute } 12661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 12761847f8eSopenharmony_ci * @crossplatform 12861847f8eSopenharmony_ci * @atomicservice 12961847f8eSopenharmony_ci * @since 11 13061847f8eSopenharmony_ci * @deprecated since 13 13161847f8eSopenharmony_ci */ 13261847f8eSopenharmony_ci (): NavRouterAttribute; 13361847f8eSopenharmony_ci 13461847f8eSopenharmony_ci /** 13561847f8eSopenharmony_ci * NavDestination Constructor. 13661847f8eSopenharmony_ci * 13761847f8eSopenharmony_ci * @param { RouteInfo } value - Indicates the information of route page. 13861847f8eSopenharmony_ci * @returns { NavRouterAttribute } 13961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 14061847f8eSopenharmony_ci * @crossplatform 14161847f8eSopenharmony_ci * @since 10 14261847f8eSopenharmony_ci */ 14361847f8eSopenharmony_ci /** 14461847f8eSopenharmony_ci * NavDestination Constructor. 14561847f8eSopenharmony_ci * 14661847f8eSopenharmony_ci * @param { RouteInfo } value - Indicates the information of route page. 14761847f8eSopenharmony_ci * @returns { NavRouterAttribute } 14861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 14961847f8eSopenharmony_ci * @crossplatform 15061847f8eSopenharmony_ci * @atomicservice 15161847f8eSopenharmony_ci * @since 11 15261847f8eSopenharmony_ci * @deprecated since 13 15361847f8eSopenharmony_ci */ 15461847f8eSopenharmony_ci (value: RouteInfo): NavRouterAttribute; 15561847f8eSopenharmony_ci} 15661847f8eSopenharmony_ci 15761847f8eSopenharmony_ci/** 15861847f8eSopenharmony_ci * Define the route mode. 15961847f8eSopenharmony_ci * 16061847f8eSopenharmony_ci * @enum { number } 16161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 16261847f8eSopenharmony_ci * @crossplatform 16361847f8eSopenharmony_ci * @since 10 16461847f8eSopenharmony_ci */ 16561847f8eSopenharmony_ci/** 16661847f8eSopenharmony_ci * Define the route mode. 16761847f8eSopenharmony_ci * 16861847f8eSopenharmony_ci * @enum { number } 16961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 17061847f8eSopenharmony_ci * @crossplatform 17161847f8eSopenharmony_ci * @atomicservice 17261847f8eSopenharmony_ci * @since 11 17361847f8eSopenharmony_ci * @deprecated since 13 17461847f8eSopenharmony_ci */ 17561847f8eSopenharmony_cideclare enum NavRouteMode { 17661847f8eSopenharmony_ci /** 17761847f8eSopenharmony_ci * Create a new page to replace the current. The old page is destroyed but kept in the stack for recreating. 17861847f8eSopenharmony_ci * 17961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 18061847f8eSopenharmony_ci * @crossplatform 18161847f8eSopenharmony_ci * @since 10 18261847f8eSopenharmony_ci */ 18361847f8eSopenharmony_ci /** 18461847f8eSopenharmony_ci * Create a new page to replace the current. The old page is destroyed but kept in the stack for recreating. 18561847f8eSopenharmony_ci * 18661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 18761847f8eSopenharmony_ci * @crossplatform 18861847f8eSopenharmony_ci * @atomicservice 18961847f8eSopenharmony_ci * @since 11 19061847f8eSopenharmony_ci * @deprecated since 13 19161847f8eSopenharmony_ci */ 19261847f8eSopenharmony_ci PUSH_WITH_RECREATE, 19361847f8eSopenharmony_ci 19461847f8eSopenharmony_ci /** 19561847f8eSopenharmony_ci * Create a new page to cover the current. The old page is remained and kept in the stack. 19661847f8eSopenharmony_ci * 19761847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 19861847f8eSopenharmony_ci * @crossplatform 19961847f8eSopenharmony_ci * @since 10 20061847f8eSopenharmony_ci */ 20161847f8eSopenharmony_ci /** 20261847f8eSopenharmony_ci * Create a new page to cover the current. The old page is remained and kept in the stack. 20361847f8eSopenharmony_ci * 20461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 20561847f8eSopenharmony_ci * @crossplatform 20661847f8eSopenharmony_ci * @atomicservice 20761847f8eSopenharmony_ci * @since 11 20861847f8eSopenharmony_ci * @deprecated since 13 20961847f8eSopenharmony_ci */ 21061847f8eSopenharmony_ci PUSH, 21161847f8eSopenharmony_ci 21261847f8eSopenharmony_ci /** 21361847f8eSopenharmony_ci * Create a new page to replace the current. The old page is destroyed and removed out of the stack. 21461847f8eSopenharmony_ci * 21561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 21661847f8eSopenharmony_ci * @crossplatform 21761847f8eSopenharmony_ci * @since 10 21861847f8eSopenharmony_ci */ 21961847f8eSopenharmony_ci /** 22061847f8eSopenharmony_ci * Create a new page to replace the current. The old page is destroyed and removed out of the stack. 22161847f8eSopenharmony_ci * 22261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 22361847f8eSopenharmony_ci * @crossplatform 22461847f8eSopenharmony_ci * @atomicservice 22561847f8eSopenharmony_ci * @since 11 22661847f8eSopenharmony_ci * @deprecated since 13 22761847f8eSopenharmony_ci */ 22861847f8eSopenharmony_ci REPLACE 22961847f8eSopenharmony_ci} 23061847f8eSopenharmony_ci 23161847f8eSopenharmony_ci/** 23261847f8eSopenharmony_ci * The attribute function of NavRouter 23361847f8eSopenharmony_ci * 23461847f8eSopenharmony_ci * @extends CommonMethod<NavRouterAttribute> 23561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 23661847f8eSopenharmony_ci * @since 9 23761847f8eSopenharmony_ci */ 23861847f8eSopenharmony_ci/** 23961847f8eSopenharmony_ci * The attribute function of NavRouter 24061847f8eSopenharmony_ci * 24161847f8eSopenharmony_ci * @extends CommonMethod<NavRouterAttribute> 24261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 24361847f8eSopenharmony_ci * @crossplatform 24461847f8eSopenharmony_ci * @since 10 24561847f8eSopenharmony_ci */ 24661847f8eSopenharmony_ci/** 24761847f8eSopenharmony_ci * The attribute function of NavRouter 24861847f8eSopenharmony_ci * 24961847f8eSopenharmony_ci * @extends CommonMethod<NavRouterAttribute> 25061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 25161847f8eSopenharmony_ci * @crossplatform 25261847f8eSopenharmony_ci * @atomicservice 25361847f8eSopenharmony_ci * @since 11 25461847f8eSopenharmony_ci * @deprecated since 13 25561847f8eSopenharmony_ci */ 25661847f8eSopenharmony_cideclare class NavRouterAttribute extends CommonMethod<NavRouterAttribute> { 25761847f8eSopenharmony_ci /** 25861847f8eSopenharmony_ci * Trigger callback when NavigationView state change. 25961847f8eSopenharmony_ci * 26061847f8eSopenharmony_ci * @param { function } callback 26161847f8eSopenharmony_ci * @returns { NavRouterAttribute } 26261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 26361847f8eSopenharmony_ci * @since 9 26461847f8eSopenharmony_ci */ 26561847f8eSopenharmony_ci /** 26661847f8eSopenharmony_ci * Trigger callback when NavigationView state change. 26761847f8eSopenharmony_ci * 26861847f8eSopenharmony_ci * @param { function } callback 26961847f8eSopenharmony_ci * @returns { NavRouterAttribute } 27061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 27161847f8eSopenharmony_ci * @crossplatform 27261847f8eSopenharmony_ci * @since 10 27361847f8eSopenharmony_ci */ 27461847f8eSopenharmony_ci /** 27561847f8eSopenharmony_ci * Trigger callback when NavigationView state change. 27661847f8eSopenharmony_ci * 27761847f8eSopenharmony_ci * @param { function } callback 27861847f8eSopenharmony_ci * @returns { NavRouterAttribute } 27961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 28061847f8eSopenharmony_ci * @crossplatform 28161847f8eSopenharmony_ci * @atomicservice 28261847f8eSopenharmony_ci * @since 11 28361847f8eSopenharmony_ci * @deprecated since 13 28461847f8eSopenharmony_ci */ 28561847f8eSopenharmony_ci onStateChange(callback: (isActivated: boolean) => void): NavRouterAttribute; 28661847f8eSopenharmony_ci 28761847f8eSopenharmony_ci /** 28861847f8eSopenharmony_ci * Define the route mode. 28961847f8eSopenharmony_ci * 29061847f8eSopenharmony_ci * @param { NavRouteMode } mode - The route mode of the NavRouter. 29161847f8eSopenharmony_ci * @returns { NavRouterAttribute } Returns the instance of the NavRouterAttribute. 29261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 29361847f8eSopenharmony_ci * @crossplatform 29461847f8eSopenharmony_ci * @since 10 29561847f8eSopenharmony_ci */ 29661847f8eSopenharmony_ci /** 29761847f8eSopenharmony_ci * Define the route mode. 29861847f8eSopenharmony_ci * 29961847f8eSopenharmony_ci * @param { NavRouteMode } mode - The route mode of the NavRouter. 30061847f8eSopenharmony_ci * @returns { NavRouterAttribute } Returns the instance of the NavRouterAttribute. 30161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 30261847f8eSopenharmony_ci * @crossplatform 30361847f8eSopenharmony_ci * @atomicservice 30461847f8eSopenharmony_ci * @since 11 30561847f8eSopenharmony_ci * @deprecated since 13 30661847f8eSopenharmony_ci */ 30761847f8eSopenharmony_ci mode(mode: NavRouteMode): NavRouterAttribute; 30861847f8eSopenharmony_ci} 30961847f8eSopenharmony_ci 31061847f8eSopenharmony_ci/** 31161847f8eSopenharmony_ci * Defines NavRouter Component. 31261847f8eSopenharmony_ci * 31361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 31461847f8eSopenharmony_ci * @since 9 31561847f8eSopenharmony_ci */ 31661847f8eSopenharmony_ci/** 31761847f8eSopenharmony_ci * Defines NavRouter Component. 31861847f8eSopenharmony_ci * 31961847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 32061847f8eSopenharmony_ci * @crossplatform 32161847f8eSopenharmony_ci * @since 10 32261847f8eSopenharmony_ci */ 32361847f8eSopenharmony_ci/** 32461847f8eSopenharmony_ci * Defines NavRouter Component. 32561847f8eSopenharmony_ci * 32661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 32761847f8eSopenharmony_ci * @crossplatform 32861847f8eSopenharmony_ci * @atomicservice 32961847f8eSopenharmony_ci * @since 11 33061847f8eSopenharmony_ci * @deprecated since 13 33161847f8eSopenharmony_ci */ 33261847f8eSopenharmony_cideclare const NavRouter: NavRouterInterface; 33361847f8eSopenharmony_ci 33461847f8eSopenharmony_ci/** 33561847f8eSopenharmony_ci * Defines NavRouter Component instance. 33661847f8eSopenharmony_ci * 33761847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 33861847f8eSopenharmony_ci * @since 9 33961847f8eSopenharmony_ci */ 34061847f8eSopenharmony_ci/** 34161847f8eSopenharmony_ci * Defines NavRouter Component instance. 34261847f8eSopenharmony_ci * 34361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 34461847f8eSopenharmony_ci * @crossplatform 34561847f8eSopenharmony_ci * @since 10 34661847f8eSopenharmony_ci */ 34761847f8eSopenharmony_ci/** 34861847f8eSopenharmony_ci * Defines NavRouter Component instance. 34961847f8eSopenharmony_ci * 35061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full 35161847f8eSopenharmony_ci * @crossplatform 35261847f8eSopenharmony_ci * @atomicservice 35361847f8eSopenharmony_ci * @since 11 35461847f8eSopenharmony_ci * @deprecated since 13 35561847f8eSopenharmony_ci */ 35661847f8eSopenharmony_cideclare const NavRouterInstance: NavRouterAttribute; 357