@textlint/types
TypeScript icon, indicating that this package has built-in type declarations

14.0.4 • Public • Published

@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.

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Author

License

MIT © azu

Package Sidebar

Install

npm i @textlint/types

Weekly Downloads

112,630

Version

14.0.4

License

MIT

Unpacked Size

121 kB

Total Files

84

Last publish

Collaborators

  • textlint-user
  • azu
  • 0x6b