ASTVisitFn
A visitor is comprised of visit functions, which are called on each node during the visitor's traversal.
type ASTVisitFn<TVisitedNode extends ASTNode> = (
node: TVisitedNode,
key: string | number | undefined,
path: ReadonlyArray<string | number>,
) => any;