summaryrefslogtreecommitdiff
path: root/framework-s/api/system-current.txt
blob: b5c379937442c6efe1a92b01f1fe38faf0ed4275 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
// Signature format: 2.0
package android.app.role {

  public interface OnRoleHoldersChangedListener {
    method public void onRoleHoldersChanged(@NonNull String, @NonNull android.os.UserHandle);
  }

  @Deprecated public abstract class RoleControllerService extends android.app.Service {
    ctor @Deprecated public RoleControllerService();
    method @Deprecated @WorkerThread public abstract boolean onAddRoleHolder(@NonNull String, @NonNull String, int);
    method @Deprecated @Nullable public final android.os.IBinder onBind(@Nullable android.content.Intent);
    method @Deprecated @WorkerThread public abstract boolean onClearRoleHolders(@NonNull String, int);
    method @Deprecated @FlaggedApi("android.permission.flags.system_server_role_controller_enabled") @NonNull public java.util.List<java.lang.String> onGetLegacyFallbackDisabledRoles();
    method @Deprecated @WorkerThread public abstract boolean onGrantDefaultRoles();
    method @Deprecated public abstract boolean onIsApplicationQualifiedForRole(@NonNull String, @NonNull String);
    method @Deprecated public boolean onIsApplicationVisibleForRole(@NonNull String, @NonNull String);
    method @Deprecated public abstract boolean onIsRoleVisible(@NonNull String);
    method @Deprecated @WorkerThread public abstract boolean onRemoveRoleHolder(@NonNull String, @NonNull String, int);
    field @Deprecated public static final String SERVICE_INTERFACE = "android.app.role.RoleControllerService";
  }

  public final class RoleManager {
    method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void addOnRoleHoldersChangedListenerAsUser(@NonNull java.util.concurrent.Executor, @NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void addRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
    method @Deprecated @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean addRoleHolderFromController(@NonNull String, @NonNull String);
    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void clearRoleHoldersAsUser(@NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_DEFAULT_APPLICATIONS) public String getDefaultApplication(@NonNull String);
    method @Deprecated @NonNull @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public java.util.List<java.lang.String> getHeldRolesFromController(@NonNull String);
    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHolders(@NonNull String);
    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public java.util.List<java.lang.String> getRoleHoldersAsUser(@NonNull String, @NonNull android.os.UserHandle);
    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void isApplicationVisibleForRole(@NonNull String, @NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public boolean isBypassingRoleQualification();
    method @FlaggedApi("android.permission.flags.system_server_role_controller_enabled") @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public boolean isRoleFallbackEnabled(@NonNull String);
    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void isRoleVisible(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
    method @RequiresPermission(android.Manifest.permission.OBSERVE_ROLE_HOLDERS) public void removeOnRoleHoldersChangedListenerAsUser(@NonNull android.app.role.OnRoleHoldersChangedListener, @NonNull android.os.UserHandle);
    method @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void removeRoleHolderAsUser(@NonNull String, @NonNull String, int, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
    method @Deprecated @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public boolean removeRoleHolderFromController(@NonNull String, @NonNull String);
    method @RequiresPermission(android.Manifest.permission.BYPASS_ROLE_QUALIFICATION) public void setBypassingRoleQualification(boolean);
    method @RequiresPermission(android.Manifest.permission.MANAGE_DEFAULT_APPLICATIONS) public void setDefaultApplication(@NonNull String, @Nullable String, int, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>);
    method @FlaggedApi("android.permission.flags.system_server_role_controller_enabled") @RequiresPermission(android.Manifest.permission.MANAGE_ROLE_HOLDERS) public void setRoleFallbackEnabled(@NonNull String, boolean);
    method @Deprecated @RequiresPermission("com.android.permissioncontroller.permission.MANAGE_ROLES_FROM_CONTROLLER") public void setRoleNamesFromController(@NonNull java.util.List<java.lang.String>);
    field public static final int MANAGE_HOLDERS_FLAG_DONT_KILL_APP = 1; // 0x1
    field public static final String ROLE_DEVICE_POLICY_MANAGEMENT = "android.app.role.DEVICE_POLICY_MANAGEMENT";
    field public static final String ROLE_FINANCED_DEVICE_KIOSK = "android.app.role.FINANCED_DEVICE_KIOSK";
    field public static final String ROLE_SYSTEM_ACTIVITY_RECOGNIZER = "android.app.role.SYSTEM_ACTIVITY_RECOGNIZER";
    field public static final String ROLE_SYSTEM_CALL_STREAMING = "android.app.role.SYSTEM_CALL_STREAMING";
    field public static final String ROLE_SYSTEM_SUPERVISION = "android.app.role.SYSTEM_SUPERVISION";
    field public static final String ROLE_SYSTEM_WELLBEING = "android.app.role.SYSTEM_WELLBEING";
  }

}

package android.safetycenter {

  public final class SafetyCenterData implements android.os.Parcelable {
    ctor public SafetyCenterData(@NonNull android.safetycenter.SafetyCenterStatus, @NonNull java.util.List<android.safetycenter.SafetyCenterIssue>, @NonNull java.util.List<android.safetycenter.SafetyCenterEntryOrGroup>, @NonNull java.util.List<android.safetycenter.SafetyCenterStaticEntryGroup>);
    method public int describeContents();
    method @NonNull public java.util.List<android.safetycenter.SafetyCenterIssue> getDismissedIssues();
    method @NonNull public java.util.List<android.safetycenter.SafetyCenterEntryOrGroup> getEntriesOrGroups();
    method @NonNull public android.os.Bundle getExtras();
    method @NonNull public java.util.List<android.safetycenter.SafetyCenterIssue> getIssues();
    method @NonNull public java.util.List<android.safetycenter.SafetyCenterStaticEntryGroup> getStaticEntryGroups();
    method @NonNull public android.safetycenter.SafetyCenterStatus getStatus();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterData> CREATOR;
  }

  public static final class SafetyCenterData.Builder {
    ctor public SafetyCenterData.Builder(@NonNull android.safetycenter.SafetyCenterStatus);
    ctor public SafetyCenterData.Builder(@NonNull android.safetycenter.SafetyCenterData);
    method @NonNull public android.safetycenter.SafetyCenterData.Builder addDismissedIssue(@NonNull android.safetycenter.SafetyCenterIssue);
    method @NonNull public android.safetycenter.SafetyCenterData.Builder addEntryOrGroup(@NonNull android.safetycenter.SafetyCenterEntryOrGroup);
    method @NonNull public android.safetycenter.SafetyCenterData.Builder addIssue(@NonNull android.safetycenter.SafetyCenterIssue);
    method @NonNull public android.safetycenter.SafetyCenterData.Builder addStaticEntryGroup(@NonNull android.safetycenter.SafetyCenterStaticEntryGroup);
    method @NonNull public android.safetycenter.SafetyCenterData build();
    method @NonNull public android.safetycenter.SafetyCenterData.Builder clearDismissedIssues();
    method @NonNull public android.safetycenter.SafetyCenterData.Builder clearEntriesOrGroups();
    method @NonNull public android.safetycenter.SafetyCenterData.Builder clearExtras();
    method @NonNull public android.safetycenter.SafetyCenterData.Builder clearIssues();
    method @NonNull public android.safetycenter.SafetyCenterData.Builder clearStaticEntryGroups();
    method @NonNull public android.safetycenter.SafetyCenterData.Builder setExtras(@NonNull android.os.Bundle);
  }

  public final class SafetyCenterEntry implements android.os.Parcelable {
    method public int describeContents();
    method @Nullable public android.safetycenter.SafetyCenterEntry.IconAction getIconAction();
    method @NonNull public String getId();
    method @Nullable public android.app.PendingIntent getPendingIntent();
    method public int getSeverityLevel();
    method public int getSeverityUnspecifiedIconType();
    method @Nullable public CharSequence getSummary();
    method @NonNull public CharSequence getTitle();
    method public boolean isEnabled();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntry> CREATOR;
    field public static final int ENTRY_SEVERITY_LEVEL_CRITICAL_WARNING = 3400; // 0xd48
    field public static final int ENTRY_SEVERITY_LEVEL_OK = 3200; // 0xc80
    field public static final int ENTRY_SEVERITY_LEVEL_RECOMMENDATION = 3300; // 0xce4
    field public static final int ENTRY_SEVERITY_LEVEL_UNKNOWN = 3000; // 0xbb8
    field public static final int ENTRY_SEVERITY_LEVEL_UNSPECIFIED = 3100; // 0xc1c
    field public static final int SEVERITY_UNSPECIFIED_ICON_TYPE_NO_ICON = 0; // 0x0
    field public static final int SEVERITY_UNSPECIFIED_ICON_TYPE_NO_RECOMMENDATION = 2; // 0x2
    field public static final int SEVERITY_UNSPECIFIED_ICON_TYPE_PRIVACY = 1; // 0x1
  }

  public static final class SafetyCenterEntry.Builder {
    ctor public SafetyCenterEntry.Builder(@NonNull String, @NonNull CharSequence);
    ctor public SafetyCenterEntry.Builder(@NonNull android.safetycenter.SafetyCenterEntry);
    method @NonNull public android.safetycenter.SafetyCenterEntry build();
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setEnabled(boolean);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setIconAction(@Nullable android.safetycenter.SafetyCenterEntry.IconAction);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setIconAction(int, @NonNull android.app.PendingIntent);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setId(@NonNull String);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setPendingIntent(@Nullable android.app.PendingIntent);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setSeverityLevel(int);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setSeverityUnspecifiedIconType(int);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setSummary(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterEntry.Builder setTitle(@NonNull CharSequence);
  }

  public static final class SafetyCenterEntry.IconAction implements android.os.Parcelable {
    ctor public SafetyCenterEntry.IconAction(int, @NonNull android.app.PendingIntent);
    method public int describeContents();
    method @NonNull public android.app.PendingIntent getPendingIntent();
    method public int getType();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntry.IconAction> CREATOR;
    field public static final int ICON_ACTION_TYPE_GEAR = 30100; // 0x7594
    field public static final int ICON_ACTION_TYPE_INFO = 30200; // 0x75f8
  }

  public final class SafetyCenterEntryGroup implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public java.util.List<android.safetycenter.SafetyCenterEntry> getEntries();
    method @NonNull public String getId();
    method public int getSeverityLevel();
    method public int getSeverityUnspecifiedIconType();
    method @Nullable public CharSequence getSummary();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntryGroup> CREATOR;
  }

  public static final class SafetyCenterEntryGroup.Builder {
    ctor public SafetyCenterEntryGroup.Builder(@NonNull String, @NonNull CharSequence);
    ctor public SafetyCenterEntryGroup.Builder(@NonNull android.safetycenter.SafetyCenterEntryGroup);
    method @NonNull public android.safetycenter.SafetyCenterEntryGroup build();
    method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setEntries(@NonNull java.util.List<android.safetycenter.SafetyCenterEntry>);
    method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setId(@NonNull String);
    method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setSeverityLevel(int);
    method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setSeverityUnspecifiedIconType(int);
    method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setSummary(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterEntryGroup.Builder setTitle(@NonNull CharSequence);
  }

  public final class SafetyCenterEntryOrGroup implements android.os.Parcelable {
    ctor public SafetyCenterEntryOrGroup(@NonNull android.safetycenter.SafetyCenterEntry);
    ctor public SafetyCenterEntryOrGroup(@NonNull android.safetycenter.SafetyCenterEntryGroup);
    method public int describeContents();
    method @Nullable public android.safetycenter.SafetyCenterEntry getEntry();
    method @Nullable public android.safetycenter.SafetyCenterEntryGroup getEntryGroup();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterEntryOrGroup> CREATOR;
  }

  public final class SafetyCenterErrorDetails implements android.os.Parcelable {
    ctor public SafetyCenterErrorDetails(@NonNull CharSequence);
    method public int describeContents();
    method @NonNull public CharSequence getErrorMessage();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterErrorDetails> CREATOR;
  }

  public final class SafetyCenterIssue implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public java.util.List<android.safetycenter.SafetyCenterIssue.Action> getActions();
    method @Nullable public CharSequence getAttributionTitle();
    method @Nullable public String getGroupId();
    method @NonNull public String getId();
    method public int getSeverityLevel();
    method @Nullable public CharSequence getSubtitle();
    method @NonNull public CharSequence getSummary();
    method @NonNull public CharSequence getTitle();
    method public boolean isDismissible();
    method public boolean shouldConfirmDismissal();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterIssue> CREATOR;
    field public static final int ISSUE_SEVERITY_LEVEL_CRITICAL_WARNING = 2300; // 0x8fc
    field public static final int ISSUE_SEVERITY_LEVEL_OK = 2100; // 0x834
    field public static final int ISSUE_SEVERITY_LEVEL_RECOMMENDATION = 2200; // 0x898
  }

  public static final class SafetyCenterIssue.Action implements android.os.Parcelable {
    method public int describeContents();
    method @Nullable public android.safetycenter.SafetyCenterIssue.Action.ConfirmationDialogDetails getConfirmationDialogDetails();
    method @NonNull public String getId();
    method @NonNull public CharSequence getLabel();
    method @NonNull public android.app.PendingIntent getPendingIntent();
    method @Nullable public CharSequence getSuccessMessage();
    method public boolean isInFlight();
    method public boolean willResolve();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterIssue.Action> CREATOR;
  }

  public static final class SafetyCenterIssue.Action.Builder {
    ctor public SafetyCenterIssue.Action.Builder(@NonNull String, @NonNull CharSequence, @NonNull android.app.PendingIntent);
    ctor public SafetyCenterIssue.Action.Builder(@NonNull android.safetycenter.SafetyCenterIssue.Action);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action build();
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setConfirmationDialogDetails(@Nullable android.safetycenter.SafetyCenterIssue.Action.ConfirmationDialogDetails);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setId(@NonNull String);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setIsInFlight(boolean);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setLabel(@NonNull CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setPendingIntent(@NonNull android.app.PendingIntent);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setSuccessMessage(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Action.Builder setWillResolve(boolean);
  }

  public static final class SafetyCenterIssue.Action.ConfirmationDialogDetails implements android.os.Parcelable {
    ctor public SafetyCenterIssue.Action.ConfirmationDialogDetails(@NonNull CharSequence, @NonNull CharSequence, @NonNull CharSequence, @NonNull CharSequence);
    method public int describeContents();
    method @NonNull public CharSequence getAcceptButtonText();
    method @NonNull public CharSequence getDenyButtonText();
    method @NonNull public CharSequence getText();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterIssue.Action.ConfirmationDialogDetails> CREATOR;
  }

  public static final class SafetyCenterIssue.Builder {
    ctor public SafetyCenterIssue.Builder(@NonNull String, @NonNull CharSequence, @NonNull CharSequence);
    ctor public SafetyCenterIssue.Builder(@NonNull android.safetycenter.SafetyCenterIssue);
    method @NonNull public android.safetycenter.SafetyCenterIssue build();
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setActions(@NonNull java.util.List<android.safetycenter.SafetyCenterIssue.Action>);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setAttributionTitle(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setDismissible(boolean);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setGroupId(@Nullable String);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setId(@NonNull String);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setSeverityLevel(int);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setShouldConfirmDismissal(boolean);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setSubtitle(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setSummary(@NonNull CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterIssue.Builder setTitle(@NonNull CharSequence);
  }

  public final class SafetyCenterManager {
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void addOnSafetyCenterDataChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.safetycenter.SafetyCenterManager.OnSafetyCenterDataChangedListener);
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void clearAllSafetySourceDataForTests();
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void clearSafetyCenterConfigForTests();
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void dismissSafetyCenterIssue(@NonNull String);
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void executeSafetyCenterIssueAction(@NonNull String, @NonNull String);
    method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public android.safetycenter.config.SafetyCenterConfig getSafetyCenterConfig();
    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public android.safetycenter.SafetyCenterData getSafetyCenterData();
    method @Nullable @RequiresPermission(android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE) public android.safetycenter.SafetySourceData getSafetySourceData(@NonNull String);
    method @RequiresPermission(anyOf={android.Manifest.permission.READ_SAFETY_CENTER_STATUS, android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE}) public boolean isSafetyCenterEnabled();
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void refreshSafetySources(int);
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void refreshSafetySources(int, @NonNull java.util.List<java.lang.String>);
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void removeOnSafetyCenterDataChangedListener(@NonNull android.safetycenter.SafetyCenterManager.OnSafetyCenterDataChangedListener);
    method @RequiresPermission(android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE) public void reportSafetySourceError(@NonNull String, @NonNull android.safetycenter.SafetySourceErrorDetails);
    method @RequiresPermission(android.Manifest.permission.MANAGE_SAFETY_CENTER) public void setSafetyCenterConfigForTests(@NonNull android.safetycenter.config.SafetyCenterConfig);
    method @RequiresPermission(android.Manifest.permission.SEND_SAFETY_CENTER_UPDATE) public void setSafetySourceData(@NonNull String, @Nullable android.safetycenter.SafetySourceData, @NonNull android.safetycenter.SafetyEvent);
    field public static final String ACTION_REFRESH_SAFETY_SOURCES = "android.safetycenter.action.REFRESH_SAFETY_SOURCES";
    field public static final String ACTION_SAFETY_CENTER_ENABLED_CHANGED = "android.safetycenter.action.SAFETY_CENTER_ENABLED_CHANGED";
    field public static final int EXTRA_REFRESH_REQUEST_TYPE_FETCH_FRESH_DATA = 0; // 0x0
    field public static final int EXTRA_REFRESH_REQUEST_TYPE_GET_DATA = 1; // 0x1
    field public static final String EXTRA_REFRESH_SAFETY_SOURCES_BROADCAST_ID = "android.safetycenter.extra.REFRESH_SAFETY_SOURCES_BROADCAST_ID";
    field public static final String EXTRA_REFRESH_SAFETY_SOURCES_REQUEST_TYPE = "android.safetycenter.extra.REFRESH_SAFETY_SOURCES_REQUEST_TYPE";
    field public static final String EXTRA_REFRESH_SAFETY_SOURCE_IDS = "android.safetycenter.extra.REFRESH_SAFETY_SOURCE_IDS";
    field public static final String EXTRA_SAFETY_SOURCES_GROUP_ID = "android.safetycenter.extra.SAFETY_SOURCES_GROUP_ID";
    field public static final String EXTRA_SAFETY_SOURCE_ID = "android.safetycenter.extra.SAFETY_SOURCE_ID";
    field public static final String EXTRA_SAFETY_SOURCE_ISSUE_ID = "android.safetycenter.extra.SAFETY_SOURCE_ISSUE_ID";
    field public static final String EXTRA_SAFETY_SOURCE_USER_HANDLE = "android.safetycenter.extra.SAFETY_SOURCE_USER_HANDLE";
    field public static final int REFRESH_REASON_DEVICE_LOCALE_CHANGE = 400; // 0x190
    field public static final int REFRESH_REASON_DEVICE_REBOOT = 300; // 0x12c
    field public static final int REFRESH_REASON_OTHER = 600; // 0x258
    field public static final int REFRESH_REASON_PAGE_OPEN = 100; // 0x64
    field public static final int REFRESH_REASON_PERIODIC = 700; // 0x2bc
    field public static final int REFRESH_REASON_RESCAN_BUTTON_CLICK = 200; // 0xc8
    field public static final int REFRESH_REASON_SAFETY_CENTER_ENABLED = 500; // 0x1f4
  }

  public static interface SafetyCenterManager.OnSafetyCenterDataChangedListener {
    method public default void onError(@NonNull android.safetycenter.SafetyCenterErrorDetails);
    method public void onSafetyCenterDataChanged(@NonNull android.safetycenter.SafetyCenterData);
  }

  public final class SafetyCenterStaticEntry implements android.os.Parcelable {
    method public int describeContents();
    method @Nullable public android.app.PendingIntent getPendingIntent();
    method @Nullable public CharSequence getSummary();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterStaticEntry> CREATOR;
  }

  public static final class SafetyCenterStaticEntry.Builder {
    ctor public SafetyCenterStaticEntry.Builder(@NonNull CharSequence);
    ctor public SafetyCenterStaticEntry.Builder(@NonNull android.safetycenter.SafetyCenterStaticEntry);
    method @NonNull public android.safetycenter.SafetyCenterStaticEntry build();
    method @NonNull public android.safetycenter.SafetyCenterStaticEntry.Builder setPendingIntent(@Nullable android.app.PendingIntent);
    method @NonNull public android.safetycenter.SafetyCenterStaticEntry.Builder setSummary(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterStaticEntry.Builder setTitle(@NonNull CharSequence);
  }

  public final class SafetyCenterStaticEntryGroup implements android.os.Parcelable {
    ctor public SafetyCenterStaticEntryGroup(@NonNull CharSequence, @NonNull java.util.List<android.safetycenter.SafetyCenterStaticEntry>);
    method public int describeContents();
    method @NonNull public java.util.List<android.safetycenter.SafetyCenterStaticEntry> getStaticEntries();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterStaticEntryGroup> CREATOR;
  }

  public final class SafetyCenterStatus implements android.os.Parcelable {
    method public int describeContents();
    method public int getRefreshStatus();
    method public int getSeverityLevel();
    method @NonNull public CharSequence getSummary();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyCenterStatus> CREATOR;
    field public static final int OVERALL_SEVERITY_LEVEL_CRITICAL_WARNING = 1300; // 0x514
    field public static final int OVERALL_SEVERITY_LEVEL_OK = 1100; // 0x44c
    field public static final int OVERALL_SEVERITY_LEVEL_RECOMMENDATION = 1200; // 0x4b0
    field public static final int OVERALL_SEVERITY_LEVEL_UNKNOWN = 1000; // 0x3e8
    field public static final int REFRESH_STATUS_DATA_FETCH_IN_PROGRESS = 10100; // 0x2774
    field public static final int REFRESH_STATUS_FULL_RESCAN_IN_PROGRESS = 10200; // 0x27d8
    field public static final int REFRESH_STATUS_NONE = 0; // 0x0
  }

  public static final class SafetyCenterStatus.Builder {
    ctor public SafetyCenterStatus.Builder(@NonNull CharSequence, @NonNull CharSequence);
    ctor public SafetyCenterStatus.Builder(@NonNull android.safetycenter.SafetyCenterStatus);
    method @NonNull public android.safetycenter.SafetyCenterStatus build();
    method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setRefreshStatus(int);
    method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setSeverityLevel(int);
    method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setSummary(@NonNull CharSequence);
    method @NonNull public android.safetycenter.SafetyCenterStatus.Builder setTitle(@NonNull CharSequence);
  }

  public final class SafetyEvent implements android.os.Parcelable {
    method public int describeContents();
    method @Nullable public String getRefreshBroadcastId();
    method @Nullable public String getSafetySourceIssueActionId();
    method @Nullable public String getSafetySourceIssueId();
    method public int getType();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetyEvent> CREATOR;
    field public static final int SAFETY_EVENT_TYPE_DEVICE_LOCALE_CHANGED = 500; // 0x1f4
    field public static final int SAFETY_EVENT_TYPE_DEVICE_REBOOTED = 600; // 0x258
    field public static final int SAFETY_EVENT_TYPE_REFRESH_REQUESTED = 200; // 0xc8
    field public static final int SAFETY_EVENT_TYPE_RESOLVING_ACTION_FAILED = 400; // 0x190
    field public static final int SAFETY_EVENT_TYPE_RESOLVING_ACTION_SUCCEEDED = 300; // 0x12c
    field public static final int SAFETY_EVENT_TYPE_SOURCE_STATE_CHANGED = 100; // 0x64
  }

  public static final class SafetyEvent.Builder {
    ctor public SafetyEvent.Builder(int);
    ctor public SafetyEvent.Builder(@NonNull android.safetycenter.SafetyEvent);
    method @NonNull public android.safetycenter.SafetyEvent build();
    method @NonNull public android.safetycenter.SafetyEvent.Builder setRefreshBroadcastId(@Nullable String);
    method @NonNull public android.safetycenter.SafetyEvent.Builder setSafetySourceIssueActionId(@Nullable String);
    method @NonNull public android.safetycenter.SafetyEvent.Builder setSafetySourceIssueId(@Nullable String);
  }

  public final class SafetySourceData implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public android.os.Bundle getExtras();
    method @NonNull public java.util.List<android.safetycenter.SafetySourceIssue> getIssues();
    method @Nullable public android.safetycenter.SafetySourceStatus getStatus();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceData> CREATOR;
    field public static final int SEVERITY_LEVEL_CRITICAL_WARNING = 400; // 0x190
    field public static final int SEVERITY_LEVEL_INFORMATION = 200; // 0xc8
    field public static final int SEVERITY_LEVEL_RECOMMENDATION = 300; // 0x12c
    field public static final int SEVERITY_LEVEL_UNSPECIFIED = 100; // 0x64
  }

  public static final class SafetySourceData.Builder {
    ctor public SafetySourceData.Builder();
    ctor public SafetySourceData.Builder(@NonNull android.safetycenter.SafetySourceData);
    method @NonNull public android.safetycenter.SafetySourceData.Builder addIssue(@NonNull android.safetycenter.SafetySourceIssue);
    method @NonNull public android.safetycenter.SafetySourceData build();
    method @NonNull public android.safetycenter.SafetySourceData.Builder clearExtras();
    method @NonNull public android.safetycenter.SafetySourceData.Builder clearIssues();
    method @NonNull public android.safetycenter.SafetySourceData.Builder setExtras(@NonNull android.os.Bundle);
    method @NonNull public android.safetycenter.SafetySourceData.Builder setStatus(@Nullable android.safetycenter.SafetySourceStatus);
  }

  public final class SafetySourceErrorDetails implements android.os.Parcelable {
    ctor public SafetySourceErrorDetails(@NonNull android.safetycenter.SafetyEvent);
    method public int describeContents();
    method @NonNull public android.safetycenter.SafetyEvent getSafetyEvent();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceErrorDetails> CREATOR;
  }

  public final class SafetySourceIssue implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public java.util.List<android.safetycenter.SafetySourceIssue.Action> getActions();
    method @Nullable public CharSequence getAttributionTitle();
    method @Nullable public android.safetycenter.SafetySourceIssue.Notification getCustomNotification();
    method @Nullable public String getDeduplicationId();
    method @NonNull public String getId();
    method public int getIssueActionability();
    method public int getIssueCategory();
    method @NonNull public String getIssueTypeId();
    method public int getNotificationBehavior();
    method @Nullable public android.app.PendingIntent getOnDismissPendingIntent();
    method public int getSeverityLevel();
    method @Nullable public CharSequence getSubtitle();
    method @NonNull public CharSequence getSummary();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceIssue> CREATOR;
    field public static final int ISSUE_ACTIONABILITY_AUTOMATIC = 200; // 0xc8
    field public static final int ISSUE_ACTIONABILITY_MANUAL = 0; // 0x0
    field public static final int ISSUE_ACTIONABILITY_TIP = 100; // 0x64
    field public static final int ISSUE_CATEGORY_ACCOUNT = 200; // 0xc8
    field public static final int ISSUE_CATEGORY_DATA = 400; // 0x190
    field public static final int ISSUE_CATEGORY_DEVICE = 100; // 0x64
    field public static final int ISSUE_CATEGORY_GENERAL = 300; // 0x12c
    field public static final int ISSUE_CATEGORY_PASSWORDS = 500; // 0x1f4
    field public static final int ISSUE_CATEGORY_PERSONAL_SAFETY = 600; // 0x258
    field public static final int NOTIFICATION_BEHAVIOR_DELAYED = 200; // 0xc8
    field public static final int NOTIFICATION_BEHAVIOR_IMMEDIATELY = 300; // 0x12c
    field public static final int NOTIFICATION_BEHAVIOR_NEVER = 100; // 0x64
    field public static final int NOTIFICATION_BEHAVIOR_UNSPECIFIED = 0; // 0x0
  }

  public static final class SafetySourceIssue.Action implements android.os.Parcelable {
    method public int describeContents();
    method @Nullable public android.safetycenter.SafetySourceIssue.Action.ConfirmationDialogDetails getConfirmationDialogDetails();
    method @NonNull public String getId();
    method @NonNull public CharSequence getLabel();
    method @NonNull public android.app.PendingIntent getPendingIntent();
    method @Nullable public CharSequence getSuccessMessage();
    method public boolean willResolve();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceIssue.Action> CREATOR;
  }

  public static final class SafetySourceIssue.Action.Builder {
    ctor public SafetySourceIssue.Action.Builder(@NonNull String, @NonNull CharSequence, @NonNull android.app.PendingIntent);
    ctor public SafetySourceIssue.Action.Builder(@NonNull android.safetycenter.SafetySourceIssue.Action);
    method @NonNull public android.safetycenter.SafetySourceIssue.Action build();
    method @NonNull public android.safetycenter.SafetySourceIssue.Action.Builder setConfirmationDialogDetails(@Nullable android.safetycenter.SafetySourceIssue.Action.ConfirmationDialogDetails);
    method @NonNull public android.safetycenter.SafetySourceIssue.Action.Builder setSuccessMessage(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetySourceIssue.Action.Builder setWillResolve(boolean);
  }

  public static final class SafetySourceIssue.Action.ConfirmationDialogDetails implements android.os.Parcelable {
    ctor public SafetySourceIssue.Action.ConfirmationDialogDetails(@NonNull CharSequence, @NonNull CharSequence, @NonNull CharSequence, @NonNull CharSequence);
    method public int describeContents();
    method @NonNull public CharSequence getAcceptButtonText();
    method @NonNull public CharSequence getDenyButtonText();
    method @NonNull public CharSequence getText();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceIssue.Action.ConfirmationDialogDetails> CREATOR;
  }

  public static final class SafetySourceIssue.Builder {
    ctor public SafetySourceIssue.Builder(@NonNull String, @NonNull CharSequence, @NonNull CharSequence, int, @NonNull String);
    ctor public SafetySourceIssue.Builder(@NonNull android.safetycenter.SafetySourceIssue);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder addAction(@NonNull android.safetycenter.SafetySourceIssue.Action);
    method @NonNull public android.safetycenter.SafetySourceIssue build();
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder clearActions();
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setAttributionTitle(@Nullable CharSequence);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setCustomNotification(@Nullable android.safetycenter.SafetySourceIssue.Notification);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setDeduplicationId(@Nullable String);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setIssueActionability(int);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setIssueCategory(int);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setNotificationBehavior(int);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setOnDismissPendingIntent(@Nullable android.app.PendingIntent);
    method @NonNull public android.safetycenter.SafetySourceIssue.Builder setSubtitle(@Nullable CharSequence);
  }

  public static final class SafetySourceIssue.Notification implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public java.util.List<android.safetycenter.SafetySourceIssue.Action> getActions();
    method @NonNull public CharSequence getText();
    method @NonNull public CharSequence getTitle();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceIssue.Notification> CREATOR;
  }

  public static final class SafetySourceIssue.Notification.Builder {
    ctor public SafetySourceIssue.Notification.Builder(@NonNull CharSequence, @NonNull CharSequence);
    ctor public SafetySourceIssue.Notification.Builder(@NonNull android.safetycenter.SafetySourceIssue.Notification);
    method @NonNull public android.safetycenter.SafetySourceIssue.Notification.Builder addAction(@NonNull android.safetycenter.SafetySourceIssue.Action);
    method @NonNull public android.safetycenter.SafetySourceIssue.Notification.Builder addActions(@NonNull java.util.List<android.safetycenter.SafetySourceIssue.Action>);
    method @NonNull public android.safetycenter.SafetySourceIssue.Notification build();
    method @NonNull public android.safetycenter.SafetySourceIssue.Notification.Builder clearActions();
  }

  public final class SafetySourceStatus implements android.os.Parcelable {
    method public int describeContents();
    method @Nullable public android.safetycenter.SafetySourceStatus.IconAction getIconAction();
    method @Nullable public android.app.PendingIntent getPendingIntent();
    method public int getSeverityLevel();
    method @NonNull public CharSequence getSummary();
    method @NonNull public CharSequence getTitle();
    method public boolean isEnabled();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceStatus> CREATOR;
  }

  public static final class SafetySourceStatus.Builder {
    ctor public SafetySourceStatus.Builder(@NonNull CharSequence, @NonNull CharSequence, int);
    ctor public SafetySourceStatus.Builder(@NonNull android.safetycenter.SafetySourceStatus);
    method @NonNull public android.safetycenter.SafetySourceStatus build();
    method @NonNull public android.safetycenter.SafetySourceStatus.Builder setEnabled(boolean);
    method @NonNull public android.safetycenter.SafetySourceStatus.Builder setIconAction(@Nullable android.safetycenter.SafetySourceStatus.IconAction);
    method @NonNull public android.safetycenter.SafetySourceStatus.Builder setPendingIntent(@Nullable android.app.PendingIntent);
  }

  public static final class SafetySourceStatus.IconAction implements android.os.Parcelable {
    ctor public SafetySourceStatus.IconAction(int, @NonNull android.app.PendingIntent);
    method public int describeContents();
    method public int getIconType();
    method @NonNull public android.app.PendingIntent getPendingIntent();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.SafetySourceStatus.IconAction> CREATOR;
    field public static final int ICON_TYPE_GEAR = 100; // 0x64
    field public static final int ICON_TYPE_INFO = 200; // 0xc8
  }

}

package android.safetycenter.config {

  public final class SafetyCenterConfig implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public java.util.List<android.safetycenter.config.SafetySourcesGroup> getSafetySourcesGroups();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.config.SafetyCenterConfig> CREATOR;
  }

  public static final class SafetyCenterConfig.Builder {
    ctor public SafetyCenterConfig.Builder();
    ctor public SafetyCenterConfig.Builder(@NonNull android.safetycenter.config.SafetyCenterConfig);
    method @NonNull public android.safetycenter.config.SafetyCenterConfig.Builder addSafetySourcesGroup(@NonNull android.safetycenter.config.SafetySourcesGroup);
    method @NonNull public android.safetycenter.config.SafetyCenterConfig build();
  }

  public final class SafetySource implements android.os.Parcelable {
    method public boolean areNotificationsAllowed();
    method public int describeContents();
    method @Nullable public String getDeduplicationGroup();
    method @NonNull public String getId();
    method public int getInitialDisplayState();
    method @Nullable public String getIntentAction();
    method public int getMaxSeverityLevel();
    method @Nullable public String getOptionalPackageName();
    method @NonNull public java.util.Set<java.lang.String> getPackageCertificateHashes();
    method @NonNull public String getPackageName();
    method public int getProfile();
    method @StringRes public int getSearchTermsResId();
    method @StringRes public int getSummaryResId();
    method @StringRes public int getTitleForWorkResId();
    method @StringRes public int getTitleResId();
    method public int getType();
    method public boolean isLoggingAllowed();
    method public boolean isRefreshOnPageOpenAllowed();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.config.SafetySource> CREATOR;
    field public static final int INITIAL_DISPLAY_STATE_DISABLED = 1; // 0x1
    field public static final int INITIAL_DISPLAY_STATE_ENABLED = 0; // 0x0
    field public static final int INITIAL_DISPLAY_STATE_HIDDEN = 2; // 0x2
    field public static final int PROFILE_ALL = 2; // 0x2
    field public static final int PROFILE_NONE = 0; // 0x0
    field public static final int PROFILE_PRIMARY = 1; // 0x1
    field public static final int SAFETY_SOURCE_TYPE_DYNAMIC = 2; // 0x2
    field public static final int SAFETY_SOURCE_TYPE_ISSUE_ONLY = 3; // 0x3
    field public static final int SAFETY_SOURCE_TYPE_STATIC = 1; // 0x1
  }

  public static final class SafetySource.Builder {
    ctor public SafetySource.Builder(int);
    ctor public SafetySource.Builder(@NonNull android.safetycenter.config.SafetySource);
    method @NonNull public android.safetycenter.config.SafetySource.Builder addPackageCertificateHash(@NonNull String);
    method @NonNull public android.safetycenter.config.SafetySource build();
    method @NonNull public android.safetycenter.config.SafetySource.Builder setDeduplicationGroup(@Nullable String);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setId(@Nullable String);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setInitialDisplayState(int);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setIntentAction(@Nullable String);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setLoggingAllowed(boolean);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setMaxSeverityLevel(int);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setNotificationsAllowed(boolean);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setPackageName(@Nullable String);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setProfile(int);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setRefreshOnPageOpenAllowed(boolean);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setSearchTermsResId(@StringRes int);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setSummaryResId(@StringRes int);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setTitleForWorkResId(@StringRes int);
    method @NonNull public android.safetycenter.config.SafetySource.Builder setTitleResId(@StringRes int);
  }

  public final class SafetySourcesGroup implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public String getId();
    method @NonNull public java.util.List<android.safetycenter.config.SafetySource> getSafetySources();
    method public int getStatelessIconType();
    method @StringRes public int getSummaryResId();
    method @StringRes public int getTitleResId();
    method public int getType();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.safetycenter.config.SafetySourcesGroup> CREATOR;
    field @Deprecated public static final int SAFETY_SOURCES_GROUP_TYPE_COLLAPSIBLE = 0; // 0x0
    field public static final int SAFETY_SOURCES_GROUP_TYPE_HIDDEN = 2; // 0x2
    field @Deprecated public static final int SAFETY_SOURCES_GROUP_TYPE_RIGID = 1; // 0x1
    field public static final int SAFETY_SOURCES_GROUP_TYPE_STATEFUL = 0; // 0x0
    field public static final int SAFETY_SOURCES_GROUP_TYPE_STATELESS = 1; // 0x1
    field public static final int STATELESS_ICON_TYPE_NONE = 0; // 0x0
    field public static final int STATELESS_ICON_TYPE_PRIVACY = 1; // 0x1
  }

  public static final class SafetySourcesGroup.Builder {
    ctor public SafetySourcesGroup.Builder();
    ctor public SafetySourcesGroup.Builder(@NonNull android.safetycenter.config.SafetySourcesGroup);
    method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder addSafetySource(@NonNull android.safetycenter.config.SafetySource);
    method @NonNull public android.safetycenter.config.SafetySourcesGroup build();
    method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setId(@Nullable String);
    method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setStatelessIconType(int);
    method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setSummaryResId(@StringRes int);
    method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setTitleResId(@StringRes int);
    method @NonNull public android.safetycenter.config.SafetySourcesGroup.Builder setType(int);
  }

}

package android.safetylabel {

  public final class SafetyLabelConstants {
    field public static final String PERMISSION_RATIONALE_ENABLED = "permission_rationale_enabled";
    field public static final String SAFETY_LABEL_CHANGE_NOTIFICATIONS_ENABLED = "safety_label_change_notifications_enabled";
  }

}