import { Result } from "@webiny/feature/api"; import { ListModelsUseCase as UseCaseAbstraction } from "./abstractions.js"; import { ListModelsRepository } from "./abstractions.js"; import { AccessControl } from "../../../features/shared/abstractions.js"; import type { CmsModel } from "../../../types/index.js"; import type { ICmsModelListParams } from "../../../types/index.js"; /** * ListModelsUseCase - Retrieves all content models. * * Responsibilities: * - Apply initial access control check * - Delegate to repository (which uses ModelCache for plugin + DB models) * - Return all accessible models */ declare class ListModelsUseCaseImpl implements UseCaseAbstraction.Interface { private repository; private accessControl; constructor(repository: ListModelsRepository.Interface, accessControl: AccessControl.Interface); execute(params?: ICmsModelListParams): Promise>; } export declare const ListModelsUseCase: typeof ListModelsUseCaseImpl & { __abstraction: import("@webiny/di").Abstraction; }; export {};