add interface and methods for treewalker