diff --git a/docs/generators/typescript-fetch.md b/docs/generators/typescript-fetch.md
index af3dd916268..40e7ff4eb2c 100644
--- a/docs/generators/typescript-fetch.md
+++ b/docs/generators/typescript-fetch.md
@@ -76,6 +76,7 @@ sidebar_label: typescript-fetch
HTTPHeaders
HTTPMethod
HTTPQuery
+Index
JSONApiResponse
Middleware
ModelPropertyNaming
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java
index a2f03cfdd3f..38b3f71ac6c 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java
@@ -327,6 +327,9 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege
this.reservedWords.add("VoidApiResponse");
this.reservedWords.add("BlobApiResponse");
this.reservedWords.add("TextApiResponse");
+ // "Index" would create a file "Index.ts" which on case insensitive filesystems
+ // would override our "index.js" file
+ this.reservedWords.add("Index");
}
private boolean getUseSingleRequestParameter() {