saepequia
Version:
A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps
11 lines (8 loc) • 309 B
text/typescript
import { types as t } from '@babel/core';
import type { Node, VisitorKeys } from '@babel/types';
type Keys<T extends Node> = (VisitorKeys[T['type']] & keyof T)[];
export default function getVisitorKeys<TNode extends Node>(
node: TNode
): Keys<TNode> {
return t.VISITOR_KEYS[node.type] as Keys<TNode>;
}