diff --git a/src/Umbraco.Web.UI.Client/libs/repository/tree-repository.interface.ts b/src/Umbraco.Web.UI.Client/libs/repository/tree-repository.interface.ts index a1de9f88ba..6d57205da4 100644 --- a/src/Umbraco.Web.UI.Client/libs/repository/tree-repository.interface.ts +++ b/src/Umbraco.Web.UI.Client/libs/repository/tree-repository.interface.ts @@ -1,24 +1,31 @@ import type { Observable } from 'rxjs'; -import { EntityTreeItemResponseModel, PagedEntityTreeItemResponseModel, ProblemDetailsModel } from '@umbraco-cms/backoffice/backend-api'; +import { + EntityTreeItemResponseModel, + PagedEntityTreeItemResponseModel, + ProblemDetailsModel, +} from '@umbraco-cms/backoffice/backend-api'; -export interface UmbTreeRepository { +export interface UmbTreeRepository< + PagedItemsType = PagedEntityTreeItemResponseModel, + ItemsType = EntityTreeItemResponseModel +> { requestRootTreeItems: () => Promise<{ - data: PagedEntityTreeItemResponseModel | undefined; + data: PagedItemsType | undefined; error: ProblemDetailsModel | undefined; - asObservable?: () => Observable; + asObservable?: () => Observable; }>; - requestTreeItemsOf: (parentKey: string | null) => Promise<{ - data: PagedEntityTreeItemResponseModel | undefined; + requestTreeItemsOf: (parentUnique: string | null) => Promise<{ + data: PagedItemsType | undefined; error: ProblemDetailsModel | undefined; - asObservable?: () => Observable; + asObservable?: () => Observable; }>; - requestTreeItems: (keys: string[]) => Promise<{ - data: Array | undefined; + requestTreeItems: (uniques: string[]) => Promise<{ + data: Array | undefined; error: ProblemDetailsModel | undefined; - asObservable?: () => Observable; + asObservable?: () => Observable; }>; - rootTreeItems: () => Promise>; - treeItemsOf: (parentKey: string | null) => Promise>; - treeItems: (keys: string[]) => Promise>; + rootTreeItems: () => Promise>; + treeItemsOf: (parentUnique: string | null) => Promise>; + treeItems: (uniques: string[]) => Promise>; }