7a029fb3ff17e5414e460872aeb1f320a51e048f
[ccsdk/cds.git] /
1 import {JsonObject, JsonProperty} from 'json2typescript';
2
3 @JsonObject('topology_template')
4 export class TemplateTopology {
5     // tslint:disable-next-line:variable-name
6     public node_templates: object;
7     public workflows: object;
8     public content: string ;
9 }
10
11 @JsonObject
12 export class VlbDefinition {
13
14     // tslint:disable-next-line:variable-name
15     tosca_definitions_version: string;
16     metadata: Metadata;
17     imports: Import[];
18     // tslint:disable-next-line: variable-name
19     dsl_definitions: DslContent;
20     // tslint:disable-next-line: variable-name
21     topology_template: TemplateTopology;
22 }
23
24 @JsonObject('dsl_definitions')
25 export class DslContent {
26
27 }
28
29 // Refactor varaibles name and use JsonConverteri
30 @JsonObject('metadata')
31 export class Metadata {
32     @JsonProperty('template_author')
33         // tslint:disable-next-line:variable-name
34     template_author: string;
35     'author-email': string;
36     'user-groups': string;
37     @JsonProperty('template_name')
38         // tslint:disable-next-line:variable-name
39     template_name: string;
40     @JsonProperty('template_version')
41         // tslint:disable-next-line:variable-name
42     template_version: string;
43     @JsonProperty('template_tag')
44         // tslint:disable-next-line:variable-name
45     template_tags: string;
46
47     @JsonProperty('dictionary_group')
48         // tslint:disable-next-line:variable-name
49     dictionary_group: string;
50     @JsonProperty('template_tags')
51     templateTags: string;
52     @JsonProperty('template_description')
53         // tslint:disable-next-line:variable-name
54     template_description: string;
55
56
57     /* @JsonProperty('custom_keys', {String}, false)
58      mapOfCustomKeys: Map<string, string> = new Map<string, string>();*/
59 }
60
61 export class Import {
62     file: string;
63 }