![Introducing Dashboard Analytics](https://cdn.sanity.io/images/cgdhsj6q/production/af327c5bd94708db501516a75da6870aef894c64-2286x1522.png?w=400&fit=max&auto=format)
Product
Introducing Dashboard Analytics
We're introducing a new Analytics feature in the Socket dashboard so you can view changes in your organization's and repositories' alerts over time.
@typescript-eslint/experimental-utils
Advanced tools
(Experimental) Utilities for working with TypeScript + ESLint together
The @typescript-eslint/experimental-utils package provides various utilities for working with TypeScript and ESLint. It is part of the TypeScript ESLint project, which aims to enable ESLint to support TypeScript. The utilities in this package are considered experimental and are primarily intended for use by developers creating custom ESLint rules for TypeScript codebases.
AST Utilities
Provides utility functions to work with Abstract Syntax Trees (AST), such as checking if a node is an identifier.
const { ASTUtils } = require('@typescript-eslint/experimental-utils');
const { isIdentifier } = ASTUtils;
ESLint Rule Creation
Facilitates the creation of custom ESLint rules with TypeScript support, including a rule creator function that helps define metadata for rules.
const { ESLintUtils } = require('@typescript-eslint/experimental-utils');
const createRule = ESLintUtils.RuleCreator(name => `https://example.com/rule/${name}`);
Type Information
Provides utilities to retrieve type information from TypeScript code, which can be used in custom ESLint rules to perform type-aware linting.
const { TypeScriptUtils } = require('@typescript-eslint/experimental-utils');
const { getParserServices } = TypeScriptUtils;
const parserServices = getParserServices(context);
const checker = parserServices.program.getTypeChecker();
This package provides a set of ESLint rules that help validate proper imports. It is similar to @typescript-eslint/experimental-utils in that it extends ESLint's capabilities, but it focuses specifically on import/export syntax rather than providing a general set of TypeScript utilities.
Similar to @typescript-eslint/experimental-utils, eslint-utils provides utility functions for working with ESLint and ASTs. However, it is not specifically tailored to TypeScript and does not provide type information utilities.
Tsutils is a utility library that provides functions for working with TypeScript's AST and type checker. While it offers some similar functionality to @typescript-eslint/experimental-utils, it is not designed specifically for creating ESLint rules and does not integrate with ESLint out of the box.
Utilities for working with TypeScript + ESLint together.
This package has inherited its version number from the @typescript-eslint
project.
Meaning that even though this package is 2.x.y
, you shouldn't expect 100% stability between minor version bumps.
i.e. treat it as a 0.x.y
package.
Feel free to use it now, and let us know what utilities you need or send us PRs with utilities you build on top of it.
Once it is stable, it will be renamed to @typescript-eslint/util
for a 4.0.0
release.
Name | Description |
---|---|
ASTUtils | Tools for operating on the ESTree AST. Also includes the eslint-utils package, correctly typed to work with the types found in TSESTree |
ESLintUtils | Tools for creating ESLint rules with TypeScript. |
JSONSchema | Types from the @types/json-schema package, re-exported to save you having to manually import them. Also ensures you're using the same version of the types as this package. |
TSESLint | Types for ESLint, correctly typed to work with the types found in TSESTree . |
TSESLintScope | The eslint-scope package, correctly typed to work with the types found in both TSESTree and TSESLint |
TSESTree | Types for the TypeScript flavor of ESTree created by @typescript-eslint/typescript-estree . |
AST_NODE_TYPES | An enum with the names of every single node found in TSESTree . |
AST_TOKEN_TYPES | An enum with the names of every single token found in TSESTree . |
ParserServices | Typing for the parser services provided when parsing a file using @typescript-eslint/typescript-estree . |
FAQs
(Experimental) Utilities for working with TypeScript + ESLint together
The npm package @typescript-eslint/experimental-utils receives a total of 3,841,946 weekly downloads. As such, @typescript-eslint/experimental-utils popularity was classified as popular.
We found that @typescript-eslint/experimental-utils demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
We're introducing a new Analytics feature in the Socket dashboard so you can view changes in your organization's and repositories' alerts over time.
Security News
A new OpenSSF report uncovers critical gaps in secure software training, with 75% of new developers unfamiliar with secure practices, highlighting urgent educational needs.
Security News
The 2023 Python Developers Survey reveals key trends in packaging, web frameworks, and developer demographics, highlighting a shift toward innovative tools as the Python community diversifies and grows among less experienced developers.