UNPKG

ts-simple-ast

Version:

TypeScript compiler wrapper for AST navigation and code generation.

35 lines (34 loc) 1.14 kB
import { Constructor } from "./../../Constructor"; import { JSDocStructure } from "./../../structures"; import { Node } from "./../common"; import { JSDoc } from "./../doc/JSDoc"; export declare type JSDocableNodeExtensionType = Node<any>; export interface JSDocableNode { /** * Gets the JS doc nodes. */ getJsDocs(): JSDoc[]; /** * Adds a JS doc. * @param structure - Structure to add. */ addJsDoc(structure: JSDocStructure): JSDoc; /** * Adds JS docs. * @param structures - Structures to add. */ addJsDocs(structures: JSDocStructure[]): JSDoc[]; /** * Inserts a JS doc. * @param index - Index to insert at. * @param structure - Structure to insert. */ insertJsDoc(index: number, structure: JSDocStructure): JSDoc; /** * Inserts JS docs. * @param index - Index to insert at. * @param structures - Structures to insert. */ insertJsDocs(index: number, structures: JSDocStructure[]): JSDoc[]; } export declare function JSDocableNode<T extends Constructor<JSDocableNodeExtensionType>>(Base: T): Constructor<JSDocableNode> & T;