@atproto/api 0.20.44 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/client/index.d.ts +9 -0
  3. package/dist/client/index.d.ts.map +1 -1
  4. package/dist/client/index.js +17 -0
  5. package/dist/client/index.js.map +1 -1
  6. package/dist/client/lexicons.d.ts +738 -22
  7. package/dist/client/lexicons.d.ts.map +1 -1
  8. package/dist/client/lexicons.js +399 -11
  9. package/dist/client/lexicons.js.map +1 -1
  10. package/dist/client/types/app/bsky/feed/defs.d.ts +4 -0
  11. package/dist/client/types/app/bsky/feed/defs.d.ts.map +1 -1
  12. package/dist/client/types/app/bsky/feed/defs.js.map +1 -1
  13. package/dist/client/types/app/bsky/feed/getQuotes.d.ts +2 -0
  14. package/dist/client/types/app/bsky/feed/getQuotes.d.ts.map +1 -1
  15. package/dist/client/types/app/bsky/feed/getQuotes.js.map +1 -1
  16. package/dist/client/types/app/bsky/notification/getUnreadCount.d.ts +1 -0
  17. package/dist/client/types/app/bsky/notification/getUnreadCount.d.ts.map +1 -1
  18. package/dist/client/types/app/bsky/notification/getUnreadCount.js.map +1 -1
  19. package/dist/client/types/app/bsky/notification/listNotifications.d.ts +3 -0
  20. package/dist/client/types/app/bsky/notification/listNotifications.d.ts.map +1 -1
  21. package/dist/client/types/app/bsky/notification/listNotifications.js.map +1 -1
  22. package/dist/client/types/tools/ozone/inbox/appealActionedSubject.d.ts +65 -0
  23. package/dist/client/types/tools/ozone/inbox/appealActionedSubject.d.ts.map +1 -0
  24. package/dist/client/types/tools/ozone/inbox/appealActionedSubject.js +65 -0
  25. package/dist/client/types/tools/ozone/inbox/appealActionedSubject.js.map +1 -0
  26. package/dist/client/types/tools/ozone/inbox/defs.d.ts +68 -0
  27. package/dist/client/types/tools/ozone/inbox/defs.d.ts.map +1 -0
  28. package/dist/client/types/tools/ozone/inbox/defs.js +38 -0
  29. package/dist/client/types/tools/ozone/inbox/defs.js.map +1 -0
  30. package/dist/client/types/tools/ozone/queue/createQueue.d.ts +2 -0
  31. package/dist/client/types/tools/ozone/queue/createQueue.d.ts.map +1 -1
  32. package/dist/client/types/tools/ozone/queue/createQueue.js.map +1 -1
  33. package/dist/client/types/tools/ozone/queue/defs.d.ts +2 -0
  34. package/dist/client/types/tools/ozone/queue/defs.d.ts.map +1 -1
  35. package/dist/client/types/tools/ozone/queue/defs.js.map +1 -1
  36. package/dist/client/types/tools/ozone/queue/updateQueue.d.ts +5 -0
  37. package/dist/client/types/tools/ozone/queue/updateQueue.d.ts.map +1 -1
  38. package/dist/client/types/tools/ozone/queue/updateQueue.js +7 -0
  39. package/dist/client/types/tools/ozone/queue/updateQueue.js.map +1 -1
  40. package/dist/client/types/tools/ozone/report/defs.d.ts +49 -9
  41. package/dist/client/types/tools/ozone/report/defs.d.ts.map +1 -1
  42. package/dist/client/types/tools/ozone/report/defs.js.map +1 -1
  43. package/package.json +7 -7
@@ -3354,6 +3354,14 @@ export declare const schemaDict: {
3354
3354
  readonly type: 'ref';
3355
3355
  readonly ref: 'lex:app.bsky.feed.defs#replyRef';
3356
3356
  };
3357
+ readonly opThreadPostIndex: {
3358
+ readonly type: 'integer';
3359
+ readonly description: 'The 1-indexed position of this post within the contiguous OP thread. Only present when this post is part of the OP thread.';
3360
+ };
3361
+ readonly opThreadPostCount: {
3362
+ readonly type: 'integer';
3363
+ readonly description: 'The total number of posts in the contiguous OP thread that this post belongs to. Only present when this post is part of the OP thread.';
3364
+ };
3357
3365
  readonly reason: {
3358
3366
  readonly type: 'union';
3359
3367
  readonly refs: ["lex:app.bsky.feed.defs#reasonRepost", "lex:app.bsky.feed.defs#reasonPin"];
@@ -4425,6 +4433,11 @@ export declare const schemaDict: {
4425
4433
  readonly cursor: {
4426
4434
  readonly type: 'string';
4427
4435
  };
4436
+ readonly sort: {
4437
+ readonly type: 'string';
4438
+ readonly knownValues: ["latest", "top"];
4439
+ readonly description: "Ordering of results. 'latest' (default when unset) is newest first; 'top' orders quotes by their like count.";
4440
+ };
4428
4441
  };
4429
4442
  };
