1 | import * as ts from 'typescript';
|
2 | import { ScriptBuilder } from './sb';
|
3 | import { VisitOptions } from './types';
|
4 | export declare abstract class NodeCompiler<TNode extends ts.Node = ts.Node> {
|
5 | abstract readonly kind: TNode extends ts.Node & {
|
6 | readonly kind: infer TKind;
|
7 | } ? TKind : never;
|
8 | abstract visitNode(sb: ScriptBuilder, node: TNode, options: VisitOptions): void;
|
9 | }
|