ts-simple-ast
Version:
TypeScript compiler wrapper for AST navigation and code generation.
23 lines (22 loc) • 773 B
TypeScript
import * as ts from "typescript";
import { Constructor } from "./../../Constructor";
import { Node } from "./../common";
export declare type QuestionTokenableNodeExtensionType = Node<ts.Node & {
questionToken?: ts.QuestionToken;
}>;
export interface QuestionTokenableNode {
/**
* If it has a question token.
*/
hasQuestionToken(): boolean;
/**
* Gets the question token node.
*/
getQuestionTokenNode(): Node<ts.QuestionToken> | undefined;
/**
* Sets if this node is optional.
* @param value - If optional or not.
*/
setIsOptional(value: boolean): this;
}
export declare function QuestionTokenableNode<T extends Constructor<QuestionTokenableNodeExtensionType>>(Base: T): Constructor<QuestionTokenableNode> & T;