4430
4443
  readonly output: {
@@ -7383,6 +7396,7 @@ export declare const schemaDict: {
7383
7396
  readonly properties: {
7384
7397
  readonly priority: {
7385
7398
  readonly type: 'boolean';
7399
+ readonly description: 'Deprecated: this parameter is ignored.';
7386
7400
  };
7387
7401
  readonly seenAt: {
7388
7402
  readonly type: 'string';
@@ -7474,6 +7488,7 @@ export declare const schemaDict: {
7474
7488
  };
7475
7489
  readonly priority: {
7476
7490
  readonly type: 'boolean';
7491
+ readonly description: 'Deprecated: this parameter is ignored.';
7477
7492
  };
7478
7493
  readonly cursor: {
7479
7494
  readonly type: 'string';
@@ -7481,6 +7496,7 @@ export declare const schemaDict: {
7481
7496
  readonly seenAt: {
7482
7497
  readonly type: 'string';
7483
7498
  readonly format: 'datetime';
7499
+ readonly description: 'Deprecated: this parameter is unsupported and will cause an error.';
7484
7500
  };
7485
7501
  };
7486
7502
  };
@@ -7502,6 +7518,7 @@ export declare const schemaDict: {
7502
7518
  };
7503
7519
  readonly priority: {
7504
7520
  readonly type: 'boolean';
7521
+ readonly description: 'Deprecated: this field is no longer populated.';
7505
7522
  };
7506
7523
  readonly seenAt: {
7507
7524
  readonly type: 'string';
@@ -18994,6 +19011,243 @@ export declare const schemaDict: {
18994
19011
  };
18995
19012
  };
18996
19013
  };
19014
+ readonly ToolsOzoneInboxAppealActionedSubject: {
19015
+ readonly lexicon: 1;
19016
+ readonly id: 'tools.ozone.inbox.appealActionedSubject';
19017
+ readonly defs: {
19018
+ readonly main: {
19019
+ readonly type: 'procedure';
19020
+ readonly description: "Appeal a moderation action affecting the user's account or content.";
19021
+ readonly input: {
19022
+ readonly encoding: 'application/json';
19023
+ readonly schema: {
19024
+ readonly type: 'object';
19025
+ readonly required: ["subject"];
19026
+ readonly properties: {
19027
+ readonly action: {
19028
+ readonly type: 'union';
19029
+ readonly refs: ["lex:tools.ozone.inbox.appealActionedSubject#actionRef", "lex:tools.ozone.inbox.appealActionedSubject#labelRef", "lex:tools.ozone.inbox.appealActionedSubject#takedownRef"];
19030
+ readonly closed: true;
19031
+ readonly description: 'Moderation action being appealed.';
19032
+ };
19033
+ readonly subject: {
19034
+ readonly type: 'union';
19035
+ readonly refs: ["lex:com.atproto.admin.defs#repoRef", "lex:com.atproto.repo.strongRef"];
19036
+ readonly description: 'Subject being appealed.';
19037
+ };
19038
+ readonly reason: {
19039
+ readonly type: 'string';
19040
+ readonly maxGraphemes: 2000;
19041
+ readonly maxLength: 20000;
19042
+ readonly description: 'Optional explanation supplied by the user.';
19043
+ };
19044
+ readonly modTool: {
19045
+ readonly type: 'ref';
19046
+ readonly ref: 'lex:com.atproto.moderation.createReport#modTool';
19047
+ };
19048
+ };
19049
+ };
19050
+ };
19051
+ readonly output: {
19052
+ readonly encoding: 'application/json';
19053
+ readonly schema: {
19054
+ readonly type: 'ref';
19055
+ readonly ref: 'lex:tools.ozone.inbox.defs#subjectView';
19056
+ };
19057
+ };
19058
+ readonly errors: [{
19059
+ readonly name: 'InvalidAppealSubject';
19060
+ readonly description: 'Invalid appeal subject input.';
19061
+ }, {
19062
+ readonly name: 'AlreadyAppealed';
19063
+ readonly description: 'An active appeal already exists for this action.';
19064
+ }, {
19065
+ readonly name: 'NotAppealable';
19066
+ readonly description: 'The subject cannot be appealed.';
19067
+ }, {
19068
+ readonly name: 'AppealWindowExpired';
19069
+ readonly description: 'The appeal window for this action has closed.';
19070
+ }];
19071
+ };
19072
+ readonly actionRef: {
19073
+ readonly type: 'object';
19074
+ readonly required: ["id"];
19075
+ readonly properties: {
19076
+ readonly id: {
19077
+ readonly type: 'integer';
19078
+ readonly minimum: 1;
19079
+ readonly description: 'ID of the moderation action being appealed, available via actions in mod inbox.';
19080
+ };
19081
+ };
19082
+ };
19083
+ readonly labelRef: {
19084
+ readonly type: 'object';
19085
+ readonly required: ["val"];
19086
+ readonly properties: {
19087
+ readonly val: {
19088
+ readonly type: 'string';
19089
+ readonly minLength: 1;
19090
+ readonly description: 'Label being appealed.';
19091
+ };
19092
+ };
19093
+ };
19094
+ readonly takedownRef: {
19095
+ readonly type: 'object';
19096
+ readonly properties: {};
19097
+ };
19098
+ };
19099
+ };
19100
+ readonly ToolsOzoneInboxDefs: {
19101
+ readonly lexicon: 1;
19102
+ readonly id: 'tools.ozone.inbox.defs';
19103
+ readonly defs: {
19104
+ readonly subjectView: {
19105
+ readonly type: 'object';
19106
+ readonly description: 'A subject belonging to the viewer that has moderation actions against it.';
19107
+ readonly required: ["src", "subject", "enforcement", "createdAt", "updatedAt"];
19108
+ readonly properties: {
19109
+ readonly src: {
19110
+ readonly type: 'string';
19111
+ readonly format: 'did';
19112
+ readonly description: 'DID of the moderation service that took the actions.';
19113
+ };
19114
+ readonly subject: {
19115
+ readonly type: 'union';
19116
+ readonly refs: ["lex:com.atproto.admin.defs#repoRef", "lex:com.atproto.repo.strongRef"];
19117
+ };
19118
+ readonly enforcement: {
19119
+ readonly type: 'ref';
19120
+ readonly ref: 'lex:tools.ozone.inbox.defs#enforcementView';
19121
+ };
19122
+ readonly appeal: {
19123
+ readonly type: 'ref';
19124
+ readonly ref: 'lex:tools.ozone.inbox.defs#appealView';
19125
+ };
19126
+ readonly availableActions: {
19127
+ readonly type: 'array';
19128
+ readonly items: {
19129
+ readonly type: 'string';
19130
+ readonly knownValues: ["appeal"];
19131
+ };
19132
+ };
19133
+ readonly latestAction: {
19134
+ readonly type: 'ref';
19135
+ readonly ref: 'lex:tools.ozone.inbox.defs#actionView';
19136
+ };
19137
+ readonly actionCount: {
19138
+ readonly type: 'integer';
19139
+ };
19140
+ readonly createdAt: {
19141
+ readonly type: 'string';
19142
+ readonly format: 'datetime';
19143
+ };
19144
+ readonly updatedAt: {
19145
+ readonly type: 'string';
19146
+ readonly format: 'datetime';
19147
+ };
19148
+ };
19149
+ };
19150
+ readonly enforcementView: {
19151
+ readonly type: 'object';
19152
+ readonly description: 'The current enforcement state of a subject.';
19153
+ readonly required: ["state"];
19154
+ readonly properties: {
19155
+ readonly state: {
19156
+ readonly type: 'string';
19157
+ readonly knownValues: ["none", "labeled", "removed", "suspended", "takendown"];
19158
+ };
19159
+ readonly scope: {
19160
+ readonly type: 'string';
19161
+ readonly knownValues: ["network", "app", "labelOnly"];
19162
+ };
19163
+ readonly expiresAt: {
19164
+ readonly type: 'string';
19165
+ readonly format: 'datetime';
19166
+ };
19167
+ readonly labels: {
19168
+ readonly type: 'array';
19169
+ readonly items: {
19170
+ readonly type: 'string';
19171
+ };
19172
+ readonly description: 'Active label values on the subject, excluding negated and expired labels.';
19173
+ };
19174
+ };
19175
+ };
19176
+ readonly appealView: {
19177
+ readonly type: 'object';
19178
+ readonly description: "The state of the viewer's appeal against the actions on a subject.";
19179
+ readonly required: ["state"];
19180
+ readonly properties: {
19181
+ readonly state: {
19182
+ readonly type: 'string';
19183
+ readonly knownValues: ["none", "pending", "resolved", "superseded", "expired"];
19184
+ };
19185
+ readonly appealedAt: {
19186
+ readonly type: 'string';
19187
+ readonly format: 'datetime';
19188
+ };
19189
+ readonly resolvedAt: {
19190
+ readonly type: 'string';
19191
+ readonly format: 'datetime';
19192
+ readonly description: "When the appeal's report was closed.";
19193
+ };
19194
+ readonly note: {
19195
+ readonly type: 'string';
19196
+ readonly description: 'Moderator explanation, from the publicNote on the closing activity. Absent if none was written.';
19197
+ };
19198
+ readonly appealableUntil: {
19199
+ readonly type: 'string';
19200
+ readonly format: 'datetime';
19201
+ };
19202
+ };
19203
+ };
19204
+ readonly actionView: {
19205
+ readonly type: 'object';
19206
+ readonly description: 'A single moderation action taken against a subject.';
19207
+ readonly required: ["id", "type", "createdAt"];
19208
+ readonly properties: {
19209
+ readonly id: {
19210
+ readonly type: 'integer';
19211
+ readonly description: 'Action ID (moderation event ID).';
19212
+ };
19213
+ readonly type: {
19214
+ readonly type: 'string';
19215
+ readonly description: 'Public action type.';
19216
+ };
19217
+ readonly scope: {
19218
+ readonly type: 'string';
19219
+ readonly knownValues: ["network", "app", "labelOnly"];
19220
+ };
19221
+ readonly createdAt: {
19222
+ readonly type: 'string';
19223
+ readonly format: 'datetime';
19224
+ };
19225
+ readonly reversedAt: {
19226
+ readonly type: 'string';
19227
+ readonly format: 'datetime';
19228
+ };
19229
+ readonly expiresAt: {
19230
+ readonly type: 'string';
19231
+ readonly format: 'datetime';
19232
+ };
19233
+ readonly labels: {
19234
+ readonly type: 'array';
19235
+ readonly items: {
19236
+ readonly type: 'string';
19237
+ };
19238
+ readonly description: 'Label values, for labelApplied/labelRemoved.';
19239
+ };
19240
+ readonly policies: {
19241
+ readonly type: 'array';
19242
+ readonly items: {
19243
+ readonly type: 'string';
19244
+ };
19245
+ readonly description: 'Policies that were applied in this action.';
19246
+ };
19247
+ };
19248
+ };
19249
+ };
19250
+ };
18997
19251
  readonly ToolsOzoneModerationCancelScheduledActions: {
18998
19252
  readonly lexicon: 1;
18999
19253
  readonly id: 'tools.ozone.moderation.cancelScheduledActions';
@@ -21604,6 +21858,13 @@ export declare const schemaDict: {
21604
21858
  };
21605
21859
  readonly description: 'Policy keys to recommend when actioning reports in this queue';
21606
21860
  };
21861
+ readonly recommendedLabels: {
21862
+ readonly type: 'array';
21863
+ readonly items: {
21864
+ readonly type: 'string';
21865
+ };
21866
+ readonly description: 'Labels to recommend for this queue and use as fallback appeal routing mappings';
21867
+ };
21607
21868
  };
21608
21869
  };
21609
21870
  };
@@ -21677,6 +21938,13 @@ export declare const schemaDict: {
21677
21938
  };
21678
21939
  readonly description: 'Policy keys recommended when actioning reports in this queue';
21679
21940
  };
21941
+ readonly recommendedLabels: {
21942
+ readonly type: 'array';
21943
+ readonly items: {
21944
+ readonly type: 'string';
21945
+ };
21946
+ readonly description: 'Labels recommended for this queue and used as a fallback when routing label appeals';
21947
+ };
21680
21948
  readonly createdBy: {
21681
21949
  readonly type: 'string';
21682
21950
  readonly format: 'did';
@@ -22058,6 +22326,13 @@ export declare const schemaDict: {
22058
22326
  };
22059
22327
  readonly description: 'Policy keys to recommend when actioning reports in this queue';
22060
22328
  };
22329
+ readonly recommendedLabels: {
22330
+ readonly type: 'array';
22331
+ readonly items: {
22332
+ readonly type: 'string';
22333
+ };
22334
+ readonly description: 'Labels to recommend for this queue and use as fallback appeal routing mappings';
22335
+ };
22061
22336
  };
22062
22337
  };
22063
22338
  };
@@ -22077,6 +22352,9 @@ export declare const schemaDict: {
22077
22352
  readonly errors: [{
22078
22353
  readonly name: 'InvalidRecommendedPolicies';
22079
22354
  readonly description: 'One or more recommended policy keys do not exist in the configured policy list';
22355
+ }, {
22356
+ readonly name: 'ConflictingQueue';
22357
+ readonly description: 'The queue configuration conflicts with an existing queue';
22080
22358
  }];
22081
22359
  };
22082
22360
  };
@@ -22510,7 +22788,7 @@ export declare const schemaDict: {
22510
22788
  readonly items: {
22511
22789
  readonly type: 'integer';
22512
22790
  };
22513
- readonly description: 'Array of moderation event IDs representing actions taken on this report (sorted DESC, most recent first)';
22791
+ readonly description: 'Array of moderation event IDs representing actions taken on this report, in append order (most recently linked event last)';
22514
22792
  };
22515
22793
  readonly actions: {
22516
22794
  readonly type: 'array';
@@ -22678,25 +22956,65 @@ export declare const schemaDict: {
22678
22956
  readonly type: 'integer';
22679
22957
  readonly description: 'Number of reports currently not closed.';
22680
22958
  };
22959
+ readonly closedCount: {
22960
+ readonly type: 'integer';
22961
+ readonly description: 'Number of close transitions.';
22962
+ };
22681
22963
  readonly actionedCount: {
22682
22964
  readonly type: 'integer';
22683
- readonly description: 'Number of reports closed today.';
22965
+ readonly description: 'Number of closures whose last report action is label, tag, or takedown.';
22966
+ };
22967
+ readonly acknowledgedCount: {
22968
+ readonly type: 'integer';
22969
+ readonly description: 'Number of closures whose last report action is not label, tag, or takedown.';
22684
22970
  };
22685
22971
  readonly escalatedCount: {
22686
22972
  readonly type: 'integer';
22687
- readonly description: 'Number of reports escalated today.';
22973
+ readonly description: 'Number of reports escalated.';
22688
22974
  };
22689
22975
  readonly inboundCount: {
22690
22976
  readonly type: 'integer';
22691
- readonly description: 'Reports received today.';
22977
+ readonly description: 'Reports received.';
22978
+ };
22979
+ readonly labelActionCount: {
22980
+ readonly type: 'integer';
22981
+ readonly description: 'Closures whose last report action is a label event.';
22982
+ };
22983
+ readonly tagActionCount: {
22984
+ readonly type: 'integer';
22985
+ readonly description: 'Closures whose last report action is a tag event.';
22986
+ };
22987
+ readonly takedownActionCount: {
22988
+ readonly type: 'integer';
22989
+ readonly description: 'Closures whose last report action is a takedown event.';
22990
+ };
22991
+ readonly ahtDurationSec: {
22992
+ readonly type: 'integer';
22993
+ readonly description: 'Sum of report assignment-to-close seconds.';
22994
+ };
22995
+ readonly ahtSampleCount: {
22996
+ readonly type: 'integer';
22997
+ readonly description: 'Number of assigned closed-report samples in ahtDurationSec.';
22998
+ };
22999
+ readonly resolutionDurationSec: {
23000
+ readonly type: 'integer';
23001
+ readonly description: 'Sum of report creation-to-close seconds.';
23002
+ };
23003
+ readonly resolutionSampleCount: {
23004
+ readonly type: 'integer';
23005
+ readonly description: 'Number of closed-report samples in resolutionDurationSec.';
22692
23006
  };
22693
23007
  readonly actionRate: {
22694
23008
  readonly type: 'integer';
22695
- readonly description: 'Percentage of reports actioned (actionedCount / inboundCount * 100), rounded to nearest integer.';
23009
+ readonly description: 'Percentage of closures actioned (actionedCount / closedCount * 100), rounded to nearest integer.';
22696
23010
  };
22697
23011
  readonly avgHandlingTimeSec: {
22698
23012
  readonly type: 'integer';
22699
- readonly description: 'Average time in seconds from report creation (or moderator assignment) to close.';
23013
+ readonly description: 'Average handling time in seconds from report assignment to close.';
23014
+ };
23015
+ readonly avgResolutionTimeSec: {
23016
+ readonly type: 'integer';
23017
+ readonly description: 'Average resolution time in seconds from report creation to close.';
22700
23018
  };
22701
23019
  readonly lastUpdated: {
22702
23020
  readonly type: 'string';
@@ -22723,9 +23041,17 @@ export declare const schemaDict: {
22723
23041
  readonly type: 'integer';
22724
23042
  readonly description: 'Number of reports not closed at time of computation.';
22725
23043
  };
23044
+ readonly closedCount: {
23045
+ readonly type: 'integer';
23046
+ readonly description: 'Number of close transitions during this day.';
23047
+ };
22726
23048
  readonly actionedCount: {
22727
23049
  readonly type: 'integer';
22728
- readonly description: 'Number of reports closed during this day.';
23050
+ readonly description: 'Number of closures whose last report action is label, tag, or takedown during this day.';
23051
+ };
23052
+ readonly acknowledgedCount: {
23053
+ readonly type: 'integer';
23054
+ readonly description: 'Number of closures whose last report action is not label, tag, or takedown during this day.';
22729
23055
  };
22730
23056
  readonly escalatedCount: {
22731
23057
  readonly type: 'integer';
@@ -22735,13 +23061,45 @@ export declare const schemaDict: {
22735
23061
  readonly type: 'integer';
22736
23062
  readonly description: 'Reports received during this day.';
22737
23063
  };
23064
+ readonly labelActionCount: {
23065
+ readonly type: 'integer';
23066
+ readonly description: 'Closures whose last report action is a label event during this day.';
23067
+ };
23068
+ readonly tagActionCount: {
23069
+ readonly type: 'integer';
23070
+ readonly description: 'Closures whose last report action is a tag event during this day.';
23071
+ };
23072
+ readonly takedownActionCount: {
23073
+ readonly type: 'integer';
23074
+ readonly description: 'Closures whose last report action is a takedown event during this day.';
23075
+ };
23076
+ readonly ahtDurationSec: {
23077
+ readonly type: 'integer';
23078
+ readonly description: "Sum of report assignment-to-close seconds for this day's samples.";
23079
+ };
23080
+ readonly ahtSampleCount: {
23081
+ readonly type: 'integer';
23082
+ readonly description: 'Number of assigned closed-report samples in ahtDurationSec.';
23083
+ };
23084
+ readonly resolutionDurationSec: {
23085
+ readonly type: 'integer';
23086
+ readonly description: "Sum of report creation-to-close seconds for this day's samples.";
23087
+ };
23088
+ readonly resolutionSampleCount: {
23089
+ readonly type: 'integer';
23090
+ readonly description: 'Number of closed-report samples in resolutionDurationSec.';
23091
+ };
22738
23092
  readonly actionRate: {
22739
23093
  readonly type: 'integer';
22740
- readonly description: 'Percentage of reports actioned (actionedCount / inboundCount * 100), rounded to nearest integer.';
23094
+ readonly description: 'Percentage of closures actioned (actionedCount / closedCount * 100), rounded to nearest integer.';
22741
23095
  };
22742
23096
  readonly avgHandlingTimeSec: {
22743
23097
  readonly type: 'integer';
22744
- readonly description: 'Average time in seconds from report creation (or moderator assignment) to close.';
23098
+ readonly description: 'Average handling time in seconds from report assignment to close.';
23099
+ };
23100
+ readonly avgResolutionTimeSec: {
23101
+ readonly type: 'integer';
23102
+ readonly description: 'Average resolution time in seconds from report creation to close.';
22745
23103
  };
22746
23104
  };
22747
23105
  };
@@ -22953,7 +23311,7 @@ export declare const schemaDict: {
22953
23311
  readonly defs: {
22954
23312
  readonly main: {
22955
23313
  readonly type: 'query';
22956
- readonly description: 'Get live report statistics from the past 24 hours. Filter by queue, moderator, or report type. Omit all parameters for aggregate stats.';
23314
+ readonly description: 'Get live report statistics for the current UTC calendar day. Filter by queue, moderator, or report type. Omit all parameters for aggregate stats.';
22957
23315
  readonly parameters: {
22958
23316
  readonly type: 'params';
22959
23317
  readonly properties: {
@@ -23317,7 +23675,7 @@ export declare const schemaDict: {
23317
23675
  readonly defs: {
23318
23676
  readonly main: {
23319
23677
  readonly type: 'procedure';
23320
- readonly description: 'Recompute report statistics for a date range. Useful for backfilling after failures or data corrections.';
23678
+ readonly description: 'Recompute report statistics for a date range.';
23321
23679
  readonly input: {
23322
23680
  readonly encoding: 'application/json';
23323
23681
  readonly schema: {
@@ -28374,6 +28732,14 @@ export declare const schemas: ({
28374
28732
  readonly type: 'ref';
28375
28733
  readonly ref: 'lex:app.bsky.feed.defs#replyRef';
28376
28734
  };
28735
+ readonly opThreadPostIndex: {
28736
+ readonly type: 'integer';
28737
+ readonly description: 'The 1-indexed position of this post within the contiguous OP thread. Only present when this post is part of the OP thread.';
28738
+ };
28739
+ readonly opThreadPostCount: {
28740
+ readonly type: 'integer';
28741
+ readonly description: 'The total number of posts in the contiguous OP thread that this post belongs to. Only present when this post is part of the OP thread.';
28742
+ };
28377
28743
  readonly reason: {
28378
28744
  readonly type: 'union';
28379
28745
  readonly refs: ["lex:app.bsky.feed.defs#reasonRepost", "lex:app.bsky.feed.defs#reasonPin"];
@@ -29431,6 +29797,11 @@ export declare const schemas: ({
29431
29797
  readonly cursor: {
29432
29798
  readonly type: 'string';
29433
29799
  };
29800
+ readonly sort: {
29801
+ readonly type: 'string';
29802
+ readonly knownValues: ["latest", "top"];
29803
+ readonly description: "Ordering of results. 'latest' (default when unset) is newest first; 'top' orders quotes by their like count.";
29804
+ };
29434
29805
  };
29435
29806
  };
29436
29807
  readonly output: {
@@ -32338,6 +32709,7 @@ export declare const schemas: ({
32338
32709
  readonly properties: {
32339
32710
  readonly priority: {
32340
32711
  readonly type: 'boolean';
32712
+ readonly description: 'Deprecated: this parameter is ignored.';
32341
32713
  };
32342
32714
  readonly seenAt: {
32343
32715
  readonly type: 'string';
@@ -32427,6 +32799,7 @@ export declare const schemas: ({
32427
32799
  };
32428
32800
  readonly priority: {
32429
32801
  readonly type: 'boolean';
32802
+ readonly description: 'Deprecated: this parameter is ignored.';
32430
32803
  };
32431
32804
  readonly cursor: {
32432
32805
  readonly type: 'string';
@@ -32434,6 +32807,7 @@ export declare const schemas: ({
32434
32807
  readonly seenAt: {
32435
32808
  readonly type: 'string';
32436
32809
  readonly format: 'datetime';
32810
+ readonly description: 'Deprecated: this parameter is unsupported and will cause an error.';
32437
32811
  };
32438
32812
  };
32439
32813
  };
@@ -32455,6 +32829,7 @@ export declare const schemas: ({
32455
32829
  };
32456
32830
  readonly priority: {
32457
32831
  readonly type: 'boolean';
32832
+ readonly description: 'Deprecated: this field is no longer populated.';
32458
32833
  };
32459
32834
  readonly seenAt: {
32460
32835
  readonly type: 'string';
@@ -43740,6 +44115,241 @@ export declare const schemas: ({
43740
44115
  };
43741
44116
  };
43742
44117
  };
44118
+ } | {
44119
+ readonly lexicon: 1;
44120
+ readonly id: 'tools.ozone.inbox.appealActionedSubject';
44121
+ readonly defs: {
44122
+ readonly main: {
44123
+ readonly type: 'procedure';
44124
+ readonly description: "Appeal a moderation action affecting the user's account or content.";
44125
+ readonly input: {
44126
+ readonly encoding: 'application/json';
44127
+ readonly schema: {
44128
+ readonly type: 'object';
44129
+ readonly required: ["subject"];
44130
+ readonly properties: {
44131
+ readonly action: {
44132
+ readonly type: 'union';
44133
+ readonly refs: ["lex:tools.ozone.inbox.appealActionedSubject#actionRef", "lex:tools.ozone.inbox.appealActionedSubject#labelRef", "lex:tools.ozone.inbox.appealActionedSubject#takedownRef"];
44134
+ readonly closed: true;
44135
+ readonly description: 'Moderation action being appealed.';
44136
+ };
44137
+ readonly subject: {
44138
+ readonly type: 'union';
44139
+ readonly refs: ["lex:com.atproto.admin.defs#repoRef", "lex:com.atproto.repo.strongRef"];
44140
+ readonly description: 'Subject being appealed.';
44141
+ };
44142
+ readonly reason: {
44143
+ readonly type: 'string';
44144
+ readonly maxGraphemes: 2000;
44145
+ readonly maxLength: 20000;
44146
+ readonly description: 'Optional explanation supplied by the user.';
44147
+ };
44148
+ readonly modTool: {
44149
+ readonly type: 'ref';
44150
+ readonly ref: 'lex:com.atproto.moderation.createReport#modTool';
44151
+ };
44152
+ };
44153
+ };
44154
+ };
44155
+ readonly output: {
44156
+ readonly encoding: 'application/json';
44157
+ readonly schema: {
44158
+ readonly type: 'ref';
44159
+ readonly ref: 'lex:tools.ozone.inbox.defs#subjectView';
44160
+ };
44161
+ };
44162
+ readonly errors: [{
44163
+ readonly name: 'InvalidAppealSubject';
44164
+ readonly description: 'Invalid appeal subject input.';
44165
+ }, {
44166
+ readonly name: 'AlreadyAppealed';
44167
+ readonly description: 'An active appeal already exists for this action.';
44168
+ }, {
44169
+ readonly name: 'NotAppealable';
44170
+ readonly description: 'The subject cannot be appealed.';
44171
+ }, {
44172
+ readonly name: 'AppealWindowExpired';
44173
+ readonly description: 'The appeal window for this action has closed.';
44174
+ }];
44175
+ };
44176
+ readonly actionRef: {
44177
+ readonly type: 'object';
44178
+ readonly required: ["id"];
44179
+ readonly properties: {
44180
+ readonly id: {
44181
+ readonly type: 'integer';
44182
+ readonly minimum: 1;
44183
+ readonly description: 'ID of the moderation action being appealed, available via actions in mod inbox.';
44184
+ };
44185
+ };
44186
+ };
44187
+ readonly labelRef: {
44188
+ readonly type: 'object';
44189
+ readonly required: ["val"];
44190
+ readonly properties: {
44191
+ readonly val: {
44192
+ readonly type: 'string';
44193
+ readonly minLength: 1;
44194
+ readonly description: 'Label being appealed.';
44195
+ };
44196
+ };
44197
+ };
44198
+ readonly takedownRef: {
44199
+ readonly type: 'object';
44200
+ readonly properties: {};
44201
+ };
44202
+ };
44203
+ } | {
44204
+ readonly lexicon: 1;
44205
+ readonly id: 'tools.ozone.inbox.defs';
44206
+ readonly defs: {
44207
+ readonly subjectView: {
44208
+ readonly type: 'object';
44209
+ readonly description: 'A subject belonging to the viewer that has moderation actions against it.';
44210
+ readonly required: ["src", "subject", "enforcement", "createdAt", "updatedAt"];
44211
+ readonly properties: {
44212
+ readonly src: {
44213
+ readonly type: 'string';
44214
+ readonly format: 'did';
44215
+ readonly description: 'DID of the moderation service that took the actions.';
44216
+ };
44217
+ readonly subject: {
44218
+ readonly type: 'union';
44219
+ readonly refs: ["lex:com.atproto.admin.defs#repoRef", "lex:com.atproto.repo.strongRef"];
44220
+ };
44221
+ readonly enforcement: {
44222
+ readonly type: 'ref';
44223
+ readonly ref: 'lex:tools.ozone.inbox.defs#enforcementView';
44224
+ };
44225
+ readonly appeal: {
44226
+ readonly type: 'ref';
44227
+ readonly ref: 'lex:tools.ozone.inbox.defs#appealView';
44228
+ };
44229
+ readonly availableActions: {
44230
+ readonly type: 'array';
44231
+ readonly items: {
44232
+ readonly type: 'string';
44233
+ readonly knownValues: ["appeal"];
44234
+ };
44235
+ };
44236
+ readonly latestAction: {
44237
+ readonly type: 'ref';
44238
+ readonly ref: 'lex:tools.ozone.inbox.defs#actionView';
44239
+ };
44240
+ readonly actionCount: {
44241
+ readonly type: 'integer';
44242
+ };
44243
+ readonly createdAt: {
44244
+ readonly type: 'string';
44245
+ readonly format: 'datetime';
44246
+ };
44247
+ readonly updatedAt: {
44248
+ readonly type: 'string';
44249
+ readonly format: 'datetime';
44250
+ };
44251
+ };
44252
+ };
44253
+ readonly enforcementView: {
44254
+ readonly type: 'object';
44255
+ readonly description: 'The current enforcement state of a subject.';
44256
+ readonly required: ["state"];
44257
+ readonly properties: {
44258
+ readonly state: {
44259
+ readonly type: 'string';
44260
+ readonly knownValues: ["none", "labeled", "removed", "suspended", "takendown"];
44261
+ };
44262
+ readonly scope: {
44263
+ readonly type: 'string';
44264
+ readonly knownValues: ["network", "app", "labelOnly"];
44265
+ };
44266
+ readonly expiresAt: {
44267
+ readonly type: 'string';
44268
+ readonly format: 'datetime';
44269
+ };
44270
+ readonly labels: {
44271
+ readonly type: 'array';
44272
+ readonly items: {
44273
+ readonly type: 'string';
44274
+ };
44275
+ readonly description: 'Active label values on the subject, excluding negated and expired labels.';
44276
+ };
44277
+ };
44278
+ };
44279
+ readonly appealView: {
44280
+ readonly type: 'object';
44281
+ readonly description: "The state of the viewer's appeal against the actions on a subject.";
44282
+ readonly required: ["state"];
44283
+ readonly properties: {
44284
+ readonly state: {
44285
+ readonly type: 'string';
44286
+ readonly knownValues: ["none", "pending", "resolved", "superseded", "expired"];
44287
+ };
44288
+ readonly appealedAt: {
44289
+ readonly type: 'string';
44290
+ readonly format: 'datetime';
44291
+ };
44292
+ readonly resolvedAt: {
44293
+ readonly type: 'string';
44294
+ readonly format: 'datetime';
44295
+ readonly description: "When the appeal's report was closed.";
44296
+ };
44297
+ readonly note: {
44298
+ readonly type: 'string';
44299
+ readonly description: 'Moderator explanation, from the publicNote on the closing activity. Absent if none was written.';
44300
+ };
44301
+ readonly appealableUntil: {
44302
+ readonly type: 'string';
44303
+ readonly format: 'datetime';
44304
+ };
44305
+ };
44306
+ };
44307
+ readonly actionView: {
44308
+ readonly type: 'object';
44309
+ readonly description: 'A single moderation action taken against a subject.';
44310
+ readonly required: ["id", "type", "createdAt"];
44311
+ readonly properties: {
44312
+ readonly id: {
44313
+ readonly type: 'integer';
44314
+ readonly description: 'Action ID (moderation event ID).';
44315
+ };
44316
+ readonly type: {
44317
+ readonly type: 'string';
44318
+ readonly description: 'Public action type.';
44319
+ };
44320
+ readonly scope: {
44321
+ readonly type: 'string';
44322
+ readonly knownValues: ["network", "app", "labelOnly"];
44323
+ };
44324
+ readonly createdAt: {
44325
+ readonly type: 'string';
44326
+ readonly format: 'datetime';
44327
+ };
44328
+ readonly reversedAt: {
44329
+ readonly type: 'string';
44330
+ readonly format: 'datetime';
44331
+ };
44332
+ readonly expiresAt: {
44333
+ readonly type: 'string';
44334
+ readonly format: 'datetime';
44335
+ };
44336
+ readonly labels: {
44337
+ readonly type: 'array';
44338
+ readonly items: {
44339
+ readonly type: 'string';
44340
+ };
44341
+ readonly description: 'Label values, for labelApplied/labelRemoved.';
44342
+ };
44343
+ readonly policies: {
44344
+ readonly type: 'array';
44345
+ readonly items: {
44346
+ readonly type: 'string';
44347
+ };
44348
+ readonly description: 'Policies that were applied in this action.';
44349
+ };
44350
+ };
44351
+ };
44352
+ };
43743
44353
  } | {
43744
44354
  readonly lexicon: 1;
43745
44355
  readonly id: 'tools.ozone.moderation.cancelScheduledActions';
@@ -46332,6 +46942,13 @@ export declare const schemas: ({
46332
46942
  };
46333
46943
  readonly description: 'Policy keys to recommend when actioning reports in this queue';
46334
46944
  };
46945
+ readonly recommendedLabels: {
46946
+ readonly type: 'array';
46947
+ readonly items: {
46948
+ readonly type: 'string';
46949
+ };
46950
+ readonly description: 'Labels to recommend for this queue and use as fallback appeal routing mappings';
46951
+ };
46335
46952
  };
46336
46953
  };
46337
46954
  };
@@ -46404,6 +47021,13 @@ export declare const schemas: ({
46404
47021
  };
46405
47022
  readonly description: 'Policy keys recommended when actioning reports in this queue';
46406
47023
  };
47024
+ readonly recommendedLabels: {
47025
+ readonly type: 'array';
47026
+ readonly items: {
47027
+ readonly type: 'string';
47028
+ };
47029
+ readonly description: 'Labels recommended for this queue and used as a fallback when routing label appeals';
47030
+ };
46407
47031
  readonly createdBy: {
46408
47032
  readonly type: 'string';
46409
47033
  readonly format: 'did';
@@ -46779,6 +47403,13 @@ export declare const schemas: ({
46779
47403
  };
46780
47404
  readonly description: 'Policy keys to recommend when actioning reports in this queue';
46781
47405
  };
47406
+ readonly recommendedLabels: {
47407
+ readonly type: 'array';
47408
+ readonly items: {
47409
+ readonly type: 'string';
47410
+ };
47411
+ readonly description: 'Labels to recommend for this queue and use as fallback appeal routing mappings';
47412
+ };
46782
47413
  };
46783
47414
  };
46784
47415
  };
@@ -46798,6 +47429,9 @@ export declare const schemas: ({
46798
47429
  readonly errors: [{
46799
47430
  readonly name: 'InvalidRecommendedPolicies';
46800
47431
  readonly description: 'One or more recommended policy keys do not exist in the configured policy list';
47432
+ }, {
47433
+ readonly name: 'ConflictingQueue';
47434
+ readonly description: 'The queue configuration conflicts with an existing queue';
46801
47435
  }];
46802
47436
  };
46803
47437
  };
@@ -47227,7 +47861,7 @@ export declare const schemas: ({
47227
47861
  readonly items: {
47228
47862
  readonly type: 'integer';
47229
47863
  };
47230
- readonly description: 'Array of moderation event IDs representing actions taken on this report (sorted DESC, most recent first)';
47864
+ readonly description: 'Array of moderation event IDs representing actions taken on this report, in append order (most recently linked event last)';
47231
47865
  };
47232
47866
  readonly actions: {
47233
47867
  readonly type: 'array';
@@ -47395,25 +48029,65 @@ export declare const schemas: ({
47395
48029
  readonly type: 'integer';
47396
48030
  readonly description: 'Number of reports currently not closed.';
47397
48031
  };
48032
+ readonly closedCount: {
48033
+ readonly type: 'integer';
48034
+ readonly description: 'Number of close transitions.';
48035
+ };
47398
48036
  readonly actionedCount: {
47399
48037
  readonly type: 'integer';
47400
- readonly description: 'Number of reports closed today.';
48038
+ readonly description: 'Number of closures whose last report action is label, tag, or takedown.';
48039
+ };
48040
+ readonly acknowledgedCount: {
48041
+ readonly type: 'integer';
48042
+ readonly description: 'Number of closures whose last report action is not label, tag, or takedown.';
47401
48043
  };
47402
48044
  readonly escalatedCount: {
47403
48045
  readonly type: 'integer';
47404
- readonly description: 'Number of reports escalated today.';
48046
+ readonly description: 'Number of reports escalated.';
47405
48047
  };
47406
48048
  readonly inboundCount: {
47407
48049
  readonly type: 'integer';
47408
- readonly description: 'Reports received today.';
48050
+ readonly description: 'Reports received.';
48051
+ };
48052
+ readonly labelActionCount: {
48053
+ readonly type: 'integer';
48054
+ readonly description: 'Closures whose last report action is a label event.';
48055
+ };
48056
+ readonly tagActionCount: {
48057
+ readonly type: 'integer';
48058
+ readonly description: 'Closures whose last report action is a tag event.';
48059
+ };
48060
+ readonly takedownActionCount: {
48061
+ readonly type: 'integer';
48062
+ readonly description: 'Closures whose last report action is a takedown event.';
48063
+ };
48064
+ readonly ahtDurationSec: {
48065
+ readonly type: 'integer';
48066
+ readonly description: 'Sum of report assignment-to-close seconds.';
48067
+ };
48068
+ readonly ahtSampleCount: {
48069
+ readonly type: 'integer';
48070
+ readonly description: 'Number of assigned closed-report samples in ahtDurationSec.';
48071
+ };
48072
+ readonly resolutionDurationSec: {
48073
+ readonly type: 'integer';
48074
+ readonly description: 'Sum of report creation-to-close seconds.';
48075
+ };
48076
+ readonly resolutionSampleCount: {
48077
+ readonly type: 'integer';
48078
+ readonly description: 'Number of closed-report samples in resolutionDurationSec.';
47409
48079
  };
47410
48080
  readonly actionRate: {
47411
48081
  readonly type: 'integer';
47412
- readonly description: 'Percentage of reports actioned (actionedCount / inboundCount * 100), rounded to nearest integer.';
48082
+ readonly description: 'Percentage of closures actioned (actionedCount / closedCount * 100), rounded to nearest integer.';
47413
48083
  };
47414
48084
  readonly avgHandlingTimeSec: {
47415
48085
  readonly type: 'integer';
47416
- readonly description: 'Average time in seconds from report creation (or moderator assignment) to close.';
48086
+ readonly description: 'Average handling time in seconds from report assignment to close.';
48087
+ };
48088
+ readonly avgResolutionTimeSec: {
48089
+ readonly type: 'integer';
48090
+ readonly description: 'Average resolution time in seconds from report creation to close.';
47417
48091
  };
47418
48092
  readonly lastUpdated: {
47419
48093
  readonly type: 'string';
@@ -47440,9 +48114,17 @@ export declare const schemas: ({
47440
48114
  readonly type: 'integer';
47441
48115
  readonly description: 'Number of reports not closed at time of computation.';
47442
48116
  };
48117
+ readonly closedCount: {
48118
+ readonly type: 'integer';
48119
+ readonly description: 'Number of close transitions during this day.';
48120
+ };
47443
48121
  readonly actionedCount: {
47444
48122
  readonly type: 'integer';
47445
- readonly description: 'Number of reports closed during this day.';
48123
+ readonly description: 'Number of closures whose last report action is label, tag, or takedown during this day.';
48124
+ };
48125
+ readonly acknowledgedCount: {
48126
+ readonly type: 'integer';
48127
+ readonly description: 'Number of closures whose last report action is not label, tag, or takedown during this day.';
47446
48128
  };
47447
48129
  readonly escalatedCount: {
47448
48130
  readonly type: 'integer';
@@ -47452,13 +48134,45 @@ export declare const schemas: ({
47452
48134
  readonly type: 'integer';
47453
48135
  readonly description: 'Reports received during this day.';
47454
48136
  };
48137
+ readonly labelActionCount: {
48138
+ readonly type: 'integer';
48139
+ readonly description: 'Closures whose last report action is a label event during this day.';
48140
+ };
48141
+ readonly tagActionCount: {
48142
+ readonly type: 'integer';
48143
+ readonly description: 'Closures whose last report action is a tag event during this day.';
48144
+ };
48145
+ readonly takedownActionCount: {
48146
+ readonly type: 'integer';
48147
+ readonly description: 'Closures whose last report action is a takedown event during this day.';
48148
+ };
48149
+ readonly ahtDurationSec: {
48150
+ readonly type: 'integer';
48151
+ readonly description: "Sum of report assignment-to-close seconds for this day's samples.";
48152
+ };
48153
+ readonly ahtSampleCount: {
48154
+ readonly type: 'integer';
48155
+ readonly description: 'Number of assigned closed-report samples in ahtDurationSec.';
48156
+ };
48157
+ readonly resolutionDurationSec: {
48158
+ readonly type: 'integer';
48159
+ readonly description: "Sum of report creation-to-close seconds for this day's samples.";
48160
+ };
48161
+ readonly resolutionSampleCount: {
48162
+ readonly type: 'integer';
48163
+ readonly description: 'Number of closed-report samples in resolutionDurationSec.';
48164
+ };
47455
48165
  readonly actionRate: {
47456
48166
  readonly type: 'integer';
47457
- readonly description: 'Percentage of reports actioned (actionedCount / inboundCount * 100), rounded to nearest integer.';
48167
+ readonly description: 'Percentage of closures actioned (actionedCount / closedCount * 100), rounded to nearest integer.';
47458
48168
  };
47459
48169
  readonly avgHandlingTimeSec: {
47460
48170
  readonly type: 'integer';
47461
- readonly description: 'Average time in seconds from report creation (or moderator assignment) to close.';
48171
+ readonly description: 'Average handling time in seconds from report assignment to close.';
48172
+ };
48173
+ readonly avgResolutionTimeSec: {
48174
+ readonly type: 'integer';
48175
+ readonly description: 'Average resolution time in seconds from report creation to close.';
47462
48176
  };
47463
48177
  };
47464
48178
  };
@@ -47666,7 +48380,7 @@ export declare const schemas: ({
47666
48380
  readonly defs: {
47667
48381
  readonly main: {
47668
48382
  readonly type: 'query';
47669
- readonly description: 'Get live report statistics from the past 24 hours. Filter by queue, moderator, or report type. Omit all parameters for aggregate stats.';
48383
+ readonly description: 'Get live report statistics for the current UTC calendar day. Filter by queue, moderator, or report type. Omit all parameters for aggregate stats.';
47670
48384
  readonly parameters: {
47671
48385
  readonly type: 'params';
47672
48386
  readonly properties: {
@@ -48024,7 +48738,7 @@ export declare const schemas: ({
48024
48738
  readonly defs: {
48025
48739
  readonly main: {
48026
48740
  readonly type: 'procedure';
48027
- readonly description: 'Recompute report statistics for a date range. Useful for backfilling after failures or data corrections.';
48741
+ readonly description: 'Recompute report statistics for a date range.';
48028
48742
  readonly input: {
48029
48743
  readonly encoding: 'application/json';
48030
48744
  readonly schema: {
@@ -50061,6 +50775,8 @@ export declare const ids: {
50061
50775
  readonly ToolsOzoneCommunicationListTemplates: 'tools.ozone.communication.listTemplates';
50062
50776
  readonly ToolsOzoneCommunicationUpdateTemplate: 'tools.ozone.communication.updateTemplate';
50063
50777
  readonly ToolsOzoneHostingGetAccountHistory: 'tools.ozone.hosting.getAccountHistory';
50778
+ readonly ToolsOzoneInboxAppealActionedSubject: 'tools.ozone.inbox.appealActionedSubject';
50779
+ readonly ToolsOzoneInboxDefs: 'tools.ozone.inbox.defs';
50064
50780
  readonly ToolsOzoneModerationCancelScheduledActions: 'tools.ozone.moderation.cancelScheduledActions';
50065
50781
  readonly ToolsOzoneModerationDefs: 'tools.ozone.moderation.defs';
50066
50782
  readonly ToolsOzoneModerationEmitEvent: 'tools.ozone.moderation.emitEvent';