import { InternalFileContext } from "../syntax/syntax"; import { TsNode } from "../model/TsNodeFactory"; export interface ITsNode { if(condition: boolean): T; else(): T; endif(): T; emitWhen(condition: boolean): T; loads(plugin: (self: T) => void): T; } export interface ITsMultilineNode extends ITsNode { singleline(): T; multiline(): T; } export interface ITsBodyNodeFactory { push(...tsNodes: TsNode[]): any; remove(tsNode: TsNode): any; context: InternalFileContext; }