This is a soft fork of Jonathan Persson's csharp-models-to-typescript npm package. The main difference is that we do auto import of dependent classes and interfaces in csharp classes.
For example
public class MyExample: IExample
{
public SomePropClass SomeValue {get; set; }
}
is translated into
import {IExample} from "./IExample"
import { SomePropClass } from "./SomePropClass";
export interface MyExample extends IExample {
SomeValue: SomePropClass;
}
$ npm install --save csharp-models-to-typescript
- Add a config file to your project that contains for example...
{
"include": [
"./models/**/*.cs",
"./enums/**/*.cs"
],
"exclude": [
"./models/foo/bar.cs"
],
"namespace": "Api",
"output": "./models",
"camelCase": false,
"camelCaseEnums": false,
"numericEnums": false,
"stringLiteralTypesInsteadOfEnums": false,
"customTypeTranslations": {
"ProductName": "string",
"ProductNumber": "string"
}
}
- Add a npm script to your package.json that references your config file...
"scripts": {
"generate-types": "csharp-models-to-typescript --config=your-config-file.json"
},
- Run the npm script
generate-types
and the output file specified in your config should be created and populated with your models.
MIT © Jonathan Persson, Armstrong DevTeam