UNPKG

ts-simple-ast

Version:

TypeScript compiler wrapper for AST navigation and code generation.

35 lines (34 loc) 1.12 kB
import * as ts from "typescript"; import { Constructor } from "./../../../Constructor"; import { Node, Expression } from "./../../common"; export declare type InitializerExpressionedExtensionType = Node<ts.Node & { initializer?: ts.Expression; }>; export interface InitializerExpressionableNode { /** * Gets if this is an InitializerExpressionableNode. */ isInitializerExpressionableNode(): this is InitializerExpressionableNode; /** * Gets if node has an initializer. */ hasInitializer(): boolean; /** * Gets the initializer. */ getInitializer(): Expression | undefined; /** * Gets the initializer or throw. */ getInitializerOrThrow(): Expression; /** * Removes the initailizer. */ removeInitializer(): this; /** * Sets the initializer. * @param text - New text to set for the initializer. */ setInitializer(text: string): this; } export declare function InitializerExpressionableNode<T extends Constructor<InitializerExpressionedExtensionType>>(Base: T): Constructor<InitializerExpressionableNode> & T;