import { Result } from "@webiny/feature/api"; import type { CmsGroup } from "../../../types/index.js"; import type { GroupPersistenceError } from "../../../domain/contentModelGroup/errors.js"; import { GroupNotAuthorizedError, type GroupNotFoundError } from "../../../domain/contentModelGroup/errors.js"; /** * GetGroup Use Case */ export interface IGetGroupUseCase { execute(groupId: string): Promise>; } export interface IGetGroupUseCaseErrors { notFound: GroupNotFoundError; notAuthorized: GroupNotAuthorizedError; repository: RepositoryError; } type UseCaseError = IGetGroupUseCaseErrors[keyof IGetGroupUseCaseErrors]; /** Retrieve a content model group. */ export declare const GetGroupUseCase: import("@webiny/di").Abstraction; export declare namespace GetGroupUseCase { type Interface = IGetGroupUseCase; type Error = UseCaseError; type Return = Promise>; } /** * GetGroupRepository - Fetches a single group by ID from cache. */ export interface IGetGroupRepository { execute(groupId: string): Promise>; } export interface IGetGroupRepositoryErrors { notFound: GroupNotFoundError; storage: GroupPersistenceError; } type RepositoryError = IGetGroupRepositoryErrors[keyof IGetGroupRepositoryErrors]; export declare const GetGroupRepository: import("@webiny/di").Abstraction; export declare namespace GetGroupRepository { type Interface = IGetGroupRepository; type Error = RepositoryError; } export {};