import { Result } from "@webiny/feature/api"; import type { CmsModel, ICmsModelListParams } from "../../../types/index.js"; import { ModelNotAuthorizedError, type ModelPersistenceError } from "../../../domain/contentModel/errors.js"; /** * ListModels Use Case */ export interface IListModelsUseCase { execute(params?: ICmsModelListParams): Promise>; } export interface IListModelsUseCaseErrors { notAuthorized: ModelNotAuthorizedError; persistence: ModelPersistenceError; } type UseCaseError = IListModelsUseCaseErrors[keyof IListModelsUseCaseErrors]; /** List all content models. */ export declare const ListModelsUseCase: import("@webiny/di").Abstraction; export declare namespace ListModelsUseCase { type Interface = IListModelsUseCase; type Params = ICmsModelListParams; type Error = UseCaseError; type Return = Promise>; } /** * ListModelsRepository - Fetches all models from cache. */ export interface IListModelsRepository { execute(params?: ICmsModelListParams): Promise>; } export interface IListModelsRepositoryErrors { persistence: ModelPersistenceError; } type RepositoryError = IListModelsRepositoryErrors[keyof IListModelsRepositoryErrors]; export declare const ListModelsRepository: import("@webiny/di").Abstraction; export declare namespace ListModelsRepository { type Interface = IListModelsRepository; type Error = RepositoryError; } export {};