diff --git a/crates/oxc_linter/src/rules/typescript/consistent_indexed_object_style.rs b/crates/oxc_linter/src/rules/typescript/consistent_indexed_object_style.rs index 322bd5934ed8d..f94ee32d54aa1 100644 --- a/crates/oxc_linter/src/rules/typescript/consistent_indexed_object_style.rs +++ b/crates/oxc_linter/src/rules/typescript/consistent_indexed_object_style.rs @@ -230,8 +230,8 @@ impl Rule for ConsistentIndexedObjectStyle { ), |fixer| { let key = fixer.source_range(first.span); - let params_span = Span::new(first.span.end + 2, tref.span.end - 1); - let params = fixer.source_range(params_span); + let params_span = Span::new(first.span.end + 1, tref.span.end - 1); + let params = fixer.source_range(params_span).trim(); let content = format!("{{ [key: {key}]: {params} }}"); fixer.replace(tref.span, content) }, @@ -263,6 +263,11 @@ fn test() { "type Foo = { [key: string]: T };", Some(serde_json::json!(["index-signature"])), ), + ( + "export function getCookies (headers: Headers): Record", + "export function getCookies (headers: Headers): { [key: string]: Ă˜string }", + Some(serde_json::json!(["index-signature"])), + ), ]; let pass = vec![