{{#imports}}
import { {{.}} } from './{{#lower}}{{.}}{{/lower}}.model';
{{/imports}}

{{#enums}}
export enum {{name}} {
  {{#values}}
  {{#upper}}{{value}}{{/upper}} = '{{value}}'{{^isLast}},{{/isLast}}
  {{/values}}
}

{{/enums}}
export interface {{&name}} {
{{#properties}}
  {{#isArray}}
  {{name}}{{^isRequired}}?{{/isRequired}}: {{typescriptType}}[];
  {{/isArray}}
  {{^isArray}}
  {{name}}{{^isRequired}}?{{/isRequired}}: {{typescriptType}};
  {{/isArray}}
{{/properties}}
{{#refs}}
  {{#isArray}}
  {{name}}{{^isRequired}}?{{/isRequired}}: {{typescriptType}}[];
  {{/isArray}}
  {{^isArray}}
  {{name}}{{^isRequired}}?{{/isRequired}}: {{typescriptType}};
  {{/isArray}}
{{/refs}}
}
