@webiny/mcp 6.0.0 → 6.1.0-beta.1

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 (101) hide show
  1. package/agents/claude.d.ts +2 -2
  2. package/agents/claude.js.map +1 -1
  3. package/agents/cline.d.ts +2 -2
  4. package/agents/cline.js.map +1 -1
  5. package/agents/copilot.d.ts +2 -2
  6. package/agents/copilot.js +1 -1
  7. package/agents/copilot.js.map +1 -1
  8. package/agents/cursor.d.ts +2 -2
  9. package/agents/cursor.js.map +1 -1
  10. package/agents/instructions.js +1 -1
  11. package/agents/instructions.js.map +1 -1
  12. package/agents/kiro.d.ts +15 -0
  13. package/agents/kiro.js +33 -0
  14. package/agents/kiro.js.map +1 -0
  15. package/agents/opencode.d.ts +22 -0
  16. package/agents/opencode.js +76 -0
  17. package/agents/opencode.js.map +1 -0
  18. package/agents/shared.d.ts +5 -5
  19. package/agents/shared.js +3 -3
  20. package/agents/shared.js.map +1 -1
  21. package/agents/windsurf.d.ts +2 -2
  22. package/agents/windsurf.js.map +1 -1
  23. package/bin.d.ts +2 -0
  24. package/bin.js +4 -0
  25. package/bin.js.map +1 -0
  26. package/cli/ConfigureMcp.d.ts +7 -14
  27. package/cli/ConfigureMcp.js +24 -52
  28. package/cli/ConfigureMcp.js.map +1 -1
  29. package/cli/McpServer.d.ts +3 -10
  30. package/cli/McpServer.js +83 -109
  31. package/cli/McpServer.js.map +1 -1
  32. package/cli.d.ts +1 -0
  33. package/cli.js +60 -0
  34. package/cli.js.map +1 -0
  35. package/index.d.ts +6 -1
  36. package/index.js +7 -1
  37. package/index.js.map +1 -1
  38. package/package.json +11 -23
  39. package/skills/admin/admin-architect/SKILL.md +389 -0
  40. package/skills/admin/ui-extensions/SKILL.md +268 -0
  41. package/skills/api/api-architect/SKILL.md +189 -0
  42. package/skills/api/custom-field-type/SKILL.md +263 -0
  43. package/skills/api/event-handler-pattern/SKILL.md +131 -0
  44. package/skills/{custom-graphql-api → api/graphql-api}/SKILL.md +3 -3
  45. package/skills/api/use-case-pattern/SKILL.md +102 -0
  46. package/skills/cli-extensions/SKILL.md +45 -47
  47. package/skills/configure-auth0/SKILL.md +4 -4
  48. package/skills/configure-okta/SKILL.md +3 -3
  49. package/skills/content-models/SKILL.md +197 -196
  50. package/skills/dependency-injection/SKILL.md +9 -219
  51. package/skills/full-stack-architect/SKILL.md +195 -0
  52. package/skills/generated/admin/SKILL.md +119 -0
  53. package/skills/generated/admin/aco/SKILL.md +28 -0
  54. package/skills/generated/admin/build-params/SKILL.md +33 -0
  55. package/skills/generated/admin/cms/SKILL.md +342 -0
  56. package/skills/generated/admin/configs/SKILL.md +23 -0
  57. package/skills/generated/admin/env-config/SKILL.md +30 -0
  58. package/skills/generated/admin/form/SKILL.md +88 -0
  59. package/skills/generated/admin/graphql-client/SKILL.md +23 -0
  60. package/skills/generated/admin/lexical/SKILL.md +105 -0
  61. package/skills/generated/admin/local-storage/SKILL.md +42 -0
  62. package/skills/generated/admin/router/SKILL.md +48 -0
  63. package/skills/generated/admin/security/SKILL.md +63 -0
  64. package/skills/generated/admin/tenancy/SKILL.md +64 -0
  65. package/skills/generated/admin/ui/SKILL.md +468 -0
  66. package/skills/generated/admin/website-builder/SKILL.md +318 -0
  67. package/skills/generated/api/SKILL.md +40 -0
  68. package/skills/generated/api/aco/SKILL.md +202 -0
  69. package/skills/generated/api/build-params/SKILL.md +31 -0
  70. package/skills/generated/api/cms/SKILL.md +646 -0
  71. package/skills/generated/api/event-publisher/SKILL.md +31 -0
  72. package/skills/generated/api/file-manager/SKILL.md +189 -0
  73. package/skills/generated/api/graphql/SKILL.md +61 -0
  74. package/skills/generated/api/key-value-store/SKILL.md +31 -0
  75. package/skills/generated/api/logger/SKILL.md +25 -0
  76. package/skills/generated/api/opensearch/SKILL.md +39 -0
  77. package/skills/generated/api/scheduler/SKILL.md +112 -0
  78. package/skills/generated/api/security/SKILL.md +317 -0
  79. package/skills/generated/api/system/SKILL.md +34 -0
  80. package/skills/generated/api/tasks/SKILL.md +31 -0
  81. package/skills/generated/api/tenancy/SKILL.md +124 -0
  82. package/skills/generated/api/tenant-manager/SKILL.md +34 -0
  83. package/skills/generated/api/website-builder/SKILL.md +356 -0
  84. package/skills/generated/cli/SKILL.md +28 -0
  85. package/skills/generated/cli/command/SKILL.md +24 -0
  86. package/skills/generated/extensions/SKILL.md +43 -0
  87. package/skills/generated/infra/SKILL.md +190 -0
  88. package/skills/infrastructure-extensions/SKILL.md +3 -2
  89. package/skills/local-development/SKILL.md +2 -28
  90. package/skills/project-structure/SKILL.md +78 -56
  91. package/skills/webiny-sdk/SKILL.md +77 -76
  92. package/skills/website-builder/SKILL.md +143 -149
  93. package/ui.d.ts +24 -0
  94. package/ui.js +31 -0
  95. package/ui.js.map +1 -0
  96. package/Extension.d.ts +0 -2
  97. package/Extension.js +0 -11
  98. package/Extension.js.map +0 -1
  99. package/skills/admin-ui-extensions/SKILL.md +0 -267
  100. package/skills/api-custom-feature/SKILL.md +0 -195
  101. package/skills/lifecycle-events/SKILL.md +0 -348
