From 1fa465679c1743bc69d1486e034663930ad6485a Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Sun, 7 Dec 2025 16:50:35 +0800 Subject: [PATCH] Fix ts estree type definition (#18438) --- src/language-js/types/estree.d.ts | 14 +++++++------- src/language-js/types/typescript-estree.ts | 12 +++++++++--- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/language-js/types/estree.d.ts b/src/language-js/types/estree.d.ts index eebe91957..cbfd9aaa7 100644 --- a/src/language-js/types/estree.d.ts +++ b/src/language-js/types/estree.d.ts @@ -53,14 +53,14 @@ export type Node = ExtendNode<_Node>; export type NodeMap = CreateNodeMap; export type CommentMap = CreateNodeMap; -type CreateNodeMap = { - [NodeType in InputNode["type"]]: Extract; +type CreateNodeMap = { + [NodeType in Input["type"]]: Extract; }; -type ExtendNode = InputNode extends _Node +type ExtendNode = Input extends _Node ? { - [Key in keyof InputNode]: ExtendNode; + [Key in keyof Input]: ExtendNode; } & PrettierNodeAdditionalProperties - : InputNode extends readonly (_Node | any)[] - ? ExtendNode[] - : InputNode; + : Input extends readonly any[] + ? ExtendNode[] + : Input; diff --git a/src/language-js/types/typescript-estree.ts b/src/language-js/types/typescript-estree.ts index 6ab22bd09..e6305a249 100644 --- a/src/language-js/types/typescript-estree.ts +++ b/src/language-js/types/typescript-estree.ts @@ -2,9 +2,15 @@ import type { TSESTree } from "@typescript-eslint/typescript-estree"; type NodeOrComment = TSESTree.Node | TSESTree.Comment; -type ConvertTypeToString = { - [Key in keyof Node]: Key extends "type" ? `${Node[Key]}` : Node[Key]; -}; +type ConvertTypeToString = Input extends NodeOrComment + ? { + [Key in keyof Input]: Key extends "type" + ? `${Input[Key]}` + : ConvertTypeToString; + } + : Input extends readonly any[] + ? ConvertTypeToString[] + : Input; export type Node = ConvertTypeToString; export type Comment = ConvertTypeToString;