diff --git a/src/services/refactors/moveToNewFile.ts b/src/services/refactors/moveToNewFile.ts
index f762111174d..f283fd5794f 100644
--- a/src/services/refactors/moveToNewFile.ts
+++ b/src/services/refactors/moveToNewFile.ts
@@ -762,7 +762,7 @@ function filterImport(i: SupportedImport, moduleSpecifier: StringLiteralLike, ke
const defaultImport = clause.name && keep(clause.name) ? clause.name : undefined;
const namedBindings = clause.namedBindings && filterNamedBindings(clause.namedBindings, keep);
return defaultImport || namedBindings
- ? factory.createImportDeclaration(/*modifiers*/ undefined, factory.createImportClause(/*isTypeOnly*/ false, defaultImport, namedBindings), moduleSpecifier, /*assertClause*/ undefined)
+ ? factory.createImportDeclaration(/*modifiers*/ undefined, factory.createImportClause(clause.isTypeOnly, defaultImport, namedBindings), moduleSpecifier, /*assertClause*/ undefined)
: undefined;
}
case SyntaxKind.ImportEqualsDeclaration:
diff --git a/tests/cases/fourslash/moveToNewFile_typeImport1.ts b/tests/cases/fourslash/moveToNewFile_typeImport1.ts
new file mode 100644
index 00000000000..e167320e6aa
--- /dev/null
+++ b/tests/cases/fourslash/moveToNewFile_typeImport1.ts
@@ -0,0 +1,21 @@
+///
+
+// @filename: /a.ts
+////export interface A {
+//// x: number;
+////}
+
+// @Filename: /b.ts
+////import type { A } from "./a";
+////[|function f(a: A) {}|]
+
+verify.moveToNewFile({
+ newFileContents: {
+ "/b.ts": "",
+ "/f.ts":
+`import type { A } from "./a";
+
+function f(a: A) { }
+`,
+ },
+});
diff --git a/tests/cases/fourslash/moveToNewFile_typeImport2.ts b/tests/cases/fourslash/moveToNewFile_typeImport2.ts
new file mode 100644
index 00000000000..f916330c123
--- /dev/null
+++ b/tests/cases/fourslash/moveToNewFile_typeImport2.ts
@@ -0,0 +1,21 @@
+///
+
+// @filename: /a.ts
+////export interface A {
+//// x: number;
+////}
+
+// @Filename: /b.ts
+////import { type A } from "./a";
+////[|function f(a: A) {}|]
+
+verify.moveToNewFile({
+ newFileContents: {
+ "/b.ts": "",
+ "/f.ts":
+`import { type A } from "./a";
+
+function f(a: A) { }
+`,
+ },
+});