@microsoft/api-extractor
Version:
Validate, document, and review the exported API for a TypeScript library
38 lines (37 loc) • 1.44 kB
TypeScript
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);
}