Thanks for contacting Syncfusion support.
For remote data binding and it’s features we suggest you to refer the below documentation.
When paging is enabled and remote data is bounded to TreeGrid, records will be fetched from the server as whole and based on the current page size. On expanding the child record, post will be sent to server to fetch child record and display the child records according to page size. Remaining data’s can viewed by navigating to next pages.
Query : my company's trees are very, very child heavy, but not very node heavy (i.e. <10 levels deep tree, but each node could have thousands of children).
Even if you have thousands of children for a parent element. We will fetch the child records based on the immediate parent node from the server and cached locally, only when the expand icon of the parent record is clicked. So, overall performance of the TreeGrid will not be affected even if there are more number of children for a parent record.
Query : but I don't see any way within the component to tell it that this dataset is just a small set of the tree (so it can maintain its indentation), or any information to tell the backend like "I just showed the first 5 children of node x, give me the next 20 things that come next).
According to this query we suspect that you want to get the count of the child records. We can get the count of the children for a parent only after rendering the child records of that parent. So, it is not feasible to get the record count before rendering the child records of a parent node.
If we misunderstood any of your queries or if you need any furthermore assistance please get back to us. We will be happy to assist you.