Skip to content
Branch: master
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
src
test
CHANGELOG.md
LICENSE
README.md
package.json
tsconfig.json

README.md

@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 { TextlintSourceCode, TextlintSourceCodeArgs, TextlintSourceCodeLocation, TextlintSourceCodePosition, TextlintSourceCodeRange } from "@textlint/types";
import { TextlintRuleContextFixCommand } from "@textlint/types";
import { TextlintRuleContextFixCommandGenerator } from "@textlint/types";
import { TextlintRuleError, TextlintRuleErrorPadding, TextlintRuleReportedObject } from "@textlint/types";
import { TextlintRuleSeverityLevel } from "@textlint/types";
import { TextlintRuleContext, TextlintRuleContextArgs, TextlintRuleContextReportFunction, TextlintRuleContextReportFunctionArgs } from "@textlint/types";
import { TextlintRuleOptions } from "@textlint/types";
import { TextlintRuleReporter, TextlintFixableRuleModule, TextlintRuleModule, TextlintRuleReportHandler } from "@textlint/types";
import { TextlintFilterRuleContext, TextlintFilterRuleShouldIgnoreFunction, TextlintFilterRuleShouldIgnoreFunctionArgs } from "@textlint/types";
import { TextlintFilterRuleModule, TextlintFilterRuleOptions, TextlintFilterRuleReporter, TextlintFilterRuleReportHandler } from "@textlint/types";
import { 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

You can’t perform that action at this time.