import type { NodePath } from '@babel/traverse'; import type { Expression, PrivateName } from '@babel/types'; interface MemberDescriptor { path: NodePath; computed: boolean; argumentPaths: NodePath[]; } /** * Given a "nested" Member/CallExpression, e.g. * * foo.bar()[baz][42] * * this returns a list of "members". In this example it would be something like * [ * {path: NodePath, arguments: NodePath, computed: false}, * {path: NodePath, arguments: null, computed: true}, * {path: NodePath<42>, arguments: null, computed: false} * ] */ export default function getMembers(path: NodePath, includeRoot?: boolean): MemberDescriptor[]; export {};