import { Result } from "@webiny/feature/api"; import type { CmsModel } from "../../../types/index.js"; import { ModelNotAuthorizedError, type ModelNotFoundError, type ModelPersistenceError } from "../../../domain/contentModel/errors.js"; /** * GetModel Use Case */ export interface IGetModelUseCase { execute(modelId: string): Promise>; } export interface IGetModelUseCaseErrors { notFound: ModelNotFoundError; notAuthorized: ModelNotAuthorizedError; persistence: ModelPersistenceError; } type UseCaseError = IGetModelUseCaseErrors[keyof IGetModelUseCaseErrors]; /** Retrieve a content model. */ export declare const GetModelUseCase: import("@webiny/di").Abstraction; export declare namespace GetModelUseCase { type Interface = IGetModelUseCase; type Error = UseCaseError; type Return = Promise>; } /** * GetModelRepository - Fetches a single model by ID from cache. */ export interface IGetModelRepository { execute(modelId: string): Promise>; } export interface IGetModelRepositoryErrors { notFound: ModelNotFoundError; persistence: ModelPersistenceError; } type RepositoryError = IGetModelRepositoryErrors[keyof IGetModelRepositoryErrors]; export declare const GetModelRepository: import("@webiny/di").Abstraction; export declare namespace GetModelRepository { type Interface = IGetModelRepository; type Error = RepositoryError; } export {};