1/*
2 * Copyright (c) 2021 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16/**
17 * @file
18 * @kit AbilityKit
19 */
20
21/**
22 * Provides methods for obtaining information about the ability that a shortcut will start, including the target
23 * bundle name, target module name and ability class name.
24 *
25 * @typedef ShortcutWant
26 * @syscap SystemCapability.BundleManager.BundleFramework
27 * @systemapi Hide this for inner system use
28 * @since 7
29 * @deprecated since 9
30 * @useinstead ohos.bundle.launcherBundleManager.ShortcutWant
31 */
32export interface ShortcutWant {
33  /**
34   * @type { string }
35   * @syscap SystemCapability.BundleManager.BundleFramework
36   * @systemapi Hide this for inner system use
37   * @since 7
38   * @deprecated since 9
39   */
40  readonly targetBundle: string;
41  /**
42   * @type { string }
43   * @syscap SystemCapability.BundleManager.BundleFramework
44   * @systemapi Hide this for inner system use
45   * @since 7
46   * @deprecated since 9
47   */
48  readonly targetClass: string;
49}
50
51/**
52 * Provides information about a shortcut, including the shortcut ID and label.
53 *
54 * @typedef ShortcutInfo
55 * @syscap SystemCapability.BundleManager.BundleFramework
56 * @since 7
57 * @deprecated since 9
58 */
59export interface ShortcutInfo {
60  /**
61   * @type { string }
62   * @syscap SystemCapability.BundleManager.BundleFramework
63   * @since 7
64   * @deprecated since 9
65   */
66  readonly id: string;
67  /**
68   * @type { string }
69   * @syscap SystemCapability.BundleManager.BundleFramework
70   * @since 7
71   * @deprecated since 9
72   */
73  readonly bundleName: string;
74  /**
75   * @type { string }
76   * @syscap SystemCapability.BundleManager.BundleFramework
77   * @since 7
78   * @deprecated since 9
79   */
80  readonly hostAbility: string;
81  /**
82   * @type { string }
83   * @syscap SystemCapability.BundleManager.BundleFramework
84   * @since 7
85   * @deprecated since 9
86   */
87  readonly icon: string;
88  /**
89   * @type { number }
90   * @syscap SystemCapability.BundleManager.BundleFramework
91   * @since 8
92   * @deprecated since 9
93   */
94  readonly iconId: number;
95  /**
96   * @type { string }
97   * @syscap SystemCapability.BundleManager.BundleFramework
98   * @since 7
99   * @deprecated since 9
100   */
101  readonly label: string;
102  /**
103   * @type { number }
104   * @syscap SystemCapability.BundleManager.BundleFramework
105   * @since 8
106   * @deprecated since 9
107   */
108  readonly labelId: number;
109  /**
110   * @type { string }
111   * @syscap SystemCapability.BundleManager.BundleFramework
112   * @since 7
113   * @deprecated since 9
114   */
115  readonly disableMessage: string;
116  /**
117   * @type { Array<ShortcutWant> }
118   * @syscap SystemCapability.BundleManager.BundleFramework
119   * @since 7
120   * @deprecated since 9
121   */
122  readonly wants: Array<ShortcutWant>;
123  /**
124   * @type { ?boolean }
125   * @default false
126   * @syscap SystemCapability.BundleManager.BundleFramework
127   * @since 7
128   * @deprecated since 9
129   */
130  readonly isStatic?: boolean;
131  /**
132   * @type { ?boolean }
133   * @default false
134   * @syscap SystemCapability.BundleManager.BundleFramework
135   * @since 7
136   * @deprecated since 9
137   */
138  readonly isHomeShortcut?: boolean;
139  /**
140   * @type { ?boolean }
141   * @default false
142   * @syscap SystemCapability.BundleManager.BundleFramework
143   * @since 7
144   * @deprecated since 9
145   */
146  readonly isEnabled?: boolean;
147}
148