@microsoft/api-extractor
Version:
Validate, document, and review the exported API for a TypeScript library
30 lines (29 loc) • 1.68 kB
TypeScript
import AstPackage from '../ast/AstPackage';
import AstItem from '../ast/AstItem';
import AstEnum from '../ast/AstEnum';
import AstEnumValue from '../ast/AstEnumValue';
import AstFunction from '../ast/AstFunction';
import AstStructuredType from '../ast/AstStructuredType';
import AstMember from '../ast/AstMember';
import AstMethod from '../ast/AstMethod';
import AstNamespace from '../ast/AstNamespace';
import AstProperty from '../ast/AstProperty';
import AstModuleVariable from '../ast/AstModuleVariable';
/**
* This is a helper class that provides a standard way to walk the AstItem
* abstract syntax tree.
*/
declare abstract class AstItemVisitor {
protected visit(astItem: AstItem, refObject?: Object): void;
protected abstract visitAstStructuredType(astStructuredType: AstStructuredType, refObject?: Object): void;
protected abstract visitAstEnum(astEnum: AstEnum, refObject?: Object): void;
protected abstract visitAstEnumValue(astEnumValue: AstEnumValue, refObject?: Object): void;
protected abstract visitAstFunction(astFunction: AstFunction, refObject?: Object): void;
protected abstract visitAstPackage(astPackage: AstPackage, refObject?: Object): void;
protected abstract visitAstMember(astMember: AstMember, refObject?: Object): void;
protected abstract visitAstNamespace(astNamespace: AstNamespace, refObject?: Object): void;
protected abstract visitAstModuleVariable(astModuleVariable: AstModuleVariable, refObject?: Object): void;
protected visitAstMethod(astMethod: AstMethod, refObject?: Object): void;
protected visitAstProperty(astProperty: AstProperty, refObject?: Object): void;
}
export default AstItemVisitor;