1/* 2 * Copyright (c) 2023 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 */ 15import { Permissions } from '@ohos.abilityAccessCtrl'; 16 17export class AppInfo { 18 public bundleName: string 19 public api: number 20 public tokenId: number 21 public icon: ResourceStr | PixelMap 22 public iconId: number 23 public iconResource: Resource 24 public label: string 25 public labelId: number 26 public labelResource: Resource 27 public permissions: Permissions[] 28 public groupId: number[] 29 public zhTag: string 30 public indexTag: string 31 public language: string 32 33 constructor( 34 bundleName: string, 35 api: number, 36 tokenId: number, 37 icon: ResourceStr | PixelMap, 38 iconId: number, 39 iconResource: Resource, 40 label: string, 41 labelId: number, 42 labelResource: Resource, 43 permissions: Permissions[], 44 groupId: number[], 45 zhTag: string, 46 indexTag: string, 47 language: string 48 ) { 49 this.bundleName = bundleName 50 this.api = api 51 this.tokenId = tokenId 52 this.icon = icon 53 this.iconId = iconId 54 this.iconResource = iconResource 55 this.label = label 56 this.labelId = labelId 57 this.labelResource = labelResource 58 this.permissions = permissions 59 this.groupId = groupId 60 this.zhTag = zhTag 61 this.indexTag = indexTag 62 this.language = language 63 } 64}; 65 66export class PermissionApplications { 67 public permission: Permissions 68 public groupName: string 69 public bundleNames: string[] 70 public icon: ResourceStr 71 72 constructor(permission: Permissions, groupName: string, bundleNames: string[], icon: ResourceStr) { 73 this.permission = permission 74 this.groupName = groupName 75 this.bundleNames = bundleNames 76 this.icon = icon 77 } 78}; 79 80export class GroupPermission { 81 public group: string 82 public permissions: string[] 83 public groupName: ResourceStr 84 public icon: ResourceStr 85 public isShow: boolean 86 87 constructor(group: string, permissions: string[], groupName: ResourceStr, icon: ResourceStr, isShow: boolean) { 88 this.group = group 89 this.permissions = permissions 90 this.groupName = groupName 91 this.icon = icon 92 this.isShow = isShow 93 } 94}; 95 96export class ApplicationObj { 97 public label: string 98 public icon: ResourceStr | PixelMap 99 public index: number 100 public accessTokenId: number 101 public permission: Permissions 102 public zhTag: string 103 public indexTag: string 104 public language: string 105 public bundleName?: string 106 107 constructor( 108 label: string, 109 icon: ResourceStr | PixelMap, 110 index: number, 111 accessTokenId: number, 112 permission: Permissions, 113 zhTag: string, 114 indexTag: string, 115 language: string, 116 bundleName?: string 117 ) { 118 this.label = label 119 this.icon = icon 120 this.index = index 121 this.accessTokenId = accessTokenId 122 this.permission = permission 123 this.zhTag = zhTag 124 this.indexTag = indexTag 125 this.language = language 126 this.bundleName = bundleName 127 } 128} 129 130export class CalendarObj { 131 public permissionName: string 132 public groupName: string 133 public label: ResourceStr 134 public index: number 135 136 constructor(permissionName: string, groupName: string, label: ResourceStr, index: number) { 137 this.permissionName = permissionName 138 this.groupName = groupName 139 this.label = label 140 this.index = index 141 } 142} 143 144export class MediaDocObj { 145 public name: Resource 146 public permissions: Array<Permissions> 147 public index: number 148 149 constructor(name: Resource, permissions: Array<Permissions>, index: number) { 150 this.name = name 151 this.permissions = permissions 152 this.index = index 153 } 154} 155 156export class PermissionObj { 157 public groupName: ResourceStr; 158 public permission: string[]; 159 public group: string; 160 161 constructor(groupName: ResourceStr, permission: string[], group: string) { 162 this.groupName = groupName; 163 this.permission = permission; 164 this.group = group 165 } 166} 167 168export class StringObj { 169 public morning: string 170 public afternoon: string 171 constructor(morning: string, afternoon: string) { 172 this.morning = morning 173 this.afternoon = afternoon 174 } 175} 176 177export class AppInfoSimple { 178 public bundleName: string 179 public api: number 180 public tokenId: number 181 public icon: ResourceStr | PixelMap 182 public label: ResourceStr 183 public permissions: Array<string> 184 public groupId: Array<number> 185 186 constructor( 187 bundleName: string, 188 api: number, 189 tokenId: number, 190 icon: ResourceStr | PixelMap, 191 label: ResourceStr, 192 permissions: Array<string>, 193 groupId: Array<number> 194 ) { 195 this.bundleName = bundleName 196 this.api = api 197 this.tokenId = tokenId 198 this.icon = icon 199 this.label = label 200 this.permissions = permissions 201 this.groupId = groupId 202 } 203} 204 205export class Param { 206 public icon: Resource 207 public label: Resource 208 public description: string 209 210 constructor(icon: Resource, label: Resource, description: string) { 211 this.icon = icon 212 this.label = label 213 this.description = description 214 } 215}; 216 217export class OtherPermission { 218 public permissionLabel: ResourceStr 219 public permission: string 220 221 constructor(permissionLabel: ResourceStr, permission: string) { 222 this.permissionLabel = permissionLabel 223 this.permission = permission 224 } 225} 226 227export class PermissionInfo { 228 public permissionName: string 229 public groupName: string 230 public label: ResourceStr 231 public groupId: number 232 public enableDescription?: string 233 public forbiddenDescription?: ResourceStr 234 235 constructor( 236 permissionName: string, 237 groupName: string, 238 label: ResourceStr, 239 groupId: number, 240 enableDescription?: string, 241 forbiddenDescription?: ResourceStr 242 ) { 243 this.permissionName = permissionName; 244 this.groupName = groupName; 245 this.label = label; 246 this.groupId = groupId; 247 this.enableDescription = enableDescription; 248 this.forbiddenDescription = forbiddenDescription; 249 } 250} 251 252export class GroupInfo { 253 public name: string 254 public groupName: ResourceStr 255 public label: string 256 public icon: ResourceStr 257 public description: Array<ResourceStr> 258 public reason: string 259 public permissions: Array<Permissions> 260 public isShow: boolean 261 public enableDescription?: string 262 public forbiddenDescription?: ResourceStr 263 264 constructor( 265 name: string, 266 groupName: ResourceStr, 267 label: string, 268 icon: ResourceStr, 269 description: Array<ResourceStr>, 270 reason: string, 271 permissions: Array<Permissions>, 272 isShow: boolean, 273 enableDescription?: string, 274 forbiddenDescription?: ResourceStr 275 ) { 276 this.name = name; 277 this.groupName = groupName; 278 this.label = label; 279 this.icon = icon; 280 this.description = description; 281 this.reason = reason; 282 this.permissions = permissions; 283 this.isShow = isShow; 284 this.enableDescription = enableDescription; 285 this.forbiddenDescription = forbiddenDescription; 286 } 287} 288 289export class AppRecordInfo { 290 public groupName: ResourceStr 291 public icon: ResourceStr | PixelMap 292 public name: string 293 public api: number 294 public accessTokenId: number 295 public reqUserPermissions: string[] 296 public permissions: AppGroupRecordInfo[] 297 public groupNames: ResourceStr[] 298 public groupIds: number[] 299 public appLastTime: number 300 301 constructor( 302 groupName: ResourceStr, 303 icon: ResourceStr | PixelMap, 304 name: string, api: number, 305 accessTokenId: number, 306 reqUserPermissions: string[], 307 permissions: AppGroupRecordInfo[], 308 groupNames: ResourceStr[], 309 groupIds: number[], 310 appLastTime: number 311 ) { 312 this.groupName = groupName 313 this.icon = icon 314 this.name = name 315 this.api = api 316 this.accessTokenId = accessTokenId 317 this.reqUserPermissions = reqUserPermissions 318 this.permissions = permissions 319 this.groupNames = groupNames 320 this.groupIds = groupIds 321 this.appLastTime = appLastTime 322 } 323} 324 325export class GroupRecordInfo { 326 public name: string 327 public groupName: ResourceStr 328 public label: ResourceStr 329 public icon: ResourceStr 330 public permissions: Array<Permissions> 331 public sum: number 332 public recentVisit: number 333 334 constructor( 335 name: string, 336 groupName: ResourceStr, 337 label: ResourceStr, 338 icon: ResourceStr, 339 permissions: Array<Permissions>, 340 sum: number, 341 recentVisit: number 342 ) { 343 this.name = name; 344 this.groupName = groupName; 345 this.label = label; 346 this.icon = icon; 347 this.permissions = permissions; 348 this.sum = sum; 349 this.recentVisit = recentVisit; 350 } 351} 352 353export class AppGroupRecordInfo { 354 public name: string 355 public groupName: ResourceStr 356 public label: ResourceStr 357 public icon: ResourceStr 358 public count: number 359 public lastTime: number 360 361 constructor( 362 name: string, 363 groupName: ResourceStr, 364 label: ResourceStr, 365 icon: ResourceStr, 366 count: number, 367 lastTime: number 368 ) { 369 this.name = name; 370 this.groupName = groupName; 371 this.label = label; 372 this.icon = icon; 373 this.count = count; 374 this.lastTime = lastTime; 375 } 376} 377 378export class RouterParams1 { 379 public list: PermissionApplications[] 380 public backTitle: ResourceStr 381 public group: string 382 public globalIsOn: boolean 383 384 constructor(list: PermissionApplications[], backTitle: ResourceStr, group: string, globalIsOn: boolean) { 385 this.list = list 386 this.backTitle = backTitle 387 this.group = group 388 this.globalIsOn = globalIsOn 389 } 390} 391 392export class RouterParams2 { 393 public list: PermissionApplications[] 394 public backTitle: ResourceStr 395 public permissionName: string 396 397 constructor(list: PermissionApplications[], backTitle: ResourceStr, permissionName: string) { 398 this.list = list 399 this.backTitle = backTitle 400 this.permissionName = permissionName 401 } 402} 403 404export class RouterParams3 { 405 public bundleName: string 406 public backTitle: ResourceStr 407 public permission: Permissions[] 408 public status: number 409 public tokenId: number 410 411 constructor(bundleName: string, backTitle: ResourceStr, permission: Permissions[], status: number, tokenId: number) { 412 this.bundleName = bundleName 413 this.backTitle = backTitle 414 this.permission = permission 415 this.status = status 416 this.tokenId = tokenId 417 } 418} 419 420export class WantInfo { 421 public parameters: Object[] 422 423 constructor(parameters: Object[]) { 424 this.parameters = parameters 425 } 426} 427 428export class CheckboxInfo { 429 public label: Resource 430 public index: number 431 432 constructor(label: Resource, index: number) { 433 this.label = label 434 this.index = index 435 } 436} 437 438export interface CallerBundleInfo { 439 bundleName: string; 440 uId: number; 441 permissionGroup: string[]; 442 token: number; 443 globSwitch: number; 444}