import { TreeViewItemId, TreeViewValidItem } from '@mui/x-tree-view/models'; import { TreeViewLazyLoadingPlugin } from "./TreeViewLazyLoadingPlugin.js"; export declare enum RequestStatus { QUEUED = 0, PENDING = 1, SETTLED = 2, UNKNOWN = 3, } /** * Fetches row children from the server with option to limit the number of concurrent requests * Determines the status of a request based on the enum `RequestStatus` * Uses `ParentId` to uniquely identify a request */ export declare class NestedDataManager { private pendingRequests; private queuedRequests; private settledRequests; private lazyLoadingPlugin; private maxConcurrentRequests; constructor(lazyLoadingPlugin: TreeViewLazyLoadingPlugin>, maxConcurrentRequests?: number); private processQueue; queue: (ids: TreeViewItemId[]) => Promise; setRequestSettled: (id: TreeViewItemId) => Promise; clear: () => void; clearPendingRequest: (id: TreeViewItemId) => Promise; getRequestStatus: (id: TreeViewItemId) => RequestStatus; getActiveRequestsCount: () => number; }