UNPKG

@microsoft/api-extractor

Version:

Validate, document, and review the exported API for a TypeScript library

38 lines (37 loc) 1.44 kB
import * as ts from 'typescript'; import { IAstItemOptions } from './AstItem'; import { AstItemContainer } from './AstItemContainer'; /** * This class is part of the AstItem abstract syntax tree. It represents a class, * interface, or type literal expression. */ export declare class AstStructuredType extends AstItemContainer { implements?: string; extends?: string; /** * An array of type parameters for generic classes * Example: Foo<T, S> => ['T', 'S'] */ typeParameters: string[]; /** * The data type of the AstItem.declarationSymbol. This is not the exported alias, * but rather the original that has complete member and inheritance information. */ protected type: ts.Type; private _classLikeDeclaration; private _processedMemberNames; private _setterNames; constructor(options: IAstItemOptions); /** * @virtual */ visitTypeReferencesForAstItem(): void; /** * Returns a line of text such as "class MyClass extends MyBaseClass", excluding the * curly braces and body. The name "MyClass" will be the public name seen by external * callers, not the declared name of the class; @see AstItem.name documentation for details. */ getDeclarationLine(): string; protected onCompleteInitialization(): void; private _processMember(memberSymbol, memberDeclaration); }