import { Result } from "@webiny/feature/api"; import { ListGroupsUseCase as UseCaseAbstraction } from "./abstractions.js"; import { ListGroupsRepository } from "./abstractions.js"; import { AccessControl } from "../../../features/shared/abstractions.js"; import type { CmsGroup } from "../../../types/index.js"; /** * ListGroupsUseCase - Retrieves all content model groups. * * Responsibilities: * - Apply initial access control check * - Delegate to repository (which uses GroupCache for plugin + DB groups) * - Return all accessible groups */ declare class ListGroupsUseCaseImpl implements UseCaseAbstraction.Interface { private repository; private accessControl; constructor(repository: ListGroupsRepository.Interface, accessControl: AccessControl.Interface); execute(): Promise>; } export declare const ListGroupsUseCase: import("@webiny/di").Implementation; export {};