303 B12 lines
Blame
1import type { AstNode } from 'langium';
2
3export * from './language/index.js';
4export * from './parse.js';
5
6/**
7 * Exclude/omit all `AstNode` attributes recursively.
8 */
9export type RecursiveAstOmit<T> = T extends object
10 ? { [P in keyof T as Exclude<P, keyof AstNode>]: RecursiveAstOmit<T[P]> }
11 : T;
12