diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-data-source.interface.ts b/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-data-source.interface.ts index 07a08c2d7f..0b4d673542 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-data-source.interface.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-data-source.interface.ts @@ -1,11 +1,18 @@ +import { UmbTreeItemModelBase } from './types.js'; import type { UmbPagedData, DataSourceResponse } from '@umbraco-cms/backoffice/repository'; import { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api'; -export interface UmbTreeDataSourceConstructor { +export interface UmbTreeDataSourceConstructor< + TreeItemType extends UmbTreeItemModelBase, + TreeRootType extends UmbTreeItemModelBase, +> { new (host: UmbControllerHost): UmbTreeDataSource; } -export interface UmbTreeDataSource { +export interface UmbTreeDataSource< + TreeItemType extends UmbTreeItemModelBase, + TreeRootType extends UmbTreeItemModelBase, +> { getTreeRoot?(): Promise>; getRootItems(): Promise>>; getChildrenOf(parentUnique: string | null): Promise>>;