Skills Development Folder Abstraction Use Cases API

Folder Abstraction Use Cases API

v20260825
webiny-api-aco-catalog
This API provides a comprehensive set of architectural abstractions (Use Cases, Repositories, Event Handlers) for managing folder structures and permissions within a web application. It implements the Command Query Separation (CQS) and Domain-Driven Design (DDD) patterns, ensuring clean separation of concerns for CRUD operations, lifecycle events, and complex business logic related to folders and folder-level permissions (FLP).
Get Skill
118 downloads
Overview

API — ACO

Folder event handlers and use cases.

How to Use

  1. Find the abstraction you need below
  2. You MUST read the source file to get the exact interface and types!
  3. Import: import { Name } from "<importPath>";
  4. See webiny-use-case-pattern or webiny-event-handler-pattern skills for implementation patterns

Abstractions


Name: CreateFlpUseCase Import: import { CreateFlpUseCase } from "webiny/api/aco/flp" Source: @webiny/api-aco/features/flp/CreateFlp/abstractions.ts Description: Create a folder-level permission.


Name: CreateFolderRepository Import: import { CreateFolderRepository } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/CreateFolder/abstractions.ts Description: Persist a newly created folder.


Name: CreateFolderUseCase Import: import { CreateFolderUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/CreateFolder/abstractions.ts Description: Create a new folder.


Name: DeleteFlpUseCase Import: import { DeleteFlpUseCase } from "webiny/api/aco/flp" Source: @webiny/api-aco/features/flp/DeleteFlp/abstractions.ts Description: Delete a folder-level permission.


Name: DeleteFolderRepository Import: import { DeleteFolderRepository } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/DeleteFolder/abstractions.ts Description: Persist folder deletion.


Name: DeleteFolderUseCase Import: import { DeleteFolderUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/DeleteFolder/abstractions.ts Description: Delete a folder.


Name: EnsureFolderIsEmpty Import: import { EnsureFolderIsEmpty } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/EnsureFolderIsEmpty/abstractions.ts Description: Verify a folder has no children before deletion.


Name: FilterStorageOperations Import: import { FilterStorageOperations } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/shared/abstractions.ts Description: Storage operations for folder filtering.


Name: FlpStorageOperations Import: import { FlpStorageOperations } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/shared/abstractions.ts


Name: Folder Kind: type Import: import type { Folder } from "webiny/api/aco/folder" Source: @webiny/api-aco/folder/folder.types.ts


Name: FolderAfterCreateEventHandler Import: import { FolderAfterCreateEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/CreateFolder/abstractions.ts Description: Hook into folder lifecycle after a folder is created.


Name: FolderAfterDeleteEventHandler Import: import { FolderAfterDeleteEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/DeleteFolder/abstractions.ts Description: Hook into folder lifecycle after a folder is deleted.


Name: FolderAfterGetEventHandler Import: import { FolderAfterGetEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/GetFolder/abstractions.ts Description: Hook into folder lifecycle after a folder is retrieved.


Name: FolderAfterUpdateEventHandler Import: import { FolderAfterUpdateEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/UpdateFolder/abstractions.ts Description: Hook into folder lifecycle after a folder is updated.


Name: FolderBeforeCreateEventHandler Import: import { FolderBeforeCreateEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/CreateFolder/abstractions.ts Description: Hook into folder lifecycle before a folder is created.


Name: FolderBeforeDeleteEventHandler Import: import { FolderBeforeDeleteEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/DeleteFolder/abstractions.ts Description: Hook into folder lifecycle before a folder is deleted.


Name: FolderBeforeGetEventHandler Import: import { FolderBeforeGetEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/GetFolder/abstractions.ts Description: Hook into folder lifecycle before a folder is retrieved.


Name: FolderBeforeUpdateEventHandler Import: import { FolderBeforeUpdateEventHandler } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/UpdateFolder/abstractions.ts Description: Hook into folder lifecycle before a folder is updated.


Name: FolderLevelPermissions Import: import { FolderLevelPermissions } from "webiny/api/aco/flp" Source: @webiny/api-aco/features/flp/FolderLevelPermissions/abstractions.ts Description: Manage folder-level access control.


Name: GetAncestorsRepository Import: import { GetAncestorsRepository } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/GetAncestors/abstractions.ts Description: Fetch ancestor folders from storage.


Name: GetAncestorsUseCase Import: import { GetAncestorsUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/GetAncestors/abstractions.ts Description: Retrieve ancestor folders in the hierarchy.


Name: GetFlpUseCase Import: import { GetFlpUseCase } from "webiny/api/aco/flp" Source: @webiny/api-aco/features/flp/GetFlp/abstractions.ts Description: Retrieve a folder-level permission.


Name: GetFolderHierarchyRepository Import: import { GetFolderHierarchyRepository } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/GetFolderHierarchy/abstractions.ts Description: Fetch folder hierarchy from storage.


Name: GetFolderHierarchyUseCase Import: import { GetFolderHierarchyUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/GetFolderHierarchy/abstractions.ts Description: Retrieve the full folder hierarchy.


Name: GetFolderUseCase Import: import { GetFolderUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/GetFolder/abstractions.ts Description: Retrieve a folder.


Name: ListFlpsUseCase Import: import { ListFlpsUseCase } from "webiny/api/aco/flp" Source: @webiny/api-aco/features/flp/ListFlps/abstractions.ts Description: List folder-level permissions.


Name: ListFolderLevelPermissionsTargetsUseCase Import: import { ListFolderLevelPermissionsTargetsUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/ListFolderLevelPermissionsTargets/abstractions.ts Description: List targets for folder-level permissions.


Name: ListFoldersRepository Import: import { ListFoldersRepository } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/ListFolders/abstractions.ts Description: Fetch folders from storage.


Name: ListFoldersUseCase Import: import { ListFoldersUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/ListFolders/abstractions.ts Description: List folders with filtering.


Name: UpdateFlpUseCase Import: import { UpdateFlpUseCase } from "webiny/api/aco/flp" Source: @webiny/api-aco/features/flp/UpdateFlp/abstractions.ts Description: Update a folder-level permission.


Name: UpdateFolderRepository Import: import { UpdateFolderRepository } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/UpdateFolder/abstractions.ts Description: Persist folder updates.


Name: UpdateFolderUseCase Import: import { UpdateFolderUseCase } from "webiny/api/aco/folder" Source: @webiny/api-aco/features/folder/UpdateFolder/abstractions.ts Description: Update a folder.


Info
Category Development
Name webiny-api-aco-catalog
Version v20260825
Size 8.09KB
Updated At 2026-09-06
Language