web-build-tools API reference

Home > @microsoft/api-extractor

api-extractor package

API Extractor helps you build better TypeScript library packages. It helps with validation, documentation, and reviewing of the exported API for a TypeScript library.


Class Description
ApiCallSignature Represents a TypeScript function call signature.
ApiClass Represents a TypeScript class declaration.
ApiConstructor Represents a TypeScript class constructor declaration that belongs to an ApiClass.
ApiConstructSignature Represents a TypeScript construct signature that belongs to an ApiInterface.
ApiDeclaredItem The base class for API items that have an associated source code excerpt containing a TypeScript declaration.
ApiDocumentedItem An abstract base class for API declarations that can have an associated TSDoc comment.
ApiEntryPoint Represents the entry point for an NPM package.
ApiEnum Represents a TypeScript enum declaration.
ApiEnumMember Represents a member of a TypeScript enum declaration.
ApiFunction Represents a TypeScript function declaration.
ApiIndexSignature Represents a TypeScript index signature.
ApiInterface Represents a TypeScript class declaration.
ApiItem The abstract base class for all members of an ApiModel object.
ApiMethod Represents a TypeScript member function declaration that belongs to an ApiClass.
ApiMethodSignature Represents a TypeScript member function declaration that belongs to an ApiInterface.
ApiModel A serializable representation of a collection of API declarations.
ApiNamespace Represents a TypeScript namespace declaration.
ApiPackage Represents an NPM package containing API declarations.
ApiProperty Represents a TypeScript property declaration that belongs to an ApiClass.
ApiPropertyItem The abstract base class for ApiProperty and ApiPropertySignature.
ApiPropertySignature Represents a TypeScript property declaration that belongs to an ApiInterface.
ApiTypeAlias Represents a TypeScript type alias declaration.
ApiVariable Represents a TypeScript variable declaration.
Excerpt This class is used by ApiDeclaredItem to represent a source code excerpt containing a TypeScript declaration.
Extractor Used to invoke the API Extractor tool.
HeritageType Represents a type referenced via an “extends” or “implements” heritage clause for a TypeScript class.
IndentedWriter (BETA) A utility for writing indented text.
Parameter Represents a named parameter for a function-like declaration.


Enumeration Description
ApiItemKind The type returned by the ApiItem.kind property, which can be used to easily distinguish subclasses of ApiItem.
ExtractorValidationRulePolicy Configuration values used for the IExtractorValidationRulesConfig block.
ReleaseTag A “release tag” is a custom TSDoc tag that is applied to an API to communicate the level of support provided for third-party developers.


Function Description
ApiItemContainerMixin(baseClass) Mixin function for ApiDeclaredItem.
ApiParameterListMixin(baseClass) Mixin function for .
ApiReleaseTagMixin(baseClass) Mixin function for .
ApiReturnTypeMixin(baseClass) Mixin function for .
ApiStaticMixin(baseClass) Mixin function for .


Interface Description
ApiItemContainerMixin The mixin base class for API items that act as containers for other child items.
ApiParameterListMixin The mixin base class for API items that can have function parameters (but not necessarily a return value).
ApiReleaseTagMixin The mixin base class for API items that can be attributed with a TSDoc tag such as @internal, @alpha, @beta, or @public. These “release tags” indicate the support level for an API.
ApiReturnTypeMixin The mixin base class for API items that are functions that return a value.
ApiStaticMixin The mixin base class for API items that can have the TypeScript static keyword applied to them.
IAnalyzeProjectOptions Options for Extractor.processProject().
IApiCallSignatureOptions Constructor options for ApiCallSignature.
IApiClassOptions Constructor options for ApiClass.
IApiConstructorOptions Constructor options for ApiConstructor.
IApiConstructSignatureOptions Constructor options for ApiConstructor.
IApiDeclaredItemOptions Constructor options for ApiDeclaredItem.
IApiDocumentedItemOptions Constructor options for ApiDocumentedItem.
IApiEntryPointOptions Constructor options for ApiEntryPoint.
IApiEnumMemberOptions Constructor options for ApiEnumMember.
IApiEnumOptions Constructor options for ApiEnum.
IApiFunctionOptions Constructor options for ApiFunction.
IApiIndexSignatureOptions Constructor options for ApiIndexSignature.
IApiInterfaceOptions Constructor options for ApiInterface.
IApiItemContainerMixinOptions Constructor options for .
IApiItemOptions Constructor options for ApiItem.
IApiMethodOptions Constructor options for ApiMethod.
IApiNamespaceOptions Constructor options for ApiClass.
IApiPackageOptions Constructor options for ApiPackage.
IApiParameterListMixinOptions Constructor options for .
IApiPropertyItemOptions Constructor options for ApiPropertyItem.
IApiPropertyOptions Constructor options for ApiProperty.
IApiPropertySignatureOptions Constructor options for ApiPropertySignature.
IApiReleaseTagMixinOptions Constructor options for .
IApiReturnTypeMixinOptions Constructor options for .
IApiStaticMixinOptions Constructor options for IApiStaticMixinOptions.
IApiTypeAliasOptions Constructor options for ApiTypeAlias.
IApiVariableOptions Constructor options for ApiVariable.
IExtractorApiJsonFileConfig Configures how the API JSON files (*.api.json) will be generated.
IExtractorApiReviewFileConfig Configures how the API review files (*.api.ts) will be generated.
IExtractorConfig Configuration options for the API Extractor tool. These options can be loaded from a JSON config file.
IExtractorDtsRollupConfig (BETA) Configures how the *.d.ts rollup files will be generated.
IExtractorOptions Runtime options for Extractor.
IExtractorPoliciesConfig These policies determine how API Extractor validates various best practices for API design.
IExtractorProjectConfig Describes a specific project that will be analyzed. In principle, multiple individual projects can be processed while reusing a common compiler state.
IExtractorRuntimeCompilerConfig With this configuration, API Extractor is configured using an already prepared compiler state that is provided programmatically at runtime. This can potentially enable faster builds, by reusing the same compiler invocation for tsc, tslint, and API Extractor.If configType=’runtime’ is specified, then IExtractorRuntimeOptions.compilerProgram must be provided.
IExtractorTsconfigCompilerConfig With this configuration, API Extractor configures the compiler based on settings that it finds in the project’s tsconfig.json file.
IExtractorValidationRulesConfig Configuration for various validation checks that ensure good API design
ILogger Provides a custom logging service to API Extractor.
IParameterOptions Constructor options for Parameter.
IResolveDeclarationReferenceResult Result object for ApiModel.resolveDeclarationReference().


Namespace Description
ApiItemContainerMixin Static members for .
ApiParameterListMixin Static members for .
ApiReleaseTagMixin Static members for .
ApiReturnTypeMixin Static members for .
ApiStaticMixin Static members for .

Type Aliases

Type Alias Description
Copyright © Microsoft Corporation. All rights reserved.