/** * Statement kinds both tree walkers dispatch on. * * The executor and the provision planner walk the same tree-sitter * AST. This enum is the single classification both use, so a * construct cannot be supported by one walker and silently * unclassified by the other: `nodeKind` owns every tree-sitter * node-type check, including the lookahead that distinguishes * `select` from `for` and `until` from `while`. */ export declare const NodeKind: Readonly<{ readonly COMMENT: "comment"; readonly PROGRAM: "program"; readonly COMMAND: "command"; readonly PIPELINE: "pipeline"; readonly LIST: "list"; readonly REDIRECT: "redirect"; readonly SUBSHELL: "subshell"; readonly COMPOUND: "compound"; readonly IF: "if"; readonly FOR: "for"; readonly CFOR: "cfor"; readonly SELECT: "select"; readonly WHILE: "while"; readonly UNTIL: "until"; readonly CASE: "case"; readonly FUNCTION_DEF: "function_def"; readonly DECLARATION: "declaration"; readonly UNSET: "unset"; readonly TEST: "test"; readonly NEGATED: "negated"; readonly VAR_ASSIGN: "var_assign"; readonly VAR_ASSIGNS: "var_assigns"; readonly UNSUPPORTED: "unsupported"; }>; export type NodeKind = (typeof NodeKind)[keyof typeof NodeKind]; interface KindNodeLike { type: string; children?: readonly { type: string; }[] | { type: string; }[]; } /** * Classify a tree-sitter node into the shared statement kind, or * UNSUPPORTED for node types neither walker implements (tree-sitter * ERROR nodes, future grammar additions). */ export declare function nodeKind(node: KindNodeLike): NodeKind; export {}; //# sourceMappingURL=node_kind.d.ts.map