Skip to main content

Home > @microsoft/api-extractor-model

api-extractor-model package

Use this library to read and write *.api.json files as defined by the API Extractor tool. These files are used to generate a documentation website for your TypeScript package. The files store the API signatures and doc comments that were extracted from your package.


ApiCallSignatureRepresents a TypeScript function call signature.
ApiClassRepresents a TypeScript class declaration.
ApiConstructorRepresents a TypeScript class constructor declaration that belongs to an ApiClass.
ApiConstructSignatureRepresents a TypeScript construct signature that belongs to an ApiInterface.
ApiDeclaredItemThe base class for API items that have an associated source code excerpt containing a TypeScript declaration.
ApiDocumentedItemAn abstract base class for API declarations that can have an associated TSDoc comment.
ApiEntryPointRepresents the entry point for an NPM package.
ApiEnumRepresents a TypeScript enum declaration.
ApiEnumMemberRepresents a member of a TypeScript enum declaration.
ApiFunctionRepresents a TypeScript function declaration.
ApiIndexSignatureRepresents a TypeScript index signature.
ApiInterfaceRepresents a TypeScript class declaration.
ApiItemThe abstract base class for all members of an ApiModel object.
ApiMethodRepresents a TypeScript member function declaration that belongs to an ApiClass.
ApiMethodSignatureRepresents a TypeScript member function declaration that belongs to an ApiInterface.
ApiModelA serializable representation of a collection of API declarations.
ApiNamespaceRepresents a TypeScript namespace declaration.
ApiPackageRepresents an NPM package containing API declarations.
ApiPropertyRepresents a TypeScript property declaration that belongs to an ApiClass.
ApiPropertyItemThe abstract base class for ApiProperty and ApiPropertySignature .
ApiPropertySignatureRepresents a TypeScript property declaration that belongs to an ApiInterface.
ApiTypeAliasRepresents a TypeScript type alias declaration.
ApiVariableRepresents a TypeScript variable declaration.
ExcerptThe Excerpt class is used by ApiDeclaredItem to represent a TypeScript code fragment that may be annotated with hyperlinks to declared types (and in the future, source code locations).
ExcerptTokenRepresents a fragment of text belonging to an Excerpt object.
HeritageTypeRepresents a type referenced via an "extends" or "implements" heritage clause for a TypeScript class.
ParameterRepresents a named parameter for a function-like declaration.
TypeParameterRepresents a named type parameter for a generic declaration.


ApiItemKindThe type returned by the ApiItem.kind property, which can be used to easily distinguish subclasses of ApiItem .
ReleaseTagA "release tag" is a custom TSDoc tag that is applied to an API to communicate the level of support provided for third-party developers.


ApiItemContainerMixin(baseClass)Mixin function for ApiDeclaredItem .
ApiNameMixin(baseClass)Mixin function for ApiNameMixin .
ApiOptionalMixin(baseClass)Mixin function for ApiOptionalMixin .
ApiParameterListMixin(baseClass)Mixin function for ApiParameterListMixin .
ApiReleaseTagMixin(baseClass)Mixin function for ApiReleaseTagMixin .
ApiReturnTypeMixin(baseClass)Mixin function for ApiReturnTypeMixin .
ApiStaticMixin(baseClass)Mixin function for ApiStaticMixin .
ApiTypeParameterListMixin(baseClass)Mixin function for ApiTypeParameterListMixin .


ApiItemContainerMixinThe mixin base class for API items that act as containers for other child items.
ApiNameMixinThe mixin base class for API items that have a name. For example, a class has a name, but a class constructor does not.
ApiOptionalMixinThe mixin base class for API items that can be marked as optional by appending a ? to them. For example, a property of an interface can be optional.
ApiParameterListMixinThe mixin base class for API items that can have function parameters (but not necessarily a return value).
ApiReleaseTagMixinThe 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.
ApiReturnTypeMixinThe mixin base class for API items that are functions that return a value.
ApiStaticMixinThe mixin base class for API items that can have the TypeScript static keyword applied to them.
ApiTypeParameterListMixinThe mixin base class for API items that can have type parameters.
IApiCallSignatureOptionsConstructor options for ApiCallSignature .
IApiClassOptionsConstructor options for ApiClass .
IApiConstructorOptionsConstructor options for ApiConstructor .
IApiConstructSignatureOptionsConstructor options for ApiConstructor .
IApiDeclaredItemOptionsConstructor options for ApiDeclaredItem .
IApiDocumentedItemOptionsConstructor options for ApiDocumentedItem .
IApiEntryPointOptionsConstructor options for ApiEntryPoint .
IApiEnumMemberOptionsConstructor options for ApiEnumMember .
IApiEnumOptionsConstructor options for ApiEnum .
IApiFunctionOptionsConstructor options for ApiFunction .
IApiIndexSignatureOptionsConstructor options for ApiIndexSignature .
IApiInterfaceOptionsConstructor options for ApiInterface .
IApiItemConstructorThis abstraction is used by the mixin pattern. It describes a class type that inherits from ApiItem .
IApiItemContainerMixinOptionsConstructor options for ApiItemContainerMixin .
IApiItemOptionsConstructor options for ApiItem .
IApiMethodOptionsConstructor options for ApiMethod .
IApiNameMixinOptionsConstructor options for IApiNameMixinOptions .
IApiNamespaceOptionsConstructor options for ApiClass .
IApiOptionalMixinOptionsConstructor options for IApiOptionalMixinOptions .
IApiPackageOptionsConstructor options for ApiPackage .
IApiPackageSaveOptionsOptions for ApiPackage.saveToJsonFile() .
IApiParameterListMixinOptionsConstructor options for ApiParameterListMixin .
IApiParameterOptionsRepresents parameter information that is part of IApiParameterListMixinOptions
IApiPropertyItemOptionsConstructor options for ApiPropertyItem .
IApiPropertyOptionsConstructor options for ApiProperty .
IApiPropertySignatureOptionsConstructor options for ApiPropertySignature .
IApiReleaseTagMixinOptionsConstructor options for ApiReleaseTagMixin .
IApiReturnTypeMixinOptionsConstructor options for ApiReturnTypeMixin .
IApiStaticMixinOptionsConstructor options for IApiStaticMixinOptions .
IApiTypeAliasOptionsConstructor options for ApiTypeAlias .
IApiTypeParameterListMixinOptionsConstructor options for ApiTypeParameterListMixin .
IApiTypeParameterOptionsRepresents parameter information that is part of IApiTypeParameterListMixinOptions
IApiVariableOptionsConstructor options for ApiVariable .
IExcerptTokenRangeUsed by Excerpt to indicate a range of indexes within an array of ExcerptToken objects.
IParameterOptionsConstructor options for Parameter .
IResolveDeclarationReferenceResultResult object for ApiModel.resolveDeclarationReference() .
ITypeParameterOptionsConstructor options for TypeParameter .


ApiItemContainerMixinStatic members for ApiItemContainerMixin .
ApiNameMixinStatic members for ApiNameMixin .
ApiOptionalMixinOptional members for ApiOptionalMixin .
ApiParameterListMixinStatic members for ApiParameterListMixin .
ApiReleaseTagMixinStatic members for ApiReleaseTagMixin .
ApiReturnTypeMixinStatic members for ApiReturnTypeMixin .
ApiStaticMixinStatic members for ApiStaticMixin .
ApiTypeParameterListMixinStatic members for ApiTypeParameterListMixin .
ReleaseTagHelper functions for working with the ReleaseTag enum.

Type Aliases

Type AliasDescription
ConstructorThis abstraction is used by the mixin pattern. It describes a class constructor.
PropertiesOfThis abstraction is used by the mixin pattern. It describes the "static side" of a class.