@@ -0,0 +1,646 @@
1
+ ---
2
+ name: webiny-api-cms-catalog
3
+ context: webiny-api
4
+ description: >
5
+ API — Headless CMS — 102 abstractions.
6
+ Entry, model, and group event handlers and use cases.
7
+ ---
8
+
9
+ # API — Headless CMS
10
+
11
+ Entry, model, and group event handlers and use cases.
12
+
13
+ ## How to Use
14
+
15
+ 1. Find the abstraction you need below
16
+ 2. Read the source file to get the exact interface and types
17
+ 3. Import: `import { Name } from "<importPath>";`
18
+ 4. See `webiny-use-case-pattern` or `webiny-event-handler-pattern` skills for implementation patterns
19
+
20
+ ## Abstractions
21
+
22
+ ---
23
+ **Name:** `CmsEntry`
24
+ **Kind:** type
25
+ **Import:** `import type { CmsEntry } from "webiny/api/cms/entry"`
26
+ **Source:** `@webiny/api-headless-cms/types/types.ts`
27
+ **Description:** A content entry definition for and from the database.
28
+
29
+ ---
30
+ **Name:** `CmsEntryValues`
31
+ **Kind:** type
32
+ **Import:** `import type { CmsEntryValues } from "webiny/api/cms/entry"`
33
+ **Source:** `@webiny/api-headless-cms/types/types.ts`
34
+ **Description:** A content entry values definition for and from the database.
35
+
36
+ ---
37
+ **Name:** `CmsGroup`
38
+ **Kind:** type
39
+ **Import:** `import type { CmsGroup } from "webiny/api/cms/group"`
40
+ **Source:** `@webiny/api-headless-cms/types/modelGroup.ts`
41
+ **Description:** A representation of content model group in the database.
42
+
43
+ ---
44
+ **Name:** `CmsModel`
45
+ **Kind:** type
46
+ **Import:** `import type { CmsModel } from "webiny/api/cms/model"`
47
+ **Source:** `@webiny/api-headless-cms/types/model.ts`
48
+ **Description:** Base CMS Model. Should not be exported and used outside of this package.
49
+
50
+ ---
51
+ **Name:** `CmsModelField`
52
+ **Kind:** type
53
+ **Import:** `import type { CmsModelField } from "webiny/api/cms/model"`
54
+ **Source:** `@webiny/api-headless-cms/types/modelField.ts`
55
+ **Description:** A definition for content model field. This type exists on the app side as well.
56
+
57
+ ---
58
+ **Name:** `CmsModelGroup`
59
+ **Kind:** type
60
+ **Import:** `import type { CmsModelGroup } from "webiny/api/cms/group"`
61
+ **Source:** `@webiny/api-headless-cms/types/modelGroup.ts`
62
+
63
+ ---
64
+ **Name:** `CmsSortMapper`
65
+ **Import:** `import { CmsSortMapper } from "webiny/api/cms/entry"`
66
+ **Source:** `@webiny/api-headless-cms/features/sortMapper/abstractions.ts`
67
+ **Description:** Map CMS sort parameters to storage queries.
68
+
69
+ ---
70
+ **Name:** `CmsWhereMapper`
71
+ **Import:** `import { CmsWhereMapper } from "webiny/api/cms/entry"`
72
+ **Source:** `@webiny/api-headless-cms/features/whereMapper/abstractions.ts`
73
+ **Description:** Map CMS filter conditions to storage queries.
74
+
75
+ ---
76
+ **Name:** `ContentEntryTraverserProvider`
77
+ **Import:** `import { ContentEntryTraverserProvider } from "webiny/api/cms/entry"`
78
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/ContentEntryTraverser/index.ts`
79
+ **Description:** Traverse the given content entry data using the model's AST.
80
+
81
+ ---
82
+ **Name:** `CreateEntryRevisionFromUseCase`
83
+ **Import:** `import { CreateEntryRevisionFromUseCase } from "webiny/api/cms/entry"`
84
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/CreateEntryRevisionFrom/abstractions.ts`
85
+ **Description:** Create a new entry revision from an existing one.
86
+
87
+ ---
88
+ **Name:** `CreateEntryUseCase`
89
+ **Import:** `import { CreateEntryUseCase } from "webiny/api/cms/entry"`
90
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/CreateEntry/abstractions.ts`
91
+ **Description:** Create a new content entry.
92
+
93
+ ---
94
+ **Name:** `CreateGroupUseCase`
95
+ **Import:** `import { CreateGroupUseCase } from "webiny/api/cms/group"`
96
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/CreateGroup/abstractions.ts`
97
+ **Description:** Create a new content model group.
98
+
99
+ ---
100
+ **Name:** `CreateModelFromUseCase`
101
+ **Import:** `import { CreateModelFromUseCase } from "webiny/api/cms/model"`
102
+ **Source:** `@webiny/api-headless-cms/features/contentModel/CreateModelFrom/abstractions.ts`
103
+ **Description:** Create a content model by cloning an existing one.
104
+
105
+ ---
106
+ **Name:** `CreateModelUseCase`
107
+ **Import:** `import { CreateModelUseCase } from "webiny/api/cms/model"`
108
+ **Source:** `@webiny/api-headless-cms/features/contentModel/CreateModel/abstractions.ts`
109
+ **Description:** Create a new content model.
110
+
111
+ ---
112
+ **Name:** `DataFieldBuilder`
113
+ **Import:** `import { DataFieldBuilder } from "webiny/api/cms/model"`
114
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/fields/FieldBuilder.ts`
115
+ **Description:** DataFieldBuilder class for data fields that produce CmsModelField instances.
116
+ Provides storageId, list, validation, renderer, and other data-field methods.
117
+
118
+ ---
119
+ **Name:** `DeleteEntryRevisionUseCase`
120
+ **Import:** `import { DeleteEntryRevisionUseCase } from "webiny/api/cms/entry"`
121
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteEntryRevision/abstractions.ts`
122
+ **Description:** Delete a specific entry revision.
123
+
124
+ ---
125
+ **Name:** `DeleteEntryUseCase`
126
+ **Import:** `import { DeleteEntryUseCase } from "webiny/api/cms/entry"`
127
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteEntry/abstractions.ts`
128
+ **Description:** Delete a content entry.
129
+
130
+ ---
131
+ **Name:** `DeleteGroupUseCase`
132
+ **Import:** `import { DeleteGroupUseCase } from "webiny/api/cms/group"`
133
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/DeleteGroup/abstractions.ts`
134
+ **Description:** Delete a content model group.
135
+
136
+ ---
137
+ **Name:** `DeleteModelUseCase`
138
+ **Import:** `import { DeleteModelUseCase } from "webiny/api/cms/model"`
139
+ **Source:** `@webiny/api-headless-cms/features/contentModel/DeleteModel/abstractions.ts`
140
+ **Description:** Delete a content model.
141
+
142
+ ---
143
+ **Name:** `DeleteMultipleEntriesUseCase`
144
+ **Import:** `import { DeleteMultipleEntriesUseCase } from "webiny/api/cms/entry"`
145
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteMultipleEntries/abstractions.ts`
146
+ **Description:** Delete multiple content entries in batch.
147
+
148
+ ---
149
+ **Name:** `EntryAfterCreateEventHandler`
150
+ **Import:** `import { EntryAfterCreateEventHandler } from "webiny/api/cms/entry"`
151
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/CreateEntry/events.ts`
152
+ **Description:** Hook into entry lifecycle after an entry is created.
153
+
154
+ ---
155
+ **Name:** `EntryAfterDeleteEventHandler`
156
+ **Import:** `import { EntryAfterDeleteEventHandler } from "webiny/api/cms/entry"`
157
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteEntry/events.ts`
158
+ **Description:** Hook into entry lifecycle after an entry is deleted.
159
+
160
+ ---
161
+ **Name:** `EntryAfterDeleteMultipleEventHandler`
162
+ **Import:** `import { EntryAfterDeleteMultipleEventHandler } from "webiny/api/cms/entry"`
163
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteMultipleEntries/events.ts`
164
+ **Description:** Hook into entry lifecycle after multiple entries are deleted.
165
+
166
+ ---
167
+ **Name:** `EntryAfterMoveEventHandler`
168
+ **Import:** `import { EntryAfterMoveEventHandler } from "webiny/api/cms/entry"`
169
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/MoveEntry/events.ts`
170
+ **Description:** Hook into entry lifecycle after an entry is moved.
171
+
172
+ ---
173
+ **Name:** `EntryAfterPublishEventHandler`
174
+ **Import:** `import { EntryAfterPublishEventHandler } from "webiny/api/cms/entry"`
175
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/PublishEntry/events.ts`
176
+ **Description:** Hook into entry lifecycle after an entry is published.
177
+
178
+ ---
179
+ **Name:** `EntryAfterRepublishEventHandler`
180
+ **Import:** `import { EntryAfterRepublishEventHandler } from "webiny/api/cms/entry"`
181
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/RepublishEntry/events.ts`
182
+ **Description:** Hook into entry lifecycle after an entry is republished.
183
+
184
+ ---
185
+ **Name:** `EntryAfterRestoreFromBinEventHandler`
186
+ **Import:** `import { EntryAfterRestoreFromBinEventHandler } from "webiny/api/cms/entry"`
187
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/RestoreEntryFromBin/events.ts`
188
+ **Description:** Hook into entry lifecycle after an entry is restored from bin.
189
+
190
+ ---
191
+ **Name:** `EntryAfterUnpublishEventHandler`
192
+ **Import:** `import { EntryAfterUnpublishEventHandler } from "webiny/api/cms/entry"`
193
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/UnpublishEntry/events.ts`
194
+ **Description:** Hook into entry lifecycle after an entry is unpublished.
195
+
196
+ ---
197
+ **Name:** `EntryAfterUpdateEventHandler`
198
+ **Import:** `import { EntryAfterUpdateEventHandler } from "webiny/api/cms/entry"`
199
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/UpdateEntry/events.ts`
200
+ **Description:** Hook into entry lifecycle after an entry is updated.
201
+
202
+ ---
203
+ **Name:** `EntryBeforeCreateEventHandler`
204
+ **Import:** `import { EntryBeforeCreateEventHandler } from "webiny/api/cms/entry"`
205
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/CreateEntry/events.ts`
206
+ **Description:** Hook into entry lifecycle before an entry is created.
207
+
208
+ ---
209
+ **Name:** `EntryBeforeDeleteEventHandler`
210
+ **Import:** `import { EntryBeforeDeleteEventHandler } from "webiny/api/cms/entry"`
211
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteEntry/events.ts`
212
+ **Description:** Hook into entry lifecycle before an entry is deleted.
213
+
214
+ ---
215
+ **Name:** `EntryBeforeDeleteMultipleEventHandler`
216
+ **Import:** `import { EntryBeforeDeleteMultipleEventHandler } from "webiny/api/cms/entry"`
217
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteMultipleEntries/events.ts`
218
+ **Description:** Hook into entry lifecycle before multiple entries are deleted.
219
+
220
+ ---
221
+ **Name:** `EntryBeforeMoveEventHandler`
222
+ **Import:** `import { EntryBeforeMoveEventHandler } from "webiny/api/cms/entry"`
223
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/MoveEntry/events.ts`
224
+ **Description:** Hook into entry lifecycle before an entry is moved.
225
+
226
+ ---
227
+ **Name:** `EntryBeforePublishEventHandler`
228
+ **Import:** `import { EntryBeforePublishEventHandler } from "webiny/api/cms/entry"`
229
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/PublishEntry/events.ts`
230
+ **Description:** Hook into entry lifecycle before an entry is published.
231
+
232
+ ---
233
+ **Name:** `EntryBeforeRepublishEventHandler`
234
+ **Import:** `import { EntryBeforeRepublishEventHandler } from "webiny/api/cms/entry"`
235
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/RepublishEntry/events.ts`
236
+ **Description:** Hook into entry lifecycle before an entry is republished.
237
+
238
+ ---
239
+ **Name:** `EntryBeforeRestoreFromBinEventHandler`
240
+ **Import:** `import { EntryBeforeRestoreFromBinEventHandler } from "webiny/api/cms/entry"`
241
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/RestoreEntryFromBin/events.ts`
242
+ **Description:** Hook into entry lifecycle before an entry is restored from bin.
243
+
244
+ ---
245
+ **Name:** `EntryBeforeUnpublishEventHandler`
246
+ **Import:** `import { EntryBeforeUnpublishEventHandler } from "webiny/api/cms/entry"`
247
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/UnpublishEntry/events.ts`
248
+ **Description:** Hook into entry lifecycle before an entry is unpublished.
249
+
250
+ ---
251
+ **Name:** `EntryBeforeUpdateEventHandler`
252
+ **Import:** `import { EntryBeforeUpdateEventHandler } from "webiny/api/cms/entry"`
253
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/UpdateEntry/events.ts`
254
+ **Description:** Hook into entry lifecycle before an entry is updated.
255
+
256
+ ---
257
+ **Name:** `EntryId`
258
+ **Import:** `import { EntryId } from "webiny/api/cms/entry"`
259
+ **Source:** `@webiny/api-headless-cms/domain/contentEntry/EntryId.ts`
260
+ **Description:** Generate and parse content entry IDs.
261
+
262
+ ---
263
+ **Name:** `EntryRevisionAfterCreateEventHandler`
264
+ **Import:** `import { EntryRevisionAfterCreateEventHandler } from "webiny/api/cms/entry"`
265
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/CreateEntryRevisionFrom/events.ts`
266
+ **Description:** Hook into revision lifecycle after a revision is created.
267
+
268
+ ---
269
+ **Name:** `EntryRevisionAfterDeleteEventHandler`
270
+ **Import:** `import { EntryRevisionAfterDeleteEventHandler } from "webiny/api/cms/entry"`
271
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteEntryRevision/events.ts`
272
+ **Description:** Hook into revision lifecycle after a revision is deleted.
273
+
274
+ ---
275
+ **Name:** `EntryRevisionBeforeCreateEventHandler`
276
+ **Import:** `import { EntryRevisionBeforeCreateEventHandler } from "webiny/api/cms/entry"`
277
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/CreateEntryRevisionFrom/events.ts`
278
+ **Description:** Hook into revision lifecycle before a revision is created.
279
+
280
+ ---
281
+ **Name:** `EntryRevisionBeforeDeleteEventHandler`
282
+ **Import:** `import { EntryRevisionBeforeDeleteEventHandler } from "webiny/api/cms/entry"`
283
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteEntryRevision/events.ts`
284
+ **Description:** Hook into revision lifecycle before a revision is deleted.
285
+
286
+ ---
287
+ **Name:** `FieldType`
288
+ **Import:** `import { FieldType } from "webiny/api/cms/model"`
289
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/fields/abstractions.ts`
290
+ **Description:** Use to implement new field types.
291
+
292
+ ---
293
+ **Name:** `FieldTypeValidator`
294
+ **Kind:** type
295
+ **Import:** `import type { FieldTypeValidator } from "webiny/api/cms/model"`
296
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/fields/fieldTypeValidator.ts`
297
+
298
+ ---
299
+ **Name:** `GetEntriesByIdsUseCase`
300
+ **Import:** `import { GetEntriesByIdsUseCase } from "webiny/api/cms/entry"`
301
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetEntriesByIds/abstractions.ts`
302
+ **Description:** Retrieve multiple content entries by their IDs.
303
+
304
+ ---
305
+ **Name:** `GetEntryByIdUseCase`
306
+ **Import:** `import { GetEntryByIdUseCase } from "webiny/api/cms/entry"`
307
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetEntryById/abstractions.ts`
308
+ **Description:** Retrieve a content entry by its exact revision ID.
309
+
310
+ ---
311
+ **Name:** `GetEntryUseCase`
312
+ **Import:** `import { GetEntryUseCase } from "webiny/api/cms/entry"`
313
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetEntry/abstractions.ts`
314
+ **Description:** Retrieve a content entry.
315
+
316
+ ---
317
+ **Name:** `GetGroupUseCase`
318
+ **Import:** `import { GetGroupUseCase } from "webiny/api/cms/group"`
319
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/GetGroup/abstractions.ts`
320
+ **Description:** Retrieve a content model group.
321
+
322
+ ---
323
+ **Name:** `GetLatestDeletedRevisionByEntryIdUseCase`
324
+ **Import:** `import { GetLatestDeletedRevisionByEntryIdUseCase } from "webiny/api/cms/entry"`
325
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/abstractions.ts`
326
+ **Description:** Retrieve the latest deleted revision of an entry.
327
+
328
+ ---
329
+ **Name:** `GetLatestEntriesByIdsUseCase`
330
+ **Import:** `import { GetLatestEntriesByIdsUseCase } from "webiny/api/cms/entry"`
331
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetLatestEntriesByIds/abstractions.ts`
332
+ **Description:** Retrieve the latest revisions for multiple entries.
333
+
334
+ ---
335
+ **Name:** `GetLatestRevisionByEntryIdBaseUseCase`
336
+ **Import:** `import { GetLatestRevisionByEntryIdBaseUseCase } from "webiny/api/cms/entry"`
337
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/abstractions.ts`
338
+ **Description:** Base use case for retrieving the latest entry revision.
339
+
340
+ ---
341
+ **Name:** `GetLatestRevisionByEntryIdIncludingDeletedUseCase`
342
+ **Import:** `import { GetLatestRevisionByEntryIdIncludingDeletedUseCase } from "webiny/api/cms/entry"`
343
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/abstractions.ts`
344
+ **Description:** Retrieve the latest entry revision, including deleted ones.
345
+
346
+ ---
347
+ **Name:** `GetLatestRevisionByEntryIdUseCase`
348
+ **Import:** `import { GetLatestRevisionByEntryIdUseCase } from "webiny/api/cms/entry"`
349
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/abstractions.ts`
350
+ **Description:** Retrieve the latest revision of an entry.
351
+
352
+ ---
353
+ **Name:** `GetModelUseCase`
354
+ **Import:** `import { GetModelUseCase } from "webiny/api/cms/model"`
355
+ **Source:** `@webiny/api-headless-cms/features/contentModel/GetModel/abstractions.ts`
356
+ **Description:** Retrieve a content model.
357
+
358
+ ---
359
+ **Name:** `GetPreviousRevisionByEntryIdBaseUseCase`
360
+ **Import:** `import { GetPreviousRevisionByEntryIdBaseUseCase } from "webiny/api/cms/entry"`
361
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.ts`
362
+ **Description:** Base use case for retrieving the previous entry revision.
363
+
364
+ ---
365
+ **Name:** `GetPreviousRevisionByEntryIdUseCase`
366
+ **Import:** `import { GetPreviousRevisionByEntryIdUseCase } from "webiny/api/cms/entry"`
367
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.ts`
368
+ **Description:** Retrieve the previous revision of an entry.
369
+
370
+ ---
371
+ **Name:** `GetPublishedEntriesByIdsUseCase`
372
+ **Import:** `import { GetPublishedEntriesByIdsUseCase } from "webiny/api/cms/entry"`
373
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetPublishedEntriesByIds/abstractions.ts`
374
+ **Description:** Retrieve published revisions for multiple entries.
375
+
376
+ ---
377
+ **Name:** `GetPublishedRevisionByEntryIdUseCase`
378
+ **Import:** `import { GetPublishedRevisionByEntryIdUseCase } from "webiny/api/cms/entry"`
379
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.ts`
380
+ **Description:** Retrieve the published revision of an entry.
381
+
382
+ ---
383
+ **Name:** `GetRevisionByIdUseCase`
384
+ **Import:** `import { GetRevisionByIdUseCase } from "webiny/api/cms/entry"`
385
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetRevisionById/abstractions.ts`
386
+ **Description:** Retrieve a specific entry revision by ID.
387
+
388
+ ---
389
+ **Name:** `GetRevisionsByEntryIdUseCase`
390
+ **Import:** `import { GetRevisionsByEntryIdUseCase } from "webiny/api/cms/entry"`
391
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetRevisionsByEntryId/abstractions.ts`
392
+ **Description:** Retrieve all revisions of an entry.
393
+
394
+ ---
395
+ **Name:** `GetSingletonEntryUseCase`
396
+ **Import:** `import { GetSingletonEntryUseCase } from "webiny/api/cms/entry"`
397
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/GetSingletonEntry/abstractions.ts`
398
+ **Description:** Retrieve a singleton content entry.
399
+
400
+ ---
401
+ **Name:** `GroupAfterCreateEventHandler`
402
+ **Import:** `import { GroupAfterCreateEventHandler } from "webiny/api/cms/group"`
403
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/CreateGroup/events.ts`
404
+ **Description:** Hook into group lifecycle after a group is created.
405
+
406
+ ---
407
+ **Name:** `GroupAfterDeleteEventHandler`
408
+ **Import:** `import { GroupAfterDeleteEventHandler } from "webiny/api/cms/group"`
409
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/DeleteGroup/events.ts`
410
+ **Description:** Hook into group lifecycle after a group is deleted.
411
+
412
+ ---
413
+ **Name:** `GroupAfterUpdateEventHandler`
414
+ **Import:** `import { GroupAfterUpdateEventHandler } from "webiny/api/cms/group"`
415
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/UpdateGroup/events.ts`
416
+ **Description:** Hook into group lifecycle after a group is updated.
417
+
418
+ ---
419
+ **Name:** `GroupBeforeCreateEventHandler`
420
+ **Import:** `import { GroupBeforeCreateEventHandler } from "webiny/api/cms/group"`
421
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/CreateGroup/events.ts`
422
+ **Description:** Hook into group lifecycle before a group is created.
423
+
424
+ ---
425
+ **Name:** `GroupBeforeDeleteEventHandler`
426
+ **Import:** `import { GroupBeforeDeleteEventHandler } from "webiny/api/cms/group"`
427
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/DeleteGroup/events.ts`
428
+ **Description:** Hook into group lifecycle before a group is deleted.
429
+
430
+ ---
431
+ **Name:** `GroupBeforeUpdateEventHandler`
432
+ **Import:** `import { GroupBeforeUpdateEventHandler } from "webiny/api/cms/group"`
433
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/UpdateGroup/events.ts`
434
+ **Description:** Hook into group lifecycle before a group is updated.
435
+
436
+ ---
437
+ **Name:** `IFieldBuilderRegistry`
438
+ **Kind:** type
439
+ **Import:** `import type { IFieldBuilderRegistry } from "webiny/api/cms/model"`
440
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/abstractions.ts`
441
+ **Description:** Augmentable field builder registry. Provides access to all registered field types.
442
+
443
+ ---
444
+ **Name:** `IFieldRendererRegistry`
445
+ **Kind:** type
446
+ **Import:** `import type { IFieldRendererRegistry } from "webiny/api/cms/model"`
447
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/fields/DataFieldBuilder.ts`
448
+ **Description:** Augmentable renderer registry. Each entry maps a renderer name to its applicable field type(s) and settings.
449
+
450
+ ---
451
+ **Name:** `LayoutBuilder`
452
+ **Import:** `import { LayoutBuilder } from "webiny/api/cms/model"`
453
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/LayoutBuilder.ts`
454
+ **Description:** LayoutBuilder provides a fluent API for modifying field layouts.
455
+ Supports adding fields to existing rows and inserting new rows at specific positions.
456
+ Callbacks can be queued and executed lazily for efficient composition.
457
+
458
+ ---
459
+ **Name:** `LayoutFieldBuilder`
460
+ **Import:** `import { LayoutFieldBuilder } from "webiny/api/cms/model"`
461
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/fields/FieldBuilder.ts`
462
+ **Description:** Slim base class for layout fields (separators, alerts, tabs, etc.).
463
+ Layout fields only support label, description, help, and note — no list(), storageId(), etc.
464
+
465
+ ---
466
+ **Name:** `ListDeletedEntriesUseCase`
467
+ **Import:** `import { ListDeletedEntriesUseCase } from "webiny/api/cms/entry"`
468
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.ts`
469
+ **Description:** List deleted content entries.
470
+
471
+ ---
472
+ **Name:** `ListEntriesUseCase`
473
+ **Import:** `import { ListEntriesUseCase } from "webiny/api/cms/entry"`
474
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.ts`
475
+ **Description:** List content entries with filtering and pagination.
476
+
477
+ ---
478
+ **Name:** `ListGroupsUseCase`
479
+ **Import:** `import { ListGroupsUseCase } from "webiny/api/cms/group"`
480
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/ListGroups/abstractions.ts`
481
+ **Description:** List all content model groups.
482
+
483
+ ---
484
+ **Name:** `ListLatestEntriesUseCase`
485
+ **Import:** `import { ListLatestEntriesUseCase } from "webiny/api/cms/entry"`
486
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.ts`
487
+ **Description:** List the latest revisions of content entries.
488
+
489
+ ---
490
+ **Name:** `ListModelsUseCase`
491
+ **Import:** `import { ListModelsUseCase } from "webiny/api/cms/model"`
492
+ **Source:** `@webiny/api-headless-cms/features/contentModel/ListModels/abstractions.ts`
493
+ **Description:** List all content models.
494
+
495
+ ---
496
+ **Name:** `ListPublishedEntriesUseCase`
497
+ **Import:** `import { ListPublishedEntriesUseCase } from "webiny/api/cms/entry"`
498
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/ListEntries/abstractions.ts`
499
+ **Description:** List published content entries.
500
+
501
+ ---
502
+ **Name:** `ModelAfterCreateEventHandler`
503
+ **Import:** `import { ModelAfterCreateEventHandler } from "webiny/api/cms/model"`
504
+ **Source:** `@webiny/api-headless-cms/features/contentModel/CreateModel/events.ts`
505
+ **Description:** Hook into model lifecycle after a model is created.
506
+
507
+ ---
508
+ **Name:** `ModelAfterCreateFromEventHandler`
509
+ **Import:** `import { ModelAfterCreateFromEventHandler } from "webiny/api/cms/model"`
510
+ **Source:** `@webiny/api-headless-cms/features/contentModel/CreateModelFrom/events.ts`
511
+ **Description:** Hook into model lifecycle after a model is cloned.
512
+
513
+ ---
514
+ **Name:** `ModelAfterDeleteEventHandler`
515
+ **Import:** `import { ModelAfterDeleteEventHandler } from "webiny/api/cms/model"`
516
+ **Source:** `@webiny/api-headless-cms/features/contentModel/DeleteModel/events.ts`
517
+ **Description:** Hook into model lifecycle after a model is deleted.
518
+
519
+ ---
520
+ **Name:** `ModelAfterUpdateEventHandler`
521
+ **Import:** `import { ModelAfterUpdateEventHandler } from "webiny/api/cms/model"`
522
+ **Source:** `@webiny/api-headless-cms/features/contentModel/UpdateModel/events.ts`
523
+ **Description:** Hook into model lifecycle after a model is updated.
524
+
525
+ ---
526
+ **Name:** `ModelBeforeCreateEventHandler`
527
+ **Import:** `import { ModelBeforeCreateEventHandler } from "webiny/api/cms/model"`
528
+ **Source:** `@webiny/api-headless-cms/features/contentModel/CreateModel/events.ts`
529
+ **Description:** Hook into model lifecycle before a model is created.
530
+
531
+ ---
532
+ **Name:** `ModelBeforeCreateFromEventHandler`
533
+ **Import:** `import { ModelBeforeCreateFromEventHandler } from "webiny/api/cms/model"`
534
+ **Source:** `@webiny/api-headless-cms/features/contentModel/CreateModelFrom/events.ts`
535
+ **Description:** Hook into model lifecycle before a model is cloned.
536
+
537
+ ---
538
+ **Name:** `ModelBeforeDeleteEventHandler`
539
+ **Import:** `import { ModelBeforeDeleteEventHandler } from "webiny/api/cms/model"`
540
+ **Source:** `@webiny/api-headless-cms/features/contentModel/DeleteModel/events.ts`
541
+ **Description:** Hook into model lifecycle before a model is deleted.
542
+
543
+ ---
544
+ **Name:** `ModelBeforeUpdateEventHandler`
545
+ **Import:** `import { ModelBeforeUpdateEventHandler } from "webiny/api/cms/model"`
546
+ **Source:** `@webiny/api-headless-cms/features/contentModel/UpdateModel/events.ts`
547
+ **Description:** Hook into model lifecycle before a model is updated.
548
+
549
+ ---
550
+ **Name:** `ModelBuilder`
551
+ **Import:** `import { ModelBuilder } from "webiny/api/cms/model"`
552
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/models/ModelBuilder.ts`
553
+ **Description:** Entry point builder that allows selecting model type.
554
+ Call .private() or .public() to get the appropriate typed builder.
555
+
556
+ ---
557
+ **Name:** `ModelFactory`
558
+ **Import:** `import { ModelFactory } from "webiny/api/cms/model"`
559
+ **Source:** `@webiny/api-headless-cms/features/modelBuilder/abstractions.ts`
560
+ **Description:** Provide code-defined content models.
561
+
562
+ ---
563
+ **Name:** `ModelGroupFactory`
564
+ **Import:** `import { ModelGroupFactory } from "webiny/api/cms/group"`
565
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/shared/abstractions.ts`
566
+ **Description:** Provide code-defined content model groups.
567
+
568
+ ---
569
+ **Name:** `MoveEntryToBinUseCase`
570
+ **Import:** `import { MoveEntryToBinUseCase } from "webiny/api/cms/entry"`
571
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/DeleteEntry/abstractions.ts`
572
+ **Description:** Move a content entry to the recycle bin.
573
+
574
+ ---
575
+ **Name:** `MoveEntryUseCase`
576
+ **Import:** `import { MoveEntryUseCase } from "webiny/api/cms/entry"`
577
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/MoveEntry/abstractions.ts`
578
+ **Description:** Move a content entry to a different folder.
579
+
580
+ ---
581
+ **Name:** `PublishEntryUseCase`
582
+ **Import:** `import { PublishEntryUseCase } from "webiny/api/cms/entry"`
583
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/PublishEntry/abstractions.ts`
584
+ **Description:** Publish a content entry.
585
+
586
+ ---
587
+ **Name:** `RepublishEntryUseCase`
588
+ **Import:** `import { RepublishEntryUseCase } from "webiny/api/cms/entry"`
589
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/RepublishEntry/abstractions.ts`
590
+ **Description:** Republish a content entry.
591
+
592
+ ---
593
+ **Name:** `RestoreEntryFromBinUseCase`
594
+ **Import:** `import { RestoreEntryFromBinUseCase } from "webiny/api/cms/entry"`
595
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/RestoreEntryFromBin/abstractions.ts`
596
+ **Description:** Restore a content entry from the recycle bin.
597
+
598
+ ---
599
+ **Name:** `SchedulePublishEntryUseCase`
600
+ **Import:** `import { SchedulePublishEntryUseCase } from "webiny/api/cms/scheduler"`
601
+ **Source:** `@webiny/api-headless-cms-scheduler/features/SchedulePublishEntryUseCase/abstractions.ts`
602
+ **Description:** Schedule an entry for future publishing.
603
+
604
+ ---
605
+ **Name:** `ScheduleUnpublishEntryUseCase`
606
+ **Import:** `import { ScheduleUnpublishEntryUseCase } from "webiny/api/cms/scheduler"`
607
+ **Source:** `@webiny/api-headless-cms-scheduler/features/ScheduleUnpublishEntryUseCase/abstractions.ts`
608
+ **Description:** Schedule an entry for future unpublishing.
609
+
610
+ ---
611
+ **Name:** `UnpublishEntryUseCase`
612
+ **Import:** `import { UnpublishEntryUseCase } from "webiny/api/cms/entry"`
613
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/UnpublishEntry/abstractions.ts`
614
+ **Description:** Unpublish a content entry.
615
+
616
+ ---
617
+ **Name:** `UpdateEntryUseCase`
618
+ **Import:** `import { UpdateEntryUseCase } from "webiny/api/cms/entry"`
619
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/UpdateEntry/abstractions.ts`
620
+ **Description:** Update a content entry.
621
+
622
+ ---
623
+ **Name:** `UpdateGroupUseCase`
624
+ **Import:** `import { UpdateGroupUseCase } from "webiny/api/cms/group"`
625
+ **Source:** `@webiny/api-headless-cms/features/contentModelGroup/UpdateGroup/abstractions.ts`
626
+ **Description:** Update a content model group.
627
+
628
+ ---
629
+ **Name:** `UpdateModelUseCase`
630
+ **Import:** `import { UpdateModelUseCase } from "webiny/api/cms/model"`
631
+ **Source:** `@webiny/api-headless-cms/features/contentModel/UpdateModel/abstractions.ts`
632
+ **Description:** Update a content model.
633
+
634
+ ---
635
+ **Name:** `UpdateSingletonEntryUseCase`
636
+ **Import:** `import { UpdateSingletonEntryUseCase } from "webiny/api/cms/entry"`
637
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/UpdateSingletonEntry/abstractions.ts`
638
+ **Description:** Update a singleton content entry.
639
+
640
+ ---
641
+ **Name:** `ValidateEntryUseCase`
642
+ **Import:** `import { ValidateEntryUseCase } from "webiny/api/cms/entry"`
643
+ **Source:** `@webiny/api-headless-cms/features/contentEntry/ValidateEntry/abstractions.ts`
644
+ **Description:** Validate a content entry against its model schema.
645
+
646
+ ---
@@ -0,0 +1,31 @@
1
+ ---
2
+ name: webiny-api-event-publisher-catalog
3
+ context: webiny-api
4
+ description: >
5
+ api/event-publisher — 2 abstractions.
6
+ ---
7
+
8
+ # api/event-publisher
9
+
10
+ ## How to Use
11
+
12
+ 1. Find the abstraction you need below
13
+ 2. Read the source file to get the exact interface and types
14
+ 3. Import: `import { Name } from "<importPath>";`
15
+ 4. See `webiny-use-case-pattern` or `webiny-event-handler-pattern` skills for implementation patterns
16
+
17
+ ## Abstractions
18
+
19
+ ---
20
+ **Name:** `DomainEvent`
21
+ **Import:** `import { DomainEvent } from "webiny/api/event-publisher"`
22
+ **Source:** `@webiny/api-core/features/eventPublisher/index.ts`
23
+ **Description:** Base class for all domain events.
24
+
25
+ ---
26
+ **Name:** `EventPublisher`
27
+ **Import:** `import { EventPublisher } from "webiny/api/event-publisher"`
28
+ **Source:** `@webiny/api-core/features/eventPublisher/index.ts`
29
+ **Description:** Publish domain events to registered handlers.
30
+
31
+ ---