diff --git a/package.json b/package.json index e5fc04b..f2f8871 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "version": "3.3.1", "description": "A prettier plugins to sort imports in provided RegEx order", "main": "lib/src/index.js", + "types": "types/index.d.ts", "repository": { "url": "https://github.com/trivago/prettier-plugin-sort-imports", "type": "git" diff --git a/src/types.ts b/src/types.ts index 590dce5..6008df3 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1,15 +1,9 @@ import { ExpressionStatement, ImportDeclaration } from '@babel/types'; import { RequiredOptions } from 'prettier'; -export interface PrettierOptions extends RequiredOptions { - importOrder: string[]; - importOrderCaseInsensitive: boolean; - // should be of type ParserPlugin from '@babel/parser' but prettier does not support nested arrays in options - importOrderParserPlugins: string[]; - importOrderSeparation: boolean; - importOrderGroupNamespaceSpecifiers: boolean; - importOrderSortSpecifiers: boolean; -} +import { PluginConfig } from '../types'; + +export interface PrettierOptions extends PluginConfig, RequiredOptions {} export type ImportGroups = Record; export type ImportOrLine = ImportDeclaration | ExpressionStatement; diff --git a/types/index.d.ts b/types/index.d.ts new file mode 100644 index 0000000..43a8944 --- /dev/null +++ b/types/index.d.ts @@ -0,0 +1,13 @@ +import { Config } from 'prettier'; + +export interface PluginConfig { + importOrder: string[]; + importOrderCaseInsensitive: boolean; + // should be of type ParserPlugin from '@babel/parser' but prettier does not support nested arrays in options + importOrderParserPlugins: string[]; + importOrderSeparation: boolean; + importOrderGroupNamespaceSpecifiers: boolean; + importOrderSortSpecifiers: boolean; +} + +export type PrettierConfig = PluginConfig & Config;