import * as ts from 'typescript'; import { ScriptBuilder } from './sb'; import { VisitOptions } from './types'; export declare abstract class NodeCompiler { abstract readonly kind: TNode extends ts.Node & { readonly kind: infer TKind; } ? TKind : never; abstract visitNode(sb: ScriptBuilder, node: TNode, options: VisitOptions): void; }