[]previous and next page

NodeMap

The node types with a typed interface, by name.

The node types with a typed interface, by name. A Visitor has an optional member for each.

Import#

ts
import type { NodeMap } from "@shadow-js/compiler";

Signature#

ts
interface NodeMap {
  /** The module. */
  Program: ProgramNode;
  /** An identifier. */
  Identifier: IdentifierNode;
  /** A literal. */
  Literal: LiteralNode;
  /** A template literal. */
  TemplateLiteral: TemplateLiteralNode;
  /** A call. */
  CallExpression: CallExpressionNode;
  /** A member access. */
  MemberExpression: MemberExpressionNode;
  /** An import declaration. */
  ImportDeclaration: ImportDeclarationNode;
  /** An object literal. */
  ObjectExpression: ObjectExpressionNode;
  /** An object member. */
  Property: PropertyNode;
  /** A JSX element. */
  JSXElement: JSXElementNode;
  /** A JSX fragment. */
  JSXFragment: JSXFragmentNode;
  /** An opening tag. */
  JSXOpeningElement: JSXOpeningElementNode;
  /** A JSX attribute. */
  JSXAttribute: JSXAttributeNode;
  /** A JSX spread attribute. */
  JSXSpreadAttribute: JSXSpreadAttributeNode;
  /** A JSX word. */
  JSXIdentifier: JSXIdentifierNode;
  /** A JSX dotted name. */
  JSXMemberExpression: JSXMemberExpressionNode;
  /** A JSX namespaced name. */
  JSXNamespacedName: JSXNamespacedNameNode;
  /** A JSX `{}` container. */
  JSXExpressionContainer: JSXExpressionContainerNode;
  /** JSX text. */
  JSXText: JSXTextNode;
}

Members#

Name Type Description
Program Program: ProgramNode The module.
Identifier Identifier: IdentifierNode An identifier.
Literal Literal: LiteralNode A literal.
TemplateLiteral TemplateLiteral: TemplateLiteralNode A template literal.
CallExpression CallExpression: CallExpressionNode A call.
MemberExpression MemberExpression: MemberExpressionNode A member access.
ImportDeclaration ImportDeclaration: ImportDeclarationNode An import declaration.
ObjectExpression ObjectExpression: ObjectExpressionNode An object literal.
Property Property: PropertyNode An object member.
JSXElement JSXElement: JSXElementNode A JSX element.
JSXFragment JSXFragment: JSXFragmentNode A JSX fragment.
JSXOpeningElement JSXOpeningElement: JSXOpeningElementNode An opening tag.
JSXAttribute JSXAttribute: JSXAttributeNode A JSX attribute.
JSXSpreadAttribute JSXSpreadAttribute: JSXSpreadAttributeNode A JSX spread attribute.
JSXIdentifier JSXIdentifier: JSXIdentifierNode A JSX word.
JSXMemberExpression JSXMemberExpression: JSXMemberExpressionNode A JSX dotted name.
JSXNamespacedName JSXNamespacedName: JSXNamespacedNameNode A JSX namespaced name.
JSXExpressionContainer JSXExpressionContainer: JSXExpressionContainerNode A JSX {} container.
JSXText JSXText: JSXTextNode JSX text.