Package Exports
- @textlint/types
- @textlint/types/lib/src/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@textlint/types) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@textlint/types
Type definition and Typed object package for textlint and textlint rule.
If you import types from @textlint/kernel
in your rule module, please use @textlint/types
instead of it.
Types
Rule types
Rule types includes following definition.
- Rule module types
- Rule report function types
- Rule Context types
Rule types is depended from textlint's rule module and @textlint/kernel
.
By contrasts, textlint's rule module should not depended on @textlint/kernel
- OK: Rule types <--- Rule module
- OK: Rule types <--- Kernel module
- NG: Kernel module <--- Rule module
- NG: Kernel module ---> Rule module
Abstraction Layer
@textlint/types
does not includes implementations.
In other words, It has only type definition file.
Install
Install with npm:
npm install @textlint/types
Usage
import type { TextlintSourceCode, TextlintSourceCodeArgs, TextlintSourceCodeLocation, TextlintSourceCodePosition, TextlintSourceCodeRange } from "@textlint/types";
import type { TextlintRuleContextFixCommand } from "@textlint/types";
import type { TextlintRuleContextFixCommandGenerator } from "@textlint/types";
import type { TextlintRuleError, TextlintRuleErrorPadding, TextlintRuleReportedObject } from "@textlint/types";
import type { TextlintRuleSeverityLevel } from "@textlint/types";
import type { TextlintRuleContext, TextlintRuleContextArgs, TextlintRuleContextReportFunction, TextlintRuleContextReportFunctionArgs } from "@textlint/types";
import type { TextlintRuleOptions } from "@textlint/types";
import type { TextlintRuleReporter, TextlintFixableRuleModule, TextlintRuleModule, TextlintRuleReportHandler } from "@textlint/types";
import type { TextlintFilterRuleContext, TextlintFilterRuleShouldIgnoreFunction, TextlintFilterRuleShouldIgnoreFunctionArgs } from "@textlint/types";
import type { TextlintFilterRuleModule, TextlintFilterRuleOptions, TextlintFilterRuleReporter, TextlintFilterRuleReportHandler } from "@textlint/types";
import type { TextlintPluginCreator, TextlintPluginOptions, TextlintPluginProcessor, TextlintPluginProcessorConstructor } from "@textlint/types";
FAQ
Occur incompatible types between @textlint/types
and other module like textlint-rule-helper
You should check if your @textlint/types
dependencies is duplicated.
@textlint/types
should be deduped.
npm ls @textlint/types
If your dependencies is duplicated, you should update modules that are depended on @textlint/types
.
Versioning Policy
@textlint/types
is not semantic versioning.
Because, This library provide only TypeScript definition.
It is hard that we follow a semantic versioning.
- patch: fix bugs, maybe includes breaking change
- minor: add new types, maybe includes breaking change
- major: includes breaking change
Changelog
See Releases page.
Running tests
Install devDependencies and Run npm test
:
npm test
Contributing
Pull requests and stars are always welcome.
For bugs and feature requests, please create an issue.
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
Author
License
MIT © azu