1b8a72a62Sopenharmony_ci{
2b8a72a62Sopenharmony_ci  "title": "JSON schema for app.json",
3b8a72a62Sopenharmony_ci  "$schema": "http://json-schema.org/draft-07/schema#",
4b8a72a62Sopenharmony_ci  "type": "object",
5b8a72a62Sopenharmony_ci  "additionalProperties": true,
6b8a72a62Sopenharmony_ci  "definitions": {
7b8a72a62Sopenharmony_ci    "default": {
8b8a72a62Sopenharmony_ci      "description": "The configuration in the default tag is applicable to all devices. If the configuration is different for other device types, you need to configure the configuration under the configuration tag of the device type.",
9b8a72a62Sopenharmony_ci      "type": "object",
10b8a72a62Sopenharmony_ci      "propertyNames": {
11b8a72a62Sopenharmony_ci        "enum": [
12b8a72a62Sopenharmony_ci          "minAPIVersion",
13b8a72a62Sopenharmony_ci          "distributedNotificationEnabled",
14b8a72a62Sopenharmony_ci          "keepAlive",
15b8a72a62Sopenharmony_ci          "removable",
16b8a72a62Sopenharmony_ci          "singleton",
17b8a72a62Sopenharmony_ci          "userDataClearable",
18b8a72a62Sopenharmony_ci          "accessible"
19b8a72a62Sopenharmony_ci        ]
20b8a72a62Sopenharmony_ci      },
21b8a72a62Sopenharmony_ci      "properties": {
22b8a72a62Sopenharmony_ci        "minAPIVersion": {
23b8a72a62Sopenharmony_ci          "description": "Indicates the minimum API version required for running an application. This label is an integer and can be defaulted.",
24b8a72a62Sopenharmony_ci          "type": "integer",
25b8a72a62Sopenharmony_ci          "minimum": 0,
26b8a72a62Sopenharmony_ci          "maximum": 2147483647
27b8a72a62Sopenharmony_ci        },
28b8a72a62Sopenharmony_ci        "distributedNotificationEnabled": {
29b8a72a62Sopenharmony_ci          "description": "Describes whether the application has distributed notifications.",
30b8a72a62Sopenharmony_ci          "type": "boolean",
31b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
32b8a72a62Sopenharmony_ci          "default": false
33b8a72a62Sopenharmony_ci        },
34b8a72a62Sopenharmony_ci        "keepAlive": {
35b8a72a62Sopenharmony_ci          "description": "Specifies whether the application will keep alive. This attribute takes effect only when the system application or privilege application is used.@deprecated",
36b8a72a62Sopenharmony_ci          "type": "boolean",
37b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
38b8a72a62Sopenharmony_ci          "default": false
39b8a72a62Sopenharmony_ci        },
40b8a72a62Sopenharmony_ci        "removable": {
41b8a72a62Sopenharmony_ci          "description": "Describes the application can remove or not. This attribute takes effect only when the system application or privilege application is used.@deprecated",
42b8a72a62Sopenharmony_ci          "type": "boolean",
43b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
44b8a72a62Sopenharmony_ci          "default": true
45b8a72a62Sopenharmony_ci        },
46b8a72a62Sopenharmony_ci        "singleton": {
47b8a72a62Sopenharmony_ci          "description": "Describes whether the application is singleton mode. This attribute takes effect only when the system application or privilege application is used.@deprecated",
48b8a72a62Sopenharmony_ci          "type": "boolean",
49b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
50b8a72a62Sopenharmony_ci          "default": false
51b8a72a62Sopenharmony_ci        },
52b8a72a62Sopenharmony_ci        "userDataClearable": {
53b8a72a62Sopenharmony_ci          "description": "Describes whether to allow the application to clear user data. This attribute takes effect only when the system application or privilege application is used.@deprecated",
54b8a72a62Sopenharmony_ci          "type": "boolean",
55b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
56b8a72a62Sopenharmony_ci          "default": true
57b8a72a62Sopenharmony_ci        },
58b8a72a62Sopenharmony_ci        "accessible": {
59b8a72a62Sopenharmony_ci          "description": "Describes whether to visit the application install catalogue. This attribute takes effect only when the system application or privilege application is used. And the aplpication must be a stage module",
60b8a72a62Sopenharmony_ci          "type": "boolean",
61b8a72a62Sopenharmony_ci          "default": false
62b8a72a62Sopenharmony_ci        }
63b8a72a62Sopenharmony_ci      }
64b8a72a62Sopenharmony_ci    }
65b8a72a62Sopenharmony_ci  },
66b8a72a62Sopenharmony_ci  "required": [
67b8a72a62Sopenharmony_ci    "app"
68b8a72a62Sopenharmony_ci  ],
69b8a72a62Sopenharmony_ci  "propertyNames": {
70b8a72a62Sopenharmony_ci    "enum": [
71b8a72a62Sopenharmony_ci      "app"
72b8a72a62Sopenharmony_ci    ]
73b8a72a62Sopenharmony_ci  },
74b8a72a62Sopenharmony_ci  "properties": {
75b8a72a62Sopenharmony_ci    "app": {
76b8a72a62Sopenharmony_ci      "description": "Indicates the global configuration of an application. Different .hap files of the same application must use the same app configuration.",
77b8a72a62Sopenharmony_ci      "type": "object",
78b8a72a62Sopenharmony_ci      "required": [
79b8a72a62Sopenharmony_ci        "bundleName",
80b8a72a62Sopenharmony_ci        "icon",
81b8a72a62Sopenharmony_ci        "label",
82b8a72a62Sopenharmony_ci        "versionCode",
83b8a72a62Sopenharmony_ci        "versionName"
84b8a72a62Sopenharmony_ci      ],
85b8a72a62Sopenharmony_ci      "if": {
86b8a72a62Sopenharmony_ci        "properties": {
87b8a72a62Sopenharmony_ci          "bundleType": {
88b8a72a62Sopenharmony_ci            "const": "app"
89b8a72a62Sopenharmony_ci          }
90b8a72a62Sopenharmony_ci        }
91b8a72a62Sopenharmony_ci      },
92b8a72a62Sopenharmony_ci      "then": {
93b8a72a62Sopenharmony_ci        "propertyNames": {
94b8a72a62Sopenharmony_ci          "enum": [
95b8a72a62Sopenharmony_ci            "bundleName",
96b8a72a62Sopenharmony_ci            "debug",
97b8a72a62Sopenharmony_ci            "bundleType",
98b8a72a62Sopenharmony_ci            "icon",
99b8a72a62Sopenharmony_ci            "label",
100b8a72a62Sopenharmony_ci            "description",
101b8a72a62Sopenharmony_ci            "vendor",
102b8a72a62Sopenharmony_ci            "versionCode",
103b8a72a62Sopenharmony_ci            "versionName",
104b8a72a62Sopenharmony_ci            "minCompatibleVersionCode",
105b8a72a62Sopenharmony_ci            "minAPIVersion",
106b8a72a62Sopenharmony_ci            "targetAPIVersion",
107b8a72a62Sopenharmony_ci            "apiReleaseType",
108b8a72a62Sopenharmony_ci            "distributedNotificationEnabled",
109b8a72a62Sopenharmony_ci            "entityType",
110b8a72a62Sopenharmony_ci            "keepAlive",
111b8a72a62Sopenharmony_ci            "removable",
112b8a72a62Sopenharmony_ci            "singleton",
113b8a72a62Sopenharmony_ci            "userDataClearable",
114b8a72a62Sopenharmony_ci            "accessible",
115b8a72a62Sopenharmony_ci            "multiProjects",
116b8a72a62Sopenharmony_ci            "asanEnabled",
117b8a72a62Sopenharmony_ci            "default",
118b8a72a62Sopenharmony_ci            "tablet",
119b8a72a62Sopenharmony_ci            "tv",
120b8a72a62Sopenharmony_ci            "wearable",
121b8a72a62Sopenharmony_ci            "car",
122b8a72a62Sopenharmony_ci            "targetBundleName",
123b8a72a62Sopenharmony_ci            "targetPriority",
124b8a72a62Sopenharmony_ci            "generateBuildHash",
125b8a72a62Sopenharmony_ci            "2in1",
126b8a72a62Sopenharmony_ci            "GWPAsanEnabled",
127b8a72a62Sopenharmony_ci            "tsanEnabled",
128b8a72a62Sopenharmony_ci            "ubsanEnabled",
129b8a72a62Sopenharmony_ci            "appEnvironments",
130b8a72a62Sopenharmony_ci            "maxChildProcess",
131b8a72a62Sopenharmony_ci            "multiAppMode",
132b8a72a62Sopenharmony_ci            "hwasanEnabled",
133b8a72a62Sopenharmony_ci            "cloudFileSyncEnabled",
134b8a72a62Sopenharmony_ci            "configuration"
135b8a72a62Sopenharmony_ci          ]
136b8a72a62Sopenharmony_ci        }
137b8a72a62Sopenharmony_ci      },
138b8a72a62Sopenharmony_ci      "else": {
139b8a72a62Sopenharmony_ci        "propertyNames": {
140b8a72a62Sopenharmony_ci          "enum": [
141b8a72a62Sopenharmony_ci            "bundleName",
142b8a72a62Sopenharmony_ci            "debug",
143b8a72a62Sopenharmony_ci            "bundleType",
144b8a72a62Sopenharmony_ci            "icon",
145b8a72a62Sopenharmony_ci            "label",
146b8a72a62Sopenharmony_ci            "description",
147b8a72a62Sopenharmony_ci            "vendor",
148b8a72a62Sopenharmony_ci            "versionCode",
149b8a72a62Sopenharmony_ci            "versionName",
150b8a72a62Sopenharmony_ci            "minCompatibleVersionCode",
151b8a72a62Sopenharmony_ci            "minAPIVersion",
152b8a72a62Sopenharmony_ci            "targetAPIVersion",
153b8a72a62Sopenharmony_ci            "apiReleaseType",
154b8a72a62Sopenharmony_ci            "distributedNotificationEnabled",
155b8a72a62Sopenharmony_ci            "entityType",
156b8a72a62Sopenharmony_ci            "keepAlive",
157b8a72a62Sopenharmony_ci            "removable",
158b8a72a62Sopenharmony_ci            "singleton",
159b8a72a62Sopenharmony_ci            "userDataClearable",
160b8a72a62Sopenharmony_ci            "accessible",
161b8a72a62Sopenharmony_ci            "multiProjects",
162b8a72a62Sopenharmony_ci            "asanEnabled",
163b8a72a62Sopenharmony_ci            "default",
164b8a72a62Sopenharmony_ci            "tablet",
165b8a72a62Sopenharmony_ci            "tv",
166b8a72a62Sopenharmony_ci            "wearable",
167b8a72a62Sopenharmony_ci            "car",
168b8a72a62Sopenharmony_ci            "targetBundleName",
169b8a72a62Sopenharmony_ci            "targetPriority",
170b8a72a62Sopenharmony_ci            "generateBuildHash",
171b8a72a62Sopenharmony_ci            "2in1",
172b8a72a62Sopenharmony_ci            "GWPAsanEnabled",
173b8a72a62Sopenharmony_ci            "tsanEnabled",
174b8a72a62Sopenharmony_ci            "ubsanEnabled",
175b8a72a62Sopenharmony_ci            "appEnvironments",
176b8a72a62Sopenharmony_ci            "maxChildProcess",
177b8a72a62Sopenharmony_ci            "hwasanEnabled",
178b8a72a62Sopenharmony_ci            "cloudFileSyncEnabled",
179b8a72a62Sopenharmony_ci            "configuration"
180b8a72a62Sopenharmony_ci          ]
181b8a72a62Sopenharmony_ci        }
182b8a72a62Sopenharmony_ci      },
183b8a72a62Sopenharmony_ci      "properties": {
184b8a72a62Sopenharmony_ci        "bundleName": {
185b8a72a62Sopenharmony_ci          "description": "Indicates the bundle name of the application. It uniquely identifies the application. The value is a string with 7 to 128 bytes of a reverse domain name, for example, com.huawei.himusic. It is recommended that the first label of this attribute is the top-level domain com, the second label is the vendor or individual name, and the third label is the application name. This label is a string type and cannot be defaulted.",
186b8a72a62Sopenharmony_ci          "type": "string",
187b8a72a62Sopenharmony_ci          "maxLength": 128,
188b8a72a62Sopenharmony_ci          "minLength": 7,
189b8a72a62Sopenharmony_ci          "pattern": "^[a-zA-Z][0-9a-zA-Z_.]+$"
190b8a72a62Sopenharmony_ci        },
191b8a72a62Sopenharmony_ci        "bundleType": {
192b8a72a62Sopenharmony_ci          "description": "Indicates the type of bundle",
193b8a72a62Sopenharmony_ci          "type":"string",
194b8a72a62Sopenharmony_ci          "enum": [
195b8a72a62Sopenharmony_ci            "app",
196b8a72a62Sopenharmony_ci            "atomicService",
197b8a72a62Sopenharmony_ci            "shared",
198b8a72a62Sopenharmony_ci            "appService"
199b8a72a62Sopenharmony_ci          ]
200b8a72a62Sopenharmony_ci        },
201b8a72a62Sopenharmony_ci        "debug": {
202b8a72a62Sopenharmony_ci          "description": "Identify whether the application can be debugged.",
203b8a72a62Sopenharmony_ci          "type": "boolean",
204b8a72a62Sopenharmony_ci          "default": false
205b8a72a62Sopenharmony_ci        },
206b8a72a62Sopenharmony_ci        "label": {
207b8a72a62Sopenharmony_ci          "description": "Indicates the label of the application.",
208b8a72a62Sopenharmony_ci          "type": "string",
209b8a72a62Sopenharmony_ci          "maxLength": 63,
210b8a72a62Sopenharmony_ci          "pattern":  "^[$]string:[0-9a-zA-Z_.]+|(?=.*[{])(?=.*[}])[0-9a-zA-Z_.{}]+$"
211b8a72a62Sopenharmony_ci        },
212b8a72a62Sopenharmony_ci        "icon": {
213b8a72a62Sopenharmony_ci          "description": "Indicates the index to the application icon file, in the format of \"$media:application_icon\".This label can be left blank by default.",
214b8a72a62Sopenharmony_ci          "type": "string",
215b8a72a62Sopenharmony_ci          "pattern": "^[$]media:[0-9a-zA-Z_.]+|(?=.*[{])(?=.*[}])[0-9a-zA-Z_.{}]$"
216b8a72a62Sopenharmony_ci        },
217b8a72a62Sopenharmony_ci        "description": {
218b8a72a62Sopenharmony_ci          "description": "Describes the application",
219b8a72a62Sopenharmony_ci          "type": "string",
220b8a72a62Sopenharmony_ci          "maxLength": 255
221b8a72a62Sopenharmony_ci        },
222b8a72a62Sopenharmony_ci        "vendor": {
223b8a72a62Sopenharmony_ci          "description": "Describes the application vendor.",
224b8a72a62Sopenharmony_ci          "type": "string",
225b8a72a62Sopenharmony_ci          "maxLength": 255
226b8a72a62Sopenharmony_ci        },
227b8a72a62Sopenharmony_ci        "versionCode": {
228b8a72a62Sopenharmony_ci          "description": "Indicates the versionCode number of the application. The value is an integer greater than 0. A larger value generally represents a later version.The system determines the application version based on the tag value.This label cannot be left blank.",
229b8a72a62Sopenharmony_ci          "type": "integer",
230b8a72a62Sopenharmony_ci          "minimum": 0,
231b8a72a62Sopenharmony_ci          "maximum": 2147483647
232b8a72a62Sopenharmony_ci        },
233b8a72a62Sopenharmony_ci        "versionName": {
234b8a72a62Sopenharmony_ci          "description": "Indicates the text description of the application version.Used for displaying to users.A string can contain a maximum of 127 bytes.This label cannot be left blank.",
235b8a72a62Sopenharmony_ci          "type": "string",
236b8a72a62Sopenharmony_ci          "maxLength": 127,
237b8a72a62Sopenharmony_ci          "pattern": "^[0-9.]+|(?=.*[{])(?=.*[}])[0-9a-zA-Z_.{}]+$"
238b8a72a62Sopenharmony_ci        },
239b8a72a62Sopenharmony_ci        "minCompatibleVersionCode": {
240b8a72a62Sopenharmony_ci          "description": "Indicates the lowest compatible historical version number, used for cross-device compatibility judgment",
241b8a72a62Sopenharmony_ci          "type": "integer",
242b8a72a62Sopenharmony_ci          "minimum": 0,
243b8a72a62Sopenharmony_ci          "maximum": 2147483647
244b8a72a62Sopenharmony_ci        },
245b8a72a62Sopenharmony_ci        "minAPIVersion": {
246b8a72a62Sopenharmony_ci          "description": "Indicates the minimum API version required for running an application.",
247b8a72a62Sopenharmony_ci          "type": "integer",
248b8a72a62Sopenharmony_ci          "minimum": 0,
249b8a72a62Sopenharmony_ci          "maximum": 2147483647
250b8a72a62Sopenharmony_ci        },
251b8a72a62Sopenharmony_ci        "targetAPIVersion": {
252b8a72a62Sopenharmony_ci          "description": "This tag identifies the target API version required for application running. The value is an integer.",
253b8a72a62Sopenharmony_ci          "type": "integer",
254b8a72a62Sopenharmony_ci          "minimum": 0,
255b8a72a62Sopenharmony_ci          "maximum": 2147483647
256b8a72a62Sopenharmony_ci        },
257b8a72a62Sopenharmony_ci        "apiReleaseType": {
258b8a72a62Sopenharmony_ci          "description": "This tag identifies the type of the target API version required for application running. The tag is a string.",
259b8a72a62Sopenharmony_ci          "type": "string",
260b8a72a62Sopenharmony_ci          "pattern": "^(Canary[1-9]\\d*)|(Beta[1-9]\\d*)|(Release[1-9]\\d*)$"
261b8a72a62Sopenharmony_ci        },
262b8a72a62Sopenharmony_ci        "distributedNotificationEnabled": {
263b8a72a62Sopenharmony_ci          "description": "Describes whether the application has distributed notifications.",
264b8a72a62Sopenharmony_ci          "type": "boolean",
265b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
266b8a72a62Sopenharmony_ci          "default": false
267b8a72a62Sopenharmony_ci        },
268b8a72a62Sopenharmony_ci        "entityType": {
269b8a72a62Sopenharmony_ci          "description": "Describes the application type.",
270b8a72a62Sopenharmony_ci          "type": "string",
271b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
272b8a72a62Sopenharmony_ci          "enum": [
273b8a72a62Sopenharmony_ci            "game",
274b8a72a62Sopenharmony_ci            "media",
275b8a72a62Sopenharmony_ci            "communication",
276b8a72a62Sopenharmony_ci            "news",
277b8a72a62Sopenharmony_ci            "travel",
278b8a72a62Sopenharmony_ci            "utility",
279b8a72a62Sopenharmony_ci            "shopping",
280b8a72a62Sopenharmony_ci            "education",
281b8a72a62Sopenharmony_ci            "kids",
282b8a72a62Sopenharmony_ci            "business",
283b8a72a62Sopenharmony_ci            "photography",
284b8a72a62Sopenharmony_ci            "unspecified"
285b8a72a62Sopenharmony_ci          ],
286b8a72a62Sopenharmony_ci          "default": "unspecified"
287b8a72a62Sopenharmony_ci        },
288b8a72a62Sopenharmony_ci        "keepAlive": {
289b8a72a62Sopenharmony_ci          "description": "Specifies whether the application will keep alive. This attribute takes effect only when the system application or privilege application is used.@deprecated",
290b8a72a62Sopenharmony_ci          "type": "boolean",
291b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
292b8a72a62Sopenharmony_ci          "default": false
293b8a72a62Sopenharmony_ci        },
294b8a72a62Sopenharmony_ci        "removable": {
295b8a72a62Sopenharmony_ci          "description": "Describes the application can remove or not. This attribute takes effect only when the system application or privilege application is used.@deprecated",
296b8a72a62Sopenharmony_ci          "type": "boolean",
297b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
298b8a72a62Sopenharmony_ci          "default": true
299b8a72a62Sopenharmony_ci        },
300b8a72a62Sopenharmony_ci        "singleton": {
301b8a72a62Sopenharmony_ci          "description": "Describes whether the application is singleton mode. This attribute takes effect only when the system application or privilege application is used.@deprecated",
302b8a72a62Sopenharmony_ci          "type": "boolean",
303b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
304b8a72a62Sopenharmony_ci          "default": false
305b8a72a62Sopenharmony_ci        },
306b8a72a62Sopenharmony_ci        "userDataClearable": {
307b8a72a62Sopenharmony_ci          "description": "Describes whether to allow the application to clear user data. This attribute takes effect only when the system application or privilege application is used.@deprecated",
308b8a72a62Sopenharmony_ci          "type": "boolean",
309b8a72a62Sopenharmony_ci          "deprecationMessage": "Deprecated since api 9.",
310b8a72a62Sopenharmony_ci          "default": true
311b8a72a62Sopenharmony_ci        },
312b8a72a62Sopenharmony_ci        "accessible": {
313b8a72a62Sopenharmony_ci          "description": "Describes whether to visit the application install catalogue. This attribute takes effect only when the system application or privilege application is used. And the aplpication must be a stage module",
314b8a72a62Sopenharmony_ci          "type": "boolean",
315b8a72a62Sopenharmony_ci          "default": false
316b8a72a62Sopenharmony_ci        },
317b8a72a62Sopenharmony_ci        "multiProjects": {
318b8a72a62Sopenharmony_ci          "description": "Indicates whether current project supports multiple project.",
319b8a72a62Sopenharmony_ci          "type": "boolean",
320b8a72a62Sopenharmony_ci          "default": false
321b8a72a62Sopenharmony_ci        },
322b8a72a62Sopenharmony_ci        "asanEnabled": {
323b8a72a62Sopenharmony_ci          "description": "Indicates whether to support asan.",
324b8a72a62Sopenharmony_ci          "type": "boolean",
325b8a72a62Sopenharmony_ci          "default": false
326b8a72a62Sopenharmony_ci        },
327b8a72a62Sopenharmony_ci        "default": {
328b8a72a62Sopenharmony_ci          "$ref": "#/definitions/default"
329b8a72a62Sopenharmony_ci        },
330b8a72a62Sopenharmony_ci        "tablet": {
331b8a72a62Sopenharmony_ci          "$ref": "#/definitions/default"
332b8a72a62Sopenharmony_ci        },
333b8a72a62Sopenharmony_ci        "tv": {
334b8a72a62Sopenharmony_ci          "$ref": "#/definitions/default"
335b8a72a62Sopenharmony_ci        },
336b8a72a62Sopenharmony_ci        "wearable": {
337b8a72a62Sopenharmony_ci          "$ref": "#/definitions/default"
338b8a72a62Sopenharmony_ci        },
339b8a72a62Sopenharmony_ci        "car": {
340b8a72a62Sopenharmony_ci          "$ref": "#/definitions/default"
341b8a72a62Sopenharmony_ci        },
342b8a72a62Sopenharmony_ci        "2in1": {
343b8a72a62Sopenharmony_ci          "$ref": "#/definitions/default"
344b8a72a62Sopenharmony_ci        },
345b8a72a62Sopenharmony_ci        "targetBundleName": {
346b8a72a62Sopenharmony_ci          "description": "Indicates the target bundle name of an overlay application. It uniquely identifies the application. The value is a string with 7 to 128 bytes of a reverse domain name, for example, com.huawei.himusic. It is recommended that the first label of this attribute is the top-level domain com, the second label is the vendor or individual name, and the third label is the application name. This label is a string type and cannot be defaulted.",
347b8a72a62Sopenharmony_ci          "type": "string",
348b8a72a62Sopenharmony_ci          "maxLength": 128,
349b8a72a62Sopenharmony_ci          "minLength": 7,
350b8a72a62Sopenharmony_ci          "pattern": "^[a-zA-Z][0-9a-zA-Z_.]+$"
351b8a72a62Sopenharmony_ci        },
352b8a72a62Sopenharmony_ci        "targetPriority": {
353b8a72a62Sopenharmony_ci          "description": "Indicates the priority of the overlay module. 1 to 100, default value is 1.",
354b8a72a62Sopenharmony_ci          "type": "integer",
355b8a72a62Sopenharmony_ci          "minimum": 1,
356b8a72a62Sopenharmony_ci          "maximum": 100
357b8a72a62Sopenharmony_ci        },
358b8a72a62Sopenharmony_ci        "generateBuildHash": {
359b8a72a62Sopenharmony_ci          "description": "Indicates whether the hash value of hap or hsp is filed with in module.json.",
360b8a72a62Sopenharmony_ci          "type": "boolean",
361b8a72a62Sopenharmony_ci          "default": false
362b8a72a62Sopenharmony_ci        },
363b8a72a62Sopenharmony_ci        "GWPAsanEnabled": {
364b8a72a62Sopenharmony_ci          "description": "Indicates whether to support GWP asan.",
365b8a72a62Sopenharmony_ci          "type": "boolean",
366b8a72a62Sopenharmony_ci          "default": false
367b8a72a62Sopenharmony_ci        },
368b8a72a62Sopenharmony_ci        "tsanEnabled": {
369b8a72a62Sopenharmony_ci          "description": "Indicates whether to support tsan.",
370b8a72a62Sopenharmony_ci          "type": "boolean",
371b8a72a62Sopenharmony_ci          "default": false
372b8a72a62Sopenharmony_ci        },
373b8a72a62Sopenharmony_ci        "ubsanEnabled": {
374b8a72a62Sopenharmony_ci          "description": "Indicates whether to support ubsan.",
375b8a72a62Sopenharmony_ci          "type": "boolean",
376b8a72a62Sopenharmony_ci          "default": false
377b8a72a62Sopenharmony_ci        },
378b8a72a62Sopenharmony_ci        "appEnvironments": {
379b8a72a62Sopenharmony_ci          "description": "Indicates the environment value of app.",
380b8a72a62Sopenharmony_ci          "type": "array",
381b8a72a62Sopenharmony_ci          "items": {
382b8a72a62Sopenharmony_ci            "type": "object",
383b8a72a62Sopenharmony_ci            "propertyNames": {
384b8a72a62Sopenharmony_ci              "enum": [
385b8a72a62Sopenharmony_ci                "name",
386b8a72a62Sopenharmony_ci                "value"
387b8a72a62Sopenharmony_ci              ]
388b8a72a62Sopenharmony_ci            },
389b8a72a62Sopenharmony_ci            "properties": {
390b8a72a62Sopenharmony_ci              "name": {
391b8a72a62Sopenharmony_ci                "description": "Indicates the key of a environment element. The value is a string with a maximum of 4096 bytes.",
392b8a72a62Sopenharmony_ci                "type": "string",
393b8a72a62Sopenharmony_ci                "maxLength": 4096
394b8a72a62Sopenharmony_ci              },
395b8a72a62Sopenharmony_ci              "value": {
396b8a72a62Sopenharmony_ci                "description": "Indicates the value of a environment element. The value is a string with a maximum of 4096 bytes.",
397b8a72a62Sopenharmony_ci                "type": "string",
398b8a72a62Sopenharmony_ci                "maxLength": 4096
399b8a72a62Sopenharmony_ci              }
400b8a72a62Sopenharmony_ci            }
401b8a72a62Sopenharmony_ci          }
402b8a72a62Sopenharmony_ci        },
403b8a72a62Sopenharmony_ci        "maxChildProcess": {
404b8a72a62Sopenharmony_ci          "description": "Indicates the max number of child process that can be created. 0 to 512.",
405b8a72a62Sopenharmony_ci          "type": "integer",
406b8a72a62Sopenharmony_ci          "minimum": 0,
407b8a72a62Sopenharmony_ci          "maximum": 512
408b8a72a62Sopenharmony_ci        },
409b8a72a62Sopenharmony_ci        "multiAppMode": {
410b8a72a62Sopenharmony_ci          "description": "Indicates the application multiple open mode.",
411b8a72a62Sopenharmony_ci          "type": "object",
412b8a72a62Sopenharmony_ci          "propertyNames": {
413b8a72a62Sopenharmony_ci            "enum": [
414b8a72a62Sopenharmony_ci              "multiAppModeType",
415b8a72a62Sopenharmony_ci              "maxCount"
416b8a72a62Sopenharmony_ci            ]
417b8a72a62Sopenharmony_ci          },
418b8a72a62Sopenharmony_ci          "required": [
419b8a72a62Sopenharmony_ci            "multiAppModeType",
420b8a72a62Sopenharmony_ci            "maxCount"
421b8a72a62Sopenharmony_ci          ],
422b8a72a62Sopenharmony_ci          "properties": {
423b8a72a62Sopenharmony_ci            "multiAppModeType": {
424b8a72a62Sopenharmony_ci              "description": "Indicates the type of application multiple open mode.",
425b8a72a62Sopenharmony_ci              "type": "string",
426b8a72a62Sopenharmony_ci              "enum": [
427b8a72a62Sopenharmony_ci                "multiInstance",
428b8a72a62Sopenharmony_ci                "appClone"
429b8a72a62Sopenharmony_ci              ]
430b8a72a62Sopenharmony_ci            }
431b8a72a62Sopenharmony_ci          },
432b8a72a62Sopenharmony_ci          "if": {
433b8a72a62Sopenharmony_ci            "properties": {
434b8a72a62Sopenharmony_ci              "multiAppModeType": {
435b8a72a62Sopenharmony_ci                "const": "multiInstance"
436b8a72a62Sopenharmony_ci              }
437b8a72a62Sopenharmony_ci            }
438b8a72a62Sopenharmony_ci          },
439b8a72a62Sopenharmony_ci          "then": {
440b8a72a62Sopenharmony_ci            "properties": {
441b8a72a62Sopenharmony_ci              "maxCount": {
442b8a72a62Sopenharmony_ci                "description": "Indicates the max count of multiple open application.",
443b8a72a62Sopenharmony_ci                "type": "integer",
444b8a72a62Sopenharmony_ci                "minimum": 1,
445b8a72a62Sopenharmony_ci                "maximum": 10
446b8a72a62Sopenharmony_ci              }
447b8a72a62Sopenharmony_ci            }
448b8a72a62Sopenharmony_ci          },
449b8a72a62Sopenharmony_ci          "else": {
450b8a72a62Sopenharmony_ci            "properties": {
451b8a72a62Sopenharmony_ci              "maxCount": {
452b8a72a62Sopenharmony_ci                "description": "Indicates the max count of multiple open application.",
453b8a72a62Sopenharmony_ci                "type": "integer",
454b8a72a62Sopenharmony_ci                "minimum": 1,
455b8a72a62Sopenharmony_ci                "maximum": 5
456b8a72a62Sopenharmony_ci              }
457b8a72a62Sopenharmony_ci            }
458b8a72a62Sopenharmony_ci          }
459b8a72a62Sopenharmony_ci        },
460b8a72a62Sopenharmony_ci        "hwasanEnabled": {
461b8a72a62Sopenharmony_ci          "description": "Indicates whether to support hwasan.",
462b8a72a62Sopenharmony_ci          "type": "boolean",
463b8a72a62Sopenharmony_ci          "default": false
464b8a72a62Sopenharmony_ci         },
465b8a72a62Sopenharmony_ci        "cloudFileSyncEnabled": {
466b8a72a62Sopenharmony_ci          "description": "Indicates whether the application enables cloud file sync.",
467b8a72a62Sopenharmony_ci          "type": "boolean",
468b8a72a62Sopenharmony_ci          "default": false
469b8a72a62Sopenharmony_ci        },
470b8a72a62Sopenharmony_ci        "configuration": {
471b8a72a62Sopenharmony_ci          "description": "Indicates the configuration of the application, in the format of \"$profile:configuration\".This configuration can be left blank by default.",
472b8a72a62Sopenharmony_ci          "type": "string",
473b8a72a62Sopenharmony_ci          "pattern": "^[$]profile:[0-9a-zA-Z_.]+$",
474b8a72a62Sopenharmony_ci          "maxLength": 255
475b8a72a62Sopenharmony_ci        }
476b8a72a62Sopenharmony_ci      }
477b8a72a62Sopenharmony_ci    }
478b8a72a62Sopenharmony_ci  }
479b8a72a62Sopenharmony_ci}
480b8a72a62Sopenharmony_ci
481