diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java
index 48576050bd2c9756625358a5b0e8b41f816196e2..934fef92462c48728febda13e32873ea0882dcff 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java
@@ -114,9 +114,6 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
 
         this.generatorMetadata = GeneratorMetadata.newBuilder(generatorMetadata).stability(Stability.EXPERIMENTAL).build();
 
-        // clear import mapping (from default generator) as TS does not use it
-        // at the moment
-        importMapping.clear();
         outputFolder = "generated-code" + File.separator + "typescript";
         embeddedTemplateDir = templateDir = "typescript";
 
@@ -237,7 +234,7 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
         supportingFiles.add(new SupportingFile("types" + File.separator + "ObjectParamAPI.mustache", "types", "ObjectParamAPI.ts"));
 
         // models
-        setModelPackage("");
+        setModelPackage("models");
         supportingFiles.add(new SupportingFile("model" + File.separator + "ObjectSerializer.mustache", "models", "ObjectSerializer.ts"));
         modelTemplateFiles.put("model" + File.separator + "model.mustache", ".ts");
 
@@ -325,8 +322,7 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
         // Add additional filename information for model imports in the apis
         List<Map<String, String>> imports = operations.getImports();
         for (Map<String, String> im : imports) {
-            im.put("filename", im.get("import").replace(".", "/"));
-            im.put("classname", getModelnameFromModelFilename(im.get("import")));
+            im.put("filename", im.get("import"));
         }
 
         OperationMap operationsMap = operations.getOperations();
@@ -362,11 +358,6 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
         return String.join(" | ", returnTypes);
     }
 
-    private String getModelnameFromModelFilename(String filename) {
-        String name = filename.substring((modelPackage() + File.separator).length());
-        return camelize(name);
-    }
-
     @Override
     public String escapeReservedWord(String name) {
         if (this.reservedWordsMappings().containsKey(name)) {
@@ -413,6 +404,11 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
         return toTypescriptTypeName(fullModelName, "Model");
     }
 
+    @Override
+    public String toModelImport(String name) {
+        return ".." + File.separator + modelPackage() + File.separator + toModelName(name);
+    }
+
     protected String addPrefix(String name, String prefix) {
         if (!StringUtils.isEmpty(prefix)) {
             name = prefix + "_" + name;
@@ -466,7 +462,6 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
         return toModelName(name);
     }
 
-
     @Override
     protected String getParameterDataType(Parameter parameter, Schema p) {
         // handle enums of various data types
@@ -731,14 +726,13 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
                 HashMap<String, String> tsImport = new HashMap<>();
                 // TVG: This is used as class name in the import statements of the model file
                 tsImport.put("classname", im);
-                tsImport.put("filename", toModelFilename(im));
+                tsImport.put("filename", importMapping.getOrDefault(im, toModelImport(im)));
                 tsImports.add(tsImport);
             }
         }
         return tsImports;
     }
 
-
     @Override
     public Map<String, ModelsMap> postProcessAllModels(Map<String, ModelsMap> objs) {
         Map<String, ModelsMap> result = super.postProcessAllModels(objs);
@@ -809,7 +803,6 @@ public class TypeScriptClientCodegen extends DefaultCodegen implements CodegenCo
 
         // change package names
         apiPackage = this.apiPackage + ".apis";
-        modelPackage = this.modelPackage + ".models";
         testPackage = this.testPackage + ".tests";
 
         additionalProperties.putIfAbsent(FRAMEWORK_SWITCH, FRAMEWORKS[0]);
diff --git a/modules/openapi-generator/src/main/resources/typescript/api/api.mustache b/modules/openapi-generator/src/main/resources/typescript/api/api.mustache
index a99424df3e0b7f8447943aae29fa2ab47f117328..6de0ab056da237c42b909c0959220e609c3b3422 100644
--- a/modules/openapi-generator/src/main/resources/typescript/api/api.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/api/api.mustache
@@ -18,7 +18,7 @@ import { injectable } from "inversify";
 {{/useInversify}}
 
 {{#imports}}
-import { {{classname}} } from '..{{filename}}{{extensionForDeno}}';
+import { {{classname}} } from '{{filename}}{{extensionForDeno}}';
 {{/imports}}
 {{#operations}}
 
diff --git a/modules/openapi-generator/src/main/resources/typescript/model/ObjectSerializer.mustache b/modules/openapi-generator/src/main/resources/typescript/model/ObjectSerializer.mustache
index ad206fab99ca3487456db586355cf40a9ca2c503..2109b58507ed038baf70ea6fbb0ea5eece4b56e0 100644
--- a/modules/openapi-generator/src/main/resources/typescript/model/ObjectSerializer.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/model/ObjectSerializer.mustache
@@ -1,12 +1,12 @@
 {{#models}}
 {{#model}}
-export * from './{{{ classFilename }}}{{extensionForDeno}}';
+export * from '{{{ importPath }}}{{extensionForDeno}}';
 {{/model}}
 {{/models}}
 
 {{#models}}
 {{#model}}
-import { {{classname}}{{#hasEnums}}{{#vars}}{{#isEnum}}, {{classname}}{{enumName}} {{/isEnum}} {{/vars}}{{/hasEnums}} } from './{{{ classFilename }}}{{extensionForDeno}}';
+import { {{classname}}{{#hasEnums}}{{#vars}}{{#isEnum}}, {{classname}}{{enumName}} {{/isEnum}} {{/vars}}{{/hasEnums}} } from '{{{ importPath }}}{{extensionForDeno}}';
 {{/model}}
 {{/models}}
 
diff --git a/modules/openapi-generator/src/main/resources/typescript/model/model.mustache b/modules/openapi-generator/src/main/resources/typescript/model/model.mustache
index e0e4f0bf39f61d2f8b659f3c68ea9d9b26364c1f..f7a5d8aa68390b195dd9c603606fcd533c422c99 100644
--- a/modules/openapi-generator/src/main/resources/typescript/model/model.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/model/model.mustache
@@ -2,7 +2,7 @@
 {{#models}}
 {{#model}}
 {{#tsImports}}
-import { {{classname}} } from './{{filename}}{{extensionForDeno}}';
+import { {{classname}} } from '{{filename}}{{extensionForDeno}}';
 {{/tsImports}}
 import { HttpFile } from '../http/http{{extensionForDeno}}';
 
diff --git a/modules/openapi-generator/src/main/resources/typescript/model/models_all.mustache b/modules/openapi-generator/src/main/resources/typescript/model/models_all.mustache
index 43782db7ef5522348d37b32fa1192cee81e616a5..99adf56f71be0ee07fde51dbf62a0e9d5a3845ec 100644
--- a/modules/openapi-generator/src/main/resources/typescript/model/models_all.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/model/models_all.mustache
@@ -1,5 +1,5 @@
 {{#models}}
 {{#model}}
-export * from './{{{ classFilename }}}{{extensionForDeno}}'
+export * from '{{{ importPath }}}{{extensionForDeno}}'
 {{/model}}
 {{/models}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/typescript/services/ObjectParamAPI.mustache b/modules/openapi-generator/src/main/resources/typescript/services/ObjectParamAPI.mustache
index e6aabfc1224494bebe29da86d6c803cf5a9a3a1d..860e2a0ff952993a4748af412b4eacdb53d02644 100644
--- a/modules/openapi-generator/src/main/resources/typescript/services/ObjectParamAPI.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/services/ObjectParamAPI.mustache
@@ -7,7 +7,7 @@ import type { Observable } from 'rxjs';
 
 {{#models}}
 {{#model}}
-import type { {{{ classname }}} } from '../models/{{{ classFilename }}}';
+import type { {{{ classname }}} } from '{{{ importPath }}}';
 {{/model}}
 {{/models}}
 {{#apiInfo}}
diff --git a/modules/openapi-generator/src/main/resources/typescript/services/ObservableAPI.mustache b/modules/openapi-generator/src/main/resources/typescript/services/ObservableAPI.mustache
index 036d44dadf50719b7b5428b3e31b8a66f1078ed3..336ec7aa2eb88dff555598a135efcf59dd481a94 100644
--- a/modules/openapi-generator/src/main/resources/typescript/services/ObservableAPI.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/services/ObservableAPI.mustache
@@ -4,7 +4,7 @@ import type { Configuration } from "../configuration";
 
 {{#models}}
 {{#model}}
-import { {{{ classname }}} } from "../models/{{{ classFilename }}}";
+import { {{{ classname }}} } from "{{{ importPath }}}";
 {{/model}}
 {{/models}}
 {{#apiInfo}}
diff --git a/modules/openapi-generator/src/main/resources/typescript/services/PromiseAPI.mustache b/modules/openapi-generator/src/main/resources/typescript/services/PromiseAPI.mustache
index e1455c52c80dcc2e075d7f253f94f33a9bee02d2..1f6c1098ff595026037485971152320c8027ce76 100644
--- a/modules/openapi-generator/src/main/resources/typescript/services/PromiseAPI.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/services/PromiseAPI.mustache
@@ -3,7 +3,7 @@ import type { Configuration } from "../configuration";
 
 {{#models}}
 {{#model}}
-import { {{{ classname }}} } from "../models/{{{ classFilename }}}";
+import { {{{ classname }}} } from "{{{ importPath }}}";
 {{/model}}
 {{/models}}
 {{#apiInfo}}
diff --git a/modules/openapi-generator/src/main/resources/typescript/services/api.mustache b/modules/openapi-generator/src/main/resources/typescript/services/api.mustache
index 1494e1f71e656897626203f3c0a0036f30b2d96c..24d254d74a82d118d6d128153d6e704826de3f5c 100644
--- a/modules/openapi-generator/src/main/resources/typescript/services/api.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/services/api.mustache
@@ -2,7 +2,7 @@ import type { Configuration } from "../configuration";
 import type { HttpFile, RequestContext, ResponseContext } from "../http/http";
 
 {{#imports}}
-import { {{classname}} } from "..{{filename}}";
+import { {{classname}} } from "{{filename}}";
 {{/imports}}
 {{#operations}}
 
diff --git a/modules/openapi-generator/src/main/resources/typescript/types/ObjectParamAPI.mustache b/modules/openapi-generator/src/main/resources/typescript/types/ObjectParamAPI.mustache
index 9a63903371883e295a5a5941234ac5459bbebbdd..41969c178c11eef1e92ecdd1b87933c791c831f0 100644
--- a/modules/openapi-generator/src/main/resources/typescript/types/ObjectParamAPI.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/types/ObjectParamAPI.mustache
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http{{extensionForDeno}}';
-import * as models from '../models/all{{extensionForDeno}}';
 import { Configuration} from '../configuration{{extensionForDeno}}'
 {{#useRxJS}}
 import { Observable } from 'rxjs';
@@ -7,7 +6,7 @@ import { Observable } from 'rxjs';
 
 {{#models}}
 {{#model}}
-import { {{{ classname }}} } from '../models/{{{ classFilename }}}{{extensionForDeno}}';
+import { {{{ classname }}} } from '{{{ importPath }}}{{extensionForDeno}}';
 {{/model}}
 {{/models}}
 {{#apiInfo}}
diff --git a/modules/openapi-generator/src/main/resources/typescript/types/ObservableAPI.mustache b/modules/openapi-generator/src/main/resources/typescript/types/ObservableAPI.mustache
index 80b41d323641b159827bebb8d6baff29e5d5b6d8..60160493758fba90098934aef8b97e1f60b31fe8 100644
--- a/modules/openapi-generator/src/main/resources/typescript/types/ObservableAPI.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/types/ObservableAPI.mustache
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http{{extensionForDeno}}';
-import * as models from '../models/all{{extensionForDeno}}';
 import { Configuration} from '../configuration{{extensionForDeno}}'
 import { Observable, of, from } from {{#useRxJS}}'rxjs'{{/useRxJS}}{{^useRxJS}}'../rxjsStub{{extensionForDeno}}'{{/useRxJS}};
 import {mergeMap, map} from  {{#useRxJS}}'rxjs/operators'{{/useRxJS}}{{^useRxJS}}'../rxjsStub{{extensionForDeno}}'{{/useRxJS}};
@@ -9,7 +8,7 @@ import { AbstractConfiguration } from "../services/configuration{{extensionForDe
 {{/useInversify}}
 {{#models}}
 {{#model}}
-import { {{{ classname }}} } from '../models/{{{ classFilename }}}{{extensionForDeno}}';
+import { {{{ classname }}} } from '{{{ importPath }}}{{extensionForDeno}}';
 {{/model}}
 {{/models}}
 {{#apiInfo}}
diff --git a/modules/openapi-generator/src/main/resources/typescript/types/PromiseAPI.mustache b/modules/openapi-generator/src/main/resources/typescript/types/PromiseAPI.mustache
index 2c424db21fb48968b1068de8644a529dbdc9610b..058757c48df83c45623eabbf5c769cc729d90a9d 100644
--- a/modules/openapi-generator/src/main/resources/typescript/types/PromiseAPI.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript/types/PromiseAPI.mustache
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http{{extensionForDeno}}';
-import * as models from '../models/all{{extensionForDeno}}';
 import { Configuration} from '../configuration{{extensionForDeno}}'
 {{#useInversify}}
 import { injectable, inject, optional } from "inversify";
@@ -8,7 +7,7 @@ import { AbstractConfiguration } from "../services/configuration";
 
 {{#models}}
 {{#model}}
-import { {{{ classname }}} } from '../models/{{{ classFilename }}}{{extensionForDeno}}';
+import { {{{ classname }}} } from '{{{ importPath }}}{{extensionForDeno}}';
 {{/model}}
 {{/models}}
 {{#apiInfo}}
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/TypeScriptClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/TypeScriptClientCodegenTest.java
index 3616af273c284d043abbcb206d39bea357948f94..f7dd4c773135450f7417b7d7141ae7649f10a63f 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/TypeScriptClientCodegenTest.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/TypeScriptClientCodegenTest.java
@@ -9,10 +9,16 @@ import org.openapitools.codegen.CodegenOperation;
 import org.openapitools.codegen.DefaultCodegen;
 import org.openapitools.codegen.TestUtils;
 import org.openapitools.codegen.languages.TypeScriptClientCodegen;
+import org.openapitools.codegen.model.ModelMap;
+import org.openapitools.codegen.model.ModelsMap;
 import org.openapitools.codegen.utils.ModelUtils;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
 
 public class TypeScriptClientCodegenTest {
     @Test
@@ -98,4 +104,40 @@ public class TypeScriptClientCodegenTest {
             Assert.fail("Exception was thrown.");
         }
     }
+
+    @Test
+    public void defaultModelImportTest() {
+        final DefaultCodegen codegen = new TypeScriptClientCodegen();
+
+        final CodegenModel cm = new CodegenModel();
+        cm.setImports(Collections.singleton("ApiResponse"));
+        final ModelsMap models = new ModelsMap();
+        final ModelMap model = new ModelMap();
+        model.setModel(cm);
+        models.setModels(Collections.singletonList(model));
+
+        final ModelsMap processedModels = codegen.postProcessModels(models);
+        final List<Map<String, String>> tsImports = (List<Map<String, String>>) processedModels.getModels().get(0).get("tsImports");
+        Assert.assertEquals(tsImports.get(0).get("filename"), "../models/ApiResponse");
+        Assert.assertEquals(tsImports.get(0).get("classname"), "ApiResponse");
+    }
+
+    @Test
+    public void modelImportWithMappingTest() {
+        final DefaultCodegen codegen = new TypeScriptClientCodegen();
+        final String mappedName = "@namespace/dir/response";
+        codegen.importMapping().put("ApiResponse", mappedName);
+
+        final CodegenModel cm = new CodegenModel();
+        cm.setImports(Collections.singleton("ApiResponse"));
+        final ModelsMap models = new ModelsMap();
+        final ModelMap model = new ModelMap();
+        model.setModel(cm);
+        models.setModels(Collections.singletonList(model));
+
+        final ModelsMap processedModels = codegen.postProcessModels(models);
+        final List<Map<String, String>> tsImports = (List<Map<String, String>>) processedModels.getModels().get(0).get("tsImports");
+        Assert.assertEquals(tsImports.get(0).get("filename"), mappedName);
+        Assert.assertEquals(tsImports.get(0).get("classname"), "ApiResponse");
+    }
 }
diff --git a/samples/client/others/typescript/builds/with-unique-items/models/ObjectSerializer.ts b/samples/client/others/typescript/builds/with-unique-items/models/ObjectSerializer.ts
index 0f13bb101d1f1efc12f4021ea344daca45f3fd0e..b833844acc1089a9ffcde372d43a3776edf2fbf3 100644
--- a/samples/client/others/typescript/builds/with-unique-items/models/ObjectSerializer.ts
+++ b/samples/client/others/typescript/builds/with-unique-items/models/ObjectSerializer.ts
@@ -1,6 +1,6 @@
-export * from './Response';
+export * from '../models/Response';
 
-import { Response } from './Response';
+import { Response } from '../models/Response';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/client/others/typescript/builds/with-unique-items/models/all.ts b/samples/client/others/typescript/builds/with-unique-items/models/all.ts
index 1497e2a37bd1bcbe69bed5d55053fbbb51d8a23d..fb6a6246f9a8174018d3217e4188fedee63eac7f 100644
--- a/samples/client/others/typescript/builds/with-unique-items/models/all.ts
+++ b/samples/client/others/typescript/builds/with-unique-items/models/all.ts
@@ -1 +1 @@
-export * from './Response'
+export * from '../models/Response'
diff --git a/samples/client/others/typescript/builds/with-unique-items/types/ObjectParamAPI.ts b/samples/client/others/typescript/builds/with-unique-items/types/ObjectParamAPI.ts
index e2a0f69d78f3ea52f6ffd4ee972a99787d747165..fa8ba7a0a9b9e59a892d2a5de631aeec0d4a6c63 100644
--- a/samples/client/others/typescript/builds/with-unique-items/types/ObjectParamAPI.ts
+++ b/samples/client/others/typescript/builds/with-unique-items/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { Response } from '../models/Response';
diff --git a/samples/client/others/typescript/builds/with-unique-items/types/ObservableAPI.ts b/samples/client/others/typescript/builds/with-unique-items/types/ObservableAPI.ts
index 42726c3f3d1a77c558ada275d4a7f945ea8a594e..683cd89061d1e6a03f5f548fa3becee71db3237c 100644
--- a/samples/client/others/typescript/builds/with-unique-items/types/ObservableAPI.ts
+++ b/samples/client/others/typescript/builds/with-unique-items/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { Observable, of, from } from '../rxjsStub';
 import {mergeMap, map} from  '../rxjsStub';
diff --git a/samples/client/others/typescript/builds/with-unique-items/types/PromiseAPI.ts b/samples/client/others/typescript/builds/with-unique-items/types/PromiseAPI.ts
index 6df624fc4a29fa7f935e2a1debf7d77a0bf2e0b1..d0e502467ec1e41bc3113f6424b7d58ed78207ec 100644
--- a/samples/client/others/typescript/builds/with-unique-items/types/PromiseAPI.ts
+++ b/samples/client/others/typescript/builds/with-unique-items/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { Response } from '../models/Response';
diff --git a/samples/openapi3/client/petstore/typescript/builds/browser/models/ObjectSerializer.ts b/samples/openapi3/client/petstore/typescript/builds/browser/models/ObjectSerializer.ts
index af4c03dc0bf028d8bf75be83cefd6d2efcadb14f..a5f5708b12c9617d6d172042e6c6357112f48efb 100644
--- a/samples/openapi3/client/petstore/typescript/builds/browser/models/ObjectSerializer.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/browser/models/ObjectSerializer.ts
@@ -1,16 +1,16 @@
-export * from './ApiResponse';
-export * from './Category';
-export * from './Order';
-export * from './Pet';
-export * from './Tag';
-export * from './User';
-
-import { ApiResponse } from './ApiResponse';
-import { Category } from './Category';
-import { Order    , OrderStatusEnum    } from './Order';
-import { Pet     , PetStatusEnum   } from './Pet';
-import { Tag } from './Tag';
-import { User } from './User';
+export * from '../models/ApiResponse';
+export * from '../models/Category';
+export * from '../models/Order';
+export * from '../models/Pet';
+export * from '../models/Tag';
+export * from '../models/User';
+
+import { ApiResponse } from '../models/ApiResponse';
+import { Category } from '../models/Category';
+import { Order    , OrderStatusEnum    } from '../models/Order';
+import { Pet     , PetStatusEnum   } from '../models/Pet';
+import { Tag } from '../models/Tag';
+import { User } from '../models/User';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/openapi3/client/petstore/typescript/builds/browser/models/Pet.ts b/samples/openapi3/client/petstore/typescript/builds/browser/models/Pet.ts
index 6b191ad8d707e93d24f224c9d32f0ad55f6b95cf..b3a7ddb9f71983d3771836bf925e657722594216 100644
--- a/samples/openapi3/client/petstore/typescript/builds/browser/models/Pet.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/browser/models/Pet.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { Category } from './Category';
-import { Tag } from './Tag';
+import { Category } from '../models/Category';
+import { Tag } from '../models/Tag';
 import { HttpFile } from '../http/http';
 
 /**
diff --git a/samples/openapi3/client/petstore/typescript/builds/browser/models/all.ts b/samples/openapi3/client/petstore/typescript/builds/browser/models/all.ts
index 2edba7f0bd56abe7a02a52cd7b1dcfeb9a1750fa..d63b43c9674483abf7588651a050c933507c7dea 100644
--- a/samples/openapi3/client/petstore/typescript/builds/browser/models/all.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/browser/models/all.ts
@@ -1,6 +1,6 @@
-export * from './ApiResponse'
-export * from './Category'
-export * from './Order'
-export * from './Pet'
-export * from './Tag'
-export * from './User'
+export * from '../models/ApiResponse'
+export * from '../models/Category'
+export * from '../models/Order'
+export * from '../models/Pet'
+export * from '../models/Tag'
+export * from '../models/User'
diff --git a/samples/openapi3/client/petstore/typescript/builds/browser/types/ObjectParamAPI.ts b/samples/openapi3/client/petstore/typescript/builds/browser/types/ObjectParamAPI.ts
index bad3c9fc25ff1a77098c38124b33d797602ffafe..acc26d9ef93a761f940034e20057ceb91b070ece 100644
--- a/samples/openapi3/client/petstore/typescript/builds/browser/types/ObjectParamAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/browser/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/browser/types/ObservableAPI.ts b/samples/openapi3/client/petstore/typescript/builds/browser/types/ObservableAPI.ts
index 74f57a7e1c7c34ca48fd9d5737e9c6c4aab9e8d9..b5b9a542b2451455e3036807f68a0dc4f434c507 100644
--- a/samples/openapi3/client/petstore/typescript/builds/browser/types/ObservableAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/browser/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { Observable, of, from } from '../rxjsStub';
 import {mergeMap, map} from  '../rxjsStub';
diff --git a/samples/openapi3/client/petstore/typescript/builds/browser/types/PromiseAPI.ts b/samples/openapi3/client/petstore/typescript/builds/browser/types/PromiseAPI.ts
index 92d57b673df00c4e014fcae4f860433e66897d26..7279c47febddb1be0e12ec864f3b6f45b50cae92 100644
--- a/samples/openapi3/client/petstore/typescript/builds/browser/types/PromiseAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/browser/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/ObjectSerializer.ts b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/ObjectSerializer.ts
index bd424851dadc1d19631181feefbf76d311332145..6317becfd980bfe2ad8ac851ad123fe52edff323 100644
--- a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/ObjectSerializer.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/ObjectSerializer.ts
@@ -1,22 +1,22 @@
-export * from './Cat';
-export * from './CatAllOf';
-export * from './Dog';
-export * from './DogAllOf';
-export * from './FilePostRequest';
-export * from './PetByAge';
-export * from './PetByType';
-export * from './PetsFilteredPatchRequest';
-export * from './PetsPatchRequest';
+export * from '../models/Cat';
+export * from '../models/CatAllOf';
+export * from '../models/Dog';
+export * from '../models/DogAllOf';
+export * from '../models/FilePostRequest';
+export * from '../models/PetByAge';
+export * from '../models/PetByType';
+export * from '../models/PetsFilteredPatchRequest';
+export * from '../models/PetsPatchRequest';
 
-import { Cat } from './Cat';
-import { CatAllOf } from './CatAllOf';
-import { Dog , DogBreedEnum   } from './Dog';
-import { DogAllOf , DogAllOfBreedEnum   } from './DogAllOf';
-import { FilePostRequest } from './FilePostRequest';
-import { PetByAge } from './PetByAge';
-import { PetByType, PetByTypePetTypeEnum    } from './PetByType';
-import { PetsFilteredPatchRequest  , PetsFilteredPatchRequestPetTypeEnum    } from './PetsFilteredPatchRequest';
-import { PetsPatchRequest   , PetsPatchRequestBreedEnum   } from './PetsPatchRequest';
+import { Cat } from '../models/Cat';
+import { CatAllOf } from '../models/CatAllOf';
+import { Dog , DogBreedEnum   } from '../models/Dog';
+import { DogAllOf , DogAllOfBreedEnum   } from '../models/DogAllOf';
+import { FilePostRequest } from '../models/FilePostRequest';
+import { PetByAge } from '../models/PetByAge';
+import { PetByType, PetByTypePetTypeEnum    } from '../models/PetByType';
+import { PetsFilteredPatchRequest  , PetsFilteredPatchRequestPetTypeEnum    } from '../models/PetsFilteredPatchRequest';
+import { PetsPatchRequest   , PetsPatchRequestBreedEnum   } from '../models/PetsPatchRequest';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsFilteredPatchRequest.ts b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsFilteredPatchRequest.ts
index 8e4fae3898eef7a02a4a64e576b439bfc45c7b49..12ae18d6b74e81945db7678a78fdc923eb4fa864 100644
--- a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsFilteredPatchRequest.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsFilteredPatchRequest.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { PetByAge } from './PetByAge';
-import { PetByType } from './PetByType';
+import { PetByAge } from '../models/PetByAge';
+import { PetByType } from '../models/PetByType';
 import { HttpFile } from '../http/http';
 
 export class PetsFilteredPatchRequest {
diff --git a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsPatchRequest.ts b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsPatchRequest.ts
index e035f280536abb3cc93388c3d5a970f8cf0ff783..c68b69a32965f851f0d121c55629703c3f35969d 100644
--- a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsPatchRequest.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/PetsPatchRequest.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { Cat } from './Cat';
-import { Dog } from './Dog';
+import { Cat } from '../models/Cat';
+import { Dog } from '../models/Dog';
 import { HttpFile } from '../http/http';
 
 export class PetsPatchRequest {
diff --git a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/all.ts b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/all.ts
index 61fd42f246b5e32bcb1761f645fa14ad522f98c8..029557b7a2a8e2426d06619dad2af55b76d816cb 100644
--- a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/all.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/models/all.ts
@@ -1,9 +1,9 @@
-export * from './Cat'
-export * from './CatAllOf'
-export * from './Dog'
-export * from './DogAllOf'
-export * from './FilePostRequest'
-export * from './PetByAge'
-export * from './PetByType'
-export * from './PetsFilteredPatchRequest'
-export * from './PetsPatchRequest'
+export * from '../models/Cat'
+export * from '../models/CatAllOf'
+export * from '../models/Dog'
+export * from '../models/DogAllOf'
+export * from '../models/FilePostRequest'
+export * from '../models/PetByAge'
+export * from '../models/PetByType'
+export * from '../models/PetsFilteredPatchRequest'
+export * from '../models/PetsPatchRequest'
diff --git a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObjectParamAPI.ts b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObjectParamAPI.ts
index ac317b1e0e6dd15deba054dbf12303bf83f697df..073f6550336f26953cb47fab3118cca561ebe58f 100644
--- a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObjectParamAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { Cat } from '../models/Cat';
diff --git a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObservableAPI.ts b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObservableAPI.ts
index 15651a2bcac169797777d2848db36dea90d908b6..52b5367f4b73873066d9947b47edd37f1d3c28d2 100644
--- a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObservableAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { Observable, of, from } from '../rxjsStub';
 import {mergeMap, map} from  '../rxjsStub';
diff --git a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/PromiseAPI.ts b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/PromiseAPI.ts
index 91071153a853ac271bd32acf64f9603dfb8592ef..a42cc756888895ee5dbec9676e05485a0ff7cfb3 100644
--- a/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/PromiseAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/composed-schemas/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { Cat } from '../models/Cat';
diff --git a/samples/openapi3/client/petstore/typescript/builds/default/models/ObjectSerializer.ts b/samples/openapi3/client/petstore/typescript/builds/default/models/ObjectSerializer.ts
index af4c03dc0bf028d8bf75be83cefd6d2efcadb14f..a5f5708b12c9617d6d172042e6c6357112f48efb 100644
--- a/samples/openapi3/client/petstore/typescript/builds/default/models/ObjectSerializer.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/default/models/ObjectSerializer.ts
@@ -1,16 +1,16 @@
-export * from './ApiResponse';
-export * from './Category';
-export * from './Order';
-export * from './Pet';
-export * from './Tag';
-export * from './User';
-
-import { ApiResponse } from './ApiResponse';
-import { Category } from './Category';
-import { Order    , OrderStatusEnum    } from './Order';
-import { Pet     , PetStatusEnum   } from './Pet';
-import { Tag } from './Tag';
-import { User } from './User';
+export * from '../models/ApiResponse';
+export * from '../models/Category';
+export * from '../models/Order';
+export * from '../models/Pet';
+export * from '../models/Tag';
+export * from '../models/User';
+
+import { ApiResponse } from '../models/ApiResponse';
+import { Category } from '../models/Category';
+import { Order    , OrderStatusEnum    } from '../models/Order';
+import { Pet     , PetStatusEnum   } from '../models/Pet';
+import { Tag } from '../models/Tag';
+import { User } from '../models/User';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/openapi3/client/petstore/typescript/builds/default/models/Pet.ts b/samples/openapi3/client/petstore/typescript/builds/default/models/Pet.ts
index 6b191ad8d707e93d24f224c9d32f0ad55f6b95cf..b3a7ddb9f71983d3771836bf925e657722594216 100644
--- a/samples/openapi3/client/petstore/typescript/builds/default/models/Pet.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/default/models/Pet.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { Category } from './Category';
-import { Tag } from './Tag';
+import { Category } from '../models/Category';
+import { Tag } from '../models/Tag';
 import { HttpFile } from '../http/http';
 
 /**
diff --git a/samples/openapi3/client/petstore/typescript/builds/default/models/all.ts b/samples/openapi3/client/petstore/typescript/builds/default/models/all.ts
index 2edba7f0bd56abe7a02a52cd7b1dcfeb9a1750fa..d63b43c9674483abf7588651a050c933507c7dea 100644
--- a/samples/openapi3/client/petstore/typescript/builds/default/models/all.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/default/models/all.ts
@@ -1,6 +1,6 @@
-export * from './ApiResponse'
-export * from './Category'
-export * from './Order'
-export * from './Pet'
-export * from './Tag'
-export * from './User'
+export * from '../models/ApiResponse'
+export * from '../models/Category'
+export * from '../models/Order'
+export * from '../models/Pet'
+export * from '../models/Tag'
+export * from '../models/User'
diff --git a/samples/openapi3/client/petstore/typescript/builds/default/package-lock.json b/samples/openapi3/client/petstore/typescript/builds/default/package-lock.json
index a21ee9c9e4727307cdc450f90d5f69008889c3c2..1eda7470be64a5404228d35ff638db0b99a1d576 100644
--- a/samples/openapi3/client/petstore/typescript/builds/default/package-lock.json
+++ b/samples/openapi3/client/petstore/typescript/builds/default/package-lock.json
@@ -1,8 +1,173 @@
 {
   "name": "ts-petstore-client",
   "version": "1.0.0",
-  "lockfileVersion": 1,
+  "lockfileVersion": 2,
   "requires": true,
+  "packages": {
+    "": {
+      "name": "ts-petstore-client",
+      "version": "1.0.0",
+      "license": "Unlicense",
+      "dependencies": {
+        "@types/node": "*",
+        "@types/node-fetch": "^2.5.7",
+        "btoa": "^1.2.1",
+        "es6-promise": "^4.2.4",
+        "form-data": "^2.5.0",
+        "node-fetch": "^2.6.0",
+        "url-parse": "^1.4.3"
+      },
+      "devDependencies": {
+        "@types/url-parse": "1.4.4",
+        "typescript": "^4.0"
+      }
+    },
+    "node_modules/@types/node": {
+      "version": "12.12.7",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.7.tgz",
+      "integrity": "sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w=="
+    },
+    "node_modules/@types/node-fetch": {
+      "version": "2.5.7",
+      "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.7.tgz",
+      "integrity": "sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw==",
+      "dependencies": {
+        "@types/node": "*",
+        "form-data": "^3.0.0"
+      }
+    },
+    "node_modules/@types/node-fetch/node_modules/form-data": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz",
+      "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==",
+      "dependencies": {
+        "asynckit": "^0.4.0",
+        "combined-stream": "^1.0.8",
+        "mime-types": "^2.1.12"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/@types/url-parse": {
+      "version": "1.4.4",
+      "resolved": "https://registry.npmjs.org/@types/url-parse/-/url-parse-1.4.4.tgz",
+      "integrity": "sha512-KtQLad12+4T/NfSxpoDhmr22+fig3T7/08QCgmutYA6QSznSRmEtuL95GrhVV40/0otTEdFc+etRcCTqhh1q5Q==",
+      "dev": true
+    },
+    "node_modules/asynckit": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
+    },
+    "node_modules/btoa": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz",
+      "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==",
+      "bin": {
+        "btoa": "bin/btoa.js"
+      },
+      "engines": {
+        "node": ">= 0.4.0"
+      }
+    },
+    "node_modules/combined-stream": {
+      "version": "1.0.8",
+      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+      "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+      "dependencies": {
+        "delayed-stream": "~1.0.0"
+      },
+      "engines": {
+        "node": ">= 0.8"
+      }
+    },
+    "node_modules/delayed-stream": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
+      "engines": {
+        "node": ">=0.4.0"
+      }
+    },
+    "node_modules/es6-promise": {
+      "version": "4.2.5",
+      "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.5.tgz",
+      "integrity": "sha512-n6wvpdE43VFtJq+lUDYDBFUwV8TZbuGXLV4D6wKafg13ldznKsyEvatubnmUe31zcvelSzOHF+XbaT+Bl9ObDg=="
+    },
+    "node_modules/form-data": {
+      "version": "2.5.1",
+      "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz",
+      "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==",
+      "dependencies": {
+        "asynckit": "^0.4.0",
+        "combined-stream": "^1.0.6",
+        "mime-types": "^2.1.12"
+      },
+      "engines": {
+        "node": ">= 0.12"
+      }
+    },
+    "node_modules/mime-db": {
+      "version": "1.40.0",
+      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz",
+      "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==",
+      "engines": {
+        "node": ">= 0.6"
+      }
+    },
+    "node_modules/mime-types": {
+      "version": "2.1.24",
+      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz",
+      "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==",
+      "dependencies": {
+        "mime-db": "1.40.0"
+      },
+      "engines": {
+        "node": ">= 0.6"
+      }
+    },
+    "node_modules/node-fetch": {
+      "version": "2.6.0",
+      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz",
+      "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==",
+      "engines": {
+        "node": "4.x || >=6.0.0"
+      }
+    },
+    "node_modules/querystringify": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.0.tgz",
+      "integrity": "sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg=="
+    },
+    "node_modules/requires-port": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
+      "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
+    },
+    "node_modules/typescript": {
+      "version": "4.7.4",
+      "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz",
+      "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==",
+      "dev": true,
+      "bin": {
+        "tsc": "bin/tsc",
+        "tsserver": "bin/tsserver"
+      },
+      "engines": {
+        "node": ">=4.2.0"
+      }
+    },
+    "node_modules/url-parse": {
+      "version": "1.4.3",
+      "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.3.tgz",
+      "integrity": "sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw==",
+      "dependencies": {
+        "querystringify": "^2.0.0",
+        "requires-port": "^1.0.0"
+      }
+    }
+  },
   "dependencies": {
     "@types/node": {
       "version": "12.12.7",
@@ -30,6 +195,12 @@
         }
       }
     },
+    "@types/url-parse": {
+      "version": "1.4.4",
+      "resolved": "https://registry.npmjs.org/@types/url-parse/-/url-parse-1.4.4.tgz",
+      "integrity": "sha512-KtQLad12+4T/NfSxpoDhmr22+fig3T7/08QCgmutYA6QSznSRmEtuL95GrhVV40/0otTEdFc+etRcCTqhh1q5Q==",
+      "dev": true
+    },
     "asynckit": {
       "version": "0.4.0",
       "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
@@ -97,9 +268,9 @@
       "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
     },
     "typescript": {
-      "version": "3.9.3",
-      "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.3.tgz",
-      "integrity": "sha512-D/wqnB2xzNFIcoBG9FG8cXRDjiqSTbG2wd8DMZeQyJlP1vfTkIxH4GKveWaEBYySKIg+USu+E+EDIR47SqnaMQ==",
+      "version": "4.7.4",
+      "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz",
+      "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==",
       "dev": true
     },
     "url-parse": {
diff --git a/samples/openapi3/client/petstore/typescript/builds/default/types/ObjectParamAPI.ts b/samples/openapi3/client/petstore/typescript/builds/default/types/ObjectParamAPI.ts
index bad3c9fc25ff1a77098c38124b33d797602ffafe..acc26d9ef93a761f940034e20057ceb91b070ece 100644
--- a/samples/openapi3/client/petstore/typescript/builds/default/types/ObjectParamAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/default/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/default/types/ObservableAPI.ts b/samples/openapi3/client/petstore/typescript/builds/default/types/ObservableAPI.ts
index 74f57a7e1c7c34ca48fd9d5737e9c6c4aab9e8d9..b5b9a542b2451455e3036807f68a0dc4f434c507 100644
--- a/samples/openapi3/client/petstore/typescript/builds/default/types/ObservableAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/default/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { Observable, of, from } from '../rxjsStub';
 import {mergeMap, map} from  '../rxjsStub';
diff --git a/samples/openapi3/client/petstore/typescript/builds/default/types/PromiseAPI.ts b/samples/openapi3/client/petstore/typescript/builds/default/types/PromiseAPI.ts
index 92d57b673df00c4e014fcae4f860433e66897d26..7279c47febddb1be0e12ec864f3b6f45b50cae92 100644
--- a/samples/openapi3/client/petstore/typescript/builds/default/types/PromiseAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/default/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/deno/models/ObjectSerializer.ts b/samples/openapi3/client/petstore/typescript/builds/deno/models/ObjectSerializer.ts
index 5ce38e58012e0d4262bbe01be96e14bc4f9f74c2..a56a21255c2850f56b5cb4a7fd0c3a01be62b494 100644
--- a/samples/openapi3/client/petstore/typescript/builds/deno/models/ObjectSerializer.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/deno/models/ObjectSerializer.ts
@@ -1,16 +1,16 @@
-export * from './ApiResponse.ts';
-export * from './Category.ts';
-export * from './Order.ts';
-export * from './Pet.ts';
-export * from './Tag.ts';
-export * from './User.ts';
-
-import { ApiResponse } from './ApiResponse.ts';
-import { Category } from './Category.ts';
-import { Order    , OrderStatusEnum    } from './Order.ts';
-import { Pet     , PetStatusEnum   } from './Pet.ts';
-import { Tag } from './Tag.ts';
-import { User } from './User.ts';
+export * from '../models/ApiResponse.ts';
+export * from '../models/Category.ts';
+export * from '../models/Order.ts';
+export * from '../models/Pet.ts';
+export * from '../models/Tag.ts';
+export * from '../models/User.ts';
+
+import { ApiResponse } from '../models/ApiResponse.ts';
+import { Category } from '../models/Category.ts';
+import { Order    , OrderStatusEnum    } from '../models/Order.ts';
+import { Pet     , PetStatusEnum   } from '../models/Pet.ts';
+import { Tag } from '../models/Tag.ts';
+import { User } from '../models/User.ts';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/openapi3/client/petstore/typescript/builds/deno/models/Pet.ts b/samples/openapi3/client/petstore/typescript/builds/deno/models/Pet.ts
index 111ac11c7df3b41436a6caa8039de2f9ed1ebe51..229681feacde94cbafa6002c20a989e5458b32f6 100644
--- a/samples/openapi3/client/petstore/typescript/builds/deno/models/Pet.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/deno/models/Pet.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { Category } from './Category.ts';
-import { Tag } from './Tag.ts';
+import { Category } from '../models/Category.ts';
+import { Tag } from '../models/Tag.ts';
 import { HttpFile } from '../http/http.ts';
 
 /**
diff --git a/samples/openapi3/client/petstore/typescript/builds/deno/models/all.ts b/samples/openapi3/client/petstore/typescript/builds/deno/models/all.ts
index e77f63aa4bea8157a00ada7c8d351042d1056762..374b1e44e2bfb5263ba36b7bbf3511d250c61edf 100644
--- a/samples/openapi3/client/petstore/typescript/builds/deno/models/all.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/deno/models/all.ts
@@ -1,6 +1,6 @@
-export * from './ApiResponse.ts'
-export * from './Category.ts'
-export * from './Order.ts'
-export * from './Pet.ts'
-export * from './Tag.ts'
-export * from './User.ts'
+export * from '../models/ApiResponse.ts'
+export * from '../models/Category.ts'
+export * from '../models/Order.ts'
+export * from '../models/Pet.ts'
+export * from '../models/Tag.ts'
+export * from '../models/User.ts'
diff --git a/samples/openapi3/client/petstore/typescript/builds/deno/types/ObjectParamAPI.ts b/samples/openapi3/client/petstore/typescript/builds/deno/types/ObjectParamAPI.ts
index 02d096f08be47de91ceb85c542b96a2d208f3a12..271b489d45be73f731893fcb8b016b790084351d 100644
--- a/samples/openapi3/client/petstore/typescript/builds/deno/types/ObjectParamAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/deno/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http.ts';
-import * as models from '../models/all.ts';
 import { Configuration} from '../configuration.ts'
 
 import { ApiResponse } from '../models/ApiResponse.ts';
diff --git a/samples/openapi3/client/petstore/typescript/builds/deno/types/ObservableAPI.ts b/samples/openapi3/client/petstore/typescript/builds/deno/types/ObservableAPI.ts
index f89d38c2f213ca808d5f742ddc6447fee1f17743..a6524a21885dbd55c9623c122d42bd4c9a3eb14f 100644
--- a/samples/openapi3/client/petstore/typescript/builds/deno/types/ObservableAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/deno/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http.ts';
-import * as models from '../models/all.ts';
 import { Configuration} from '../configuration.ts'
 import { Observable, of, from } from '../rxjsStub.ts';
 import {mergeMap, map} from  '../rxjsStub.ts';
diff --git a/samples/openapi3/client/petstore/typescript/builds/deno/types/PromiseAPI.ts b/samples/openapi3/client/petstore/typescript/builds/deno/types/PromiseAPI.ts
index 46e4a7844050f96a17a10bbe9d10d0c06b55f1f1..fe3712f41296320143c88d877b2f0b7027a0e904 100644
--- a/samples/openapi3/client/petstore/typescript/builds/deno/types/PromiseAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/deno/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http.ts';
-import * as models from '../models/all.ts';
 import { Configuration} from '../configuration.ts'
 
 import { ApiResponse } from '../models/ApiResponse.ts';
diff --git a/samples/openapi3/client/petstore/typescript/builds/inversify/models/ObjectSerializer.ts b/samples/openapi3/client/petstore/typescript/builds/inversify/models/ObjectSerializer.ts
index af4c03dc0bf028d8bf75be83cefd6d2efcadb14f..a5f5708b12c9617d6d172042e6c6357112f48efb 100644
--- a/samples/openapi3/client/petstore/typescript/builds/inversify/models/ObjectSerializer.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/inversify/models/ObjectSerializer.ts
@@ -1,16 +1,16 @@
-export * from './ApiResponse';
-export * from './Category';
-export * from './Order';
-export * from './Pet';
-export * from './Tag';
-export * from './User';
-
-import { ApiResponse } from './ApiResponse';
-import { Category } from './Category';
-import { Order    , OrderStatusEnum    } from './Order';
-import { Pet     , PetStatusEnum   } from './Pet';
-import { Tag } from './Tag';
-import { User } from './User';
+export * from '../models/ApiResponse';
+export * from '../models/Category';
+export * from '../models/Order';
+export * from '../models/Pet';
+export * from '../models/Tag';
+export * from '../models/User';
+
+import { ApiResponse } from '../models/ApiResponse';
+import { Category } from '../models/Category';
+import { Order    , OrderStatusEnum    } from '../models/Order';
+import { Pet     , PetStatusEnum   } from '../models/Pet';
+import { Tag } from '../models/Tag';
+import { User } from '../models/User';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/openapi3/client/petstore/typescript/builds/inversify/models/Pet.ts b/samples/openapi3/client/petstore/typescript/builds/inversify/models/Pet.ts
index 6b191ad8d707e93d24f224c9d32f0ad55f6b95cf..b3a7ddb9f71983d3771836bf925e657722594216 100644
--- a/samples/openapi3/client/petstore/typescript/builds/inversify/models/Pet.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/inversify/models/Pet.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { Category } from './Category';
-import { Tag } from './Tag';
+import { Category } from '../models/Category';
+import { Tag } from '../models/Tag';
 import { HttpFile } from '../http/http';
 
 /**
diff --git a/samples/openapi3/client/petstore/typescript/builds/inversify/models/all.ts b/samples/openapi3/client/petstore/typescript/builds/inversify/models/all.ts
index 2edba7f0bd56abe7a02a52cd7b1dcfeb9a1750fa..d63b43c9674483abf7588651a050c933507c7dea 100644
--- a/samples/openapi3/client/petstore/typescript/builds/inversify/models/all.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/inversify/models/all.ts
@@ -1,6 +1,6 @@
-export * from './ApiResponse'
-export * from './Category'
-export * from './Order'
-export * from './Pet'
-export * from './Tag'
-export * from './User'
+export * from '../models/ApiResponse'
+export * from '../models/Category'
+export * from '../models/Order'
+export * from '../models/Pet'
+export * from '../models/Tag'
+export * from '../models/User'
diff --git a/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObjectParamAPI.ts b/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObjectParamAPI.ts
index bad3c9fc25ff1a77098c38124b33d797602ffafe..acc26d9ef93a761f940034e20057ceb91b070ece 100644
--- a/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObjectParamAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObservableAPI.ts b/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObservableAPI.ts
index 678d21b81aabc11e7a5220d871279a76df1a89fb..ac5eeb4ce53c0ac9d71fefdb40b7a03262ab83b2 100644
--- a/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObservableAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/inversify/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { Observable, of, from } from '../rxjsStub';
 import {mergeMap, map} from  '../rxjsStub';
diff --git a/samples/openapi3/client/petstore/typescript/builds/inversify/types/PromiseAPI.ts b/samples/openapi3/client/petstore/typescript/builds/inversify/types/PromiseAPI.ts
index 072f187628167e4ceabdf302ca8669694c50ad0f..cf94fea92a8d2e25d22590bcc02b7323372b099a 100644
--- a/samples/openapi3/client/petstore/typescript/builds/inversify/types/PromiseAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/inversify/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { injectable, inject, optional } from "inversify";
 import { AbstractConfiguration } from "../services/configuration";
diff --git a/samples/openapi3/client/petstore/typescript/builds/jquery/models/ObjectSerializer.ts b/samples/openapi3/client/petstore/typescript/builds/jquery/models/ObjectSerializer.ts
index af4c03dc0bf028d8bf75be83cefd6d2efcadb14f..a5f5708b12c9617d6d172042e6c6357112f48efb 100644
--- a/samples/openapi3/client/petstore/typescript/builds/jquery/models/ObjectSerializer.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/jquery/models/ObjectSerializer.ts
@@ -1,16 +1,16 @@
-export * from './ApiResponse';
-export * from './Category';
-export * from './Order';
-export * from './Pet';
-export * from './Tag';
-export * from './User';
-
-import { ApiResponse } from './ApiResponse';
-import { Category } from './Category';
-import { Order    , OrderStatusEnum    } from './Order';
-import { Pet     , PetStatusEnum   } from './Pet';
-import { Tag } from './Tag';
-import { User } from './User';
+export * from '../models/ApiResponse';
+export * from '../models/Category';
+export * from '../models/Order';
+export * from '../models/Pet';
+export * from '../models/Tag';
+export * from '../models/User';
+
+import { ApiResponse } from '../models/ApiResponse';
+import { Category } from '../models/Category';
+import { Order    , OrderStatusEnum    } from '../models/Order';
+import { Pet     , PetStatusEnum   } from '../models/Pet';
+import { Tag } from '../models/Tag';
+import { User } from '../models/User';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/openapi3/client/petstore/typescript/builds/jquery/models/Pet.ts b/samples/openapi3/client/petstore/typescript/builds/jquery/models/Pet.ts
index 6b191ad8d707e93d24f224c9d32f0ad55f6b95cf..b3a7ddb9f71983d3771836bf925e657722594216 100644
--- a/samples/openapi3/client/petstore/typescript/builds/jquery/models/Pet.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/jquery/models/Pet.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { Category } from './Category';
-import { Tag } from './Tag';
+import { Category } from '../models/Category';
+import { Tag } from '../models/Tag';
 import { HttpFile } from '../http/http';
 
 /**
diff --git a/samples/openapi3/client/petstore/typescript/builds/jquery/models/all.ts b/samples/openapi3/client/petstore/typescript/builds/jquery/models/all.ts
index 2edba7f0bd56abe7a02a52cd7b1dcfeb9a1750fa..d63b43c9674483abf7588651a050c933507c7dea 100644
--- a/samples/openapi3/client/petstore/typescript/builds/jquery/models/all.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/jquery/models/all.ts
@@ -1,6 +1,6 @@
-export * from './ApiResponse'
-export * from './Category'
-export * from './Order'
-export * from './Pet'
-export * from './Tag'
-export * from './User'
+export * from '../models/ApiResponse'
+export * from '../models/Category'
+export * from '../models/Order'
+export * from '../models/Pet'
+export * from '../models/Tag'
+export * from '../models/User'
diff --git a/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObjectParamAPI.ts b/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObjectParamAPI.ts
index bad3c9fc25ff1a77098c38124b33d797602ffafe..acc26d9ef93a761f940034e20057ceb91b070ece 100644
--- a/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObjectParamAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObservableAPI.ts b/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObservableAPI.ts
index 74f57a7e1c7c34ca48fd9d5737e9c6c4aab9e8d9..b5b9a542b2451455e3036807f68a0dc4f434c507 100644
--- a/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObservableAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/jquery/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { Observable, of, from } from '../rxjsStub';
 import {mergeMap, map} from  '../rxjsStub';
diff --git a/samples/openapi3/client/petstore/typescript/builds/jquery/types/PromiseAPI.ts b/samples/openapi3/client/petstore/typescript/builds/jquery/types/PromiseAPI.ts
index 92d57b673df00c4e014fcae4f860433e66897d26..7279c47febddb1be0e12ec864f3b6f45b50cae92 100644
--- a/samples/openapi3/client/petstore/typescript/builds/jquery/types/PromiseAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/jquery/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/object_params/models/ObjectSerializer.ts b/samples/openapi3/client/petstore/typescript/builds/object_params/models/ObjectSerializer.ts
index af4c03dc0bf028d8bf75be83cefd6d2efcadb14f..a5f5708b12c9617d6d172042e6c6357112f48efb 100644
--- a/samples/openapi3/client/petstore/typescript/builds/object_params/models/ObjectSerializer.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/object_params/models/ObjectSerializer.ts
@@ -1,16 +1,16 @@
-export * from './ApiResponse';
-export * from './Category';
-export * from './Order';
-export * from './Pet';
-export * from './Tag';
-export * from './User';
-
-import { ApiResponse } from './ApiResponse';
-import { Category } from './Category';
-import { Order    , OrderStatusEnum    } from './Order';
-import { Pet     , PetStatusEnum   } from './Pet';
-import { Tag } from './Tag';
-import { User } from './User';
+export * from '../models/ApiResponse';
+export * from '../models/Category';
+export * from '../models/Order';
+export * from '../models/Pet';
+export * from '../models/Tag';
+export * from '../models/User';
+
+import { ApiResponse } from '../models/ApiResponse';
+import { Category } from '../models/Category';
+import { Order    , OrderStatusEnum    } from '../models/Order';
+import { Pet     , PetStatusEnum   } from '../models/Pet';
+import { Tag } from '../models/Tag';
+import { User } from '../models/User';
 
 /* tslint:disable:no-unused-variable */
 let primitives = [
diff --git a/samples/openapi3/client/petstore/typescript/builds/object_params/models/Pet.ts b/samples/openapi3/client/petstore/typescript/builds/object_params/models/Pet.ts
index 6b191ad8d707e93d24f224c9d32f0ad55f6b95cf..b3a7ddb9f71983d3771836bf925e657722594216 100644
--- a/samples/openapi3/client/petstore/typescript/builds/object_params/models/Pet.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/object_params/models/Pet.ts
@@ -10,8 +10,8 @@
  * Do not edit the class manually.
  */
 
-import { Category } from './Category';
-import { Tag } from './Tag';
+import { Category } from '../models/Category';
+import { Tag } from '../models/Tag';
 import { HttpFile } from '../http/http';
 
 /**
diff --git a/samples/openapi3/client/petstore/typescript/builds/object_params/models/all.ts b/samples/openapi3/client/petstore/typescript/builds/object_params/models/all.ts
index 2edba7f0bd56abe7a02a52cd7b1dcfeb9a1750fa..d63b43c9674483abf7588651a050c933507c7dea 100644
--- a/samples/openapi3/client/petstore/typescript/builds/object_params/models/all.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/object_params/models/all.ts
@@ -1,6 +1,6 @@
-export * from './ApiResponse'
-export * from './Category'
-export * from './Order'
-export * from './Pet'
-export * from './Tag'
-export * from './User'
+export * from '../models/ApiResponse'
+export * from '../models/Category'
+export * from '../models/Order'
+export * from '../models/Pet'
+export * from '../models/Tag'
+export * from '../models/User'
diff --git a/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObjectParamAPI.ts b/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObjectParamAPI.ts
index bad3c9fc25ff1a77098c38124b33d797602ffafe..acc26d9ef93a761f940034e20057ceb91b070ece 100644
--- a/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObjectParamAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObjectParamAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObservableAPI.ts b/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObservableAPI.ts
index 74f57a7e1c7c34ca48fd9d5737e9c6c4aab9e8d9..b5b9a542b2451455e3036807f68a0dc4f434c507 100644
--- a/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObservableAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/object_params/types/ObservableAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 import { Observable, of, from } from '../rxjsStub';
 import {mergeMap, map} from  '../rxjsStub';
diff --git a/samples/openapi3/client/petstore/typescript/builds/object_params/types/PromiseAPI.ts b/samples/openapi3/client/petstore/typescript/builds/object_params/types/PromiseAPI.ts
index 92d57b673df00c4e014fcae4f860433e66897d26..7279c47febddb1be0e12ec864f3b6f45b50cae92 100644
--- a/samples/openapi3/client/petstore/typescript/builds/object_params/types/PromiseAPI.ts
+++ b/samples/openapi3/client/petstore/typescript/builds/object_params/types/PromiseAPI.ts
@@ -1,5 +1,4 @@
 import { ResponseContext, RequestContext, HttpFile } from '../http/http';
-import * as models from '../models/all';
 import { Configuration} from '../configuration'
 
 import { ApiResponse } from '../models/ApiResponse';
diff --git a/samples/openapi3/client/petstore/typescript/tests/default/package-lock.json b/samples/openapi3/client/petstore/typescript/tests/default/package-lock.json
index b50025343dc82b25b89d7a3130cdea4516d20b99..65c4cf4138e9078125bf79705948e3d9ec266c54 100644
--- a/samples/openapi3/client/petstore/typescript/tests/default/package-lock.json
+++ b/samples/openapi3/client/petstore/typescript/tests/default/package-lock.json
@@ -40,7 +40,8 @@
         "url-parse": "^1.4.3"
       },
       "devDependencies": {
-        "typescript": "^3.9.3"
+        "@types/url-parse": "1.4.4",
+        "typescript": "^4.0"
       }
     },
     "../../builds/default/node_modules/@types/node": {
@@ -3235,11 +3236,12 @@
       "requires": {
         "@types/node": "*",
         "@types/node-fetch": "^2.5.7",
+        "@types/url-parse": "1.4.4",
         "btoa": "^1.2.1",
         "es6-promise": "^4.2.4",
         "form-data": "^2.5.0",
         "node-fetch": "^2.6.0",
-        "typescript": "^3.9.3",
+        "typescript": "^4.0",
         "url-parse": "^1.4.3"
       },
       "dependencies": {