import { Result } from "@webiny/feature/api"; import { DeleteGroupUseCase as UseCaseAbstraction } from "./abstractions.js"; import { DeleteGroupRepository } from "./abstractions.js"; import { GetGroupUseCase } from "../../../features/contentModelGroup/GetGroup/abstractions.js"; import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js"; import { AccessControl } from "../../../features/shared/abstractions.js"; /** * DeleteGroupUseCase - Orchestrates group deletion. * * Responsibilities: * - Fetch original group * - Access control checks * - Publish before event * - Delegate to repository * - Publish after event or error event */ declare class DeleteGroupUseCaseImpl implements UseCaseAbstraction.Interface { private eventPublisher; private repository; private getGroupUseCase; private accessControl; constructor(eventPublisher: EventPublisher.Interface, repository: DeleteGroupRepository.Interface, getGroupUseCase: GetGroupUseCase.Interface, accessControl: AccessControl.Interface); execute(groupId: string): Promise>; } export declare const DeleteGroupUseCase: import("@webiny/di").Implementation; export {};