import { ElementAccessor } from './graph'; import { VertexRef, Vertex, EdgeRef, Edge, PropRef, Prop } from './types'; interface TraversalVisitor { startVertex?: (vertex: Vertex) => Promise; endVertex?: (vertex: Vertex) => Promise; startEdge?: (edge: Edge) => Promise; endEdge?: (edge: Edge) => Promise; startProp?: (edge: Prop) => Promise; endProp?: (edge: Prop) => Promise; } declare function traverseVertices(accessor: ElementAccessor, refs: Iterable, visitor: TraversalVisitor): Promise; declare function traverseEdges(accessor: ElementAccessor, refs: Iterable, vertexTrace: Set, visitor: TraversalVisitor): Promise; declare function traverseVertex(accessor: ElementAccessor, ref: VertexRef, vertexTrace: Set, visitor: TraversalVisitor): Promise; declare function traverseEdge(accessor: ElementAccessor, ref: EdgeRef, vertexTrace: Set, visitor: TraversalVisitor): Promise; declare function traverseProp(accessor: ElementAccessor, ref: PropRef, visitor: TraversalVisitor): Promise; export { TraversalVisitor, traverseVertices, traverseEdges, traverseVertex, traverseEdge, traverseProp, }; //# sourceMappingURL=depth-first.d.ts.map