@contember/bindx-generator 0.1.14 → 0.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -39,7 +39,7 @@ export type JSONArray = readonly JSONValue[]
39
39
  return code;
40
40
  }
41
41
  generateEntityTypeCode(model, entity) {
42
- let code = `export interface ${entity.name} {\n`;
42
+ let code = `export type ${entity.name} = {\n`;
43
43
  let columnsCode = '';
44
44
  let hasOneCode = '';
45
45
  let hasManyCode = '';
@@ -1 +1 @@
1
- {"version":3,"file":"EntityTypeSchemaGenerator.js","sourceRoot":"","sources":["../src/EntityTypeSchemaGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzD,MAAM,OAAO,yBAAyB;IACrC,QAAQ,CAAC,KAAmB;QAC3B,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,oBAAoB;QACpB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,IAAI,IAAI,iBAAiB,eAAe,CAAC,QAAQ,CAAC,qBAAqB,CAAA;QACxE,CAAC;QAED,4BAA4B;QAC5B,IAAI,IAAI;;;;;;CAMT,CAAA;QAEC,wBAAwB;QACxB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,IAAI,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACnD,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,IAAI,CAAA;QACZ,IAAI,IAAI,oCAAoC,CAAA;QAC5C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,CAAA;QAC7C,CAAC;QACD,IAAI,IAAI,OAAO,CAAA;QAEf,IAAI,IAAI,kCAAkC,CAAA;QAC1C,IAAI,IAAI,6BAA6B,CAAA;QACrC,IAAI,IAAI,KAAK,CAAA;QAEb,OAAO,IAAI,CAAA;IACZ,CAAC;IAEO,sBAAsB,CAAC,KAAmB,EAAE,MAAoB;QACvE,IAAI,IAAI,GAAG,oBAAoB,MAAM,CAAC,IAAI,MAAM,CAAA;QAEhD,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,UAAU,GAAG,EAAE,CAAA;QACnB,IAAI,WAAW,GAAG,EAAE,CAAA;QAEpB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE;YACtC,YAAY,EAAE,GAAG,CAAC,EAAE;gBACnB,WAAW,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,IAAI,MAAM,CAAA;YACxE,CAAC;YACD,WAAW,EAAE,GAAG,CAAC,EAAE;gBAClB,UAAU,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,CAAA;YACrE,CAAC;YACD,WAAW,EAAE,GAAG,CAAC,EAAE;gBAClB,WAAW,IAAI,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA;YAChH,CAAC;SACD,CAAC,CAAA;QAEF,IAAI,IAAI,WAAW,CAAA;QACnB,IAAI,IAAI,UAAU,CAAA;QAClB,IAAI,IAAI,WAAW,CAAA;QACnB,IAAI,IAAI,OAAO,CAAA;QAEf,OAAO,IAAI,CAAA;IACZ,CAAC;CACD"}
1
+ {"version":3,"file":"EntityTypeSchemaGenerator.js","sourceRoot":"","sources":["../src/EntityTypeSchemaGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzD,MAAM,OAAO,yBAAyB;IACrC,QAAQ,CAAC,KAAmB;QAC3B,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,oBAAoB;QACpB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,IAAI,IAAI,iBAAiB,eAAe,CAAC,QAAQ,CAAC,qBAAqB,CAAA;QACxE,CAAC;QAED,4BAA4B;QAC5B,IAAI,IAAI;;;;;;CAMT,CAAA;QAEC,wBAAwB;QACxB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,IAAI,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACnD,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,IAAI,CAAA;QACZ,IAAI,IAAI,oCAAoC,CAAA;QAC5C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,CAAA;QAC7C,CAAC;QACD,IAAI,IAAI,OAAO,CAAA;QAEf,IAAI,IAAI,kCAAkC,CAAA;QAC1C,IAAI,IAAI,6BAA6B,CAAA;QACrC,IAAI,IAAI,KAAK,CAAA;QAEb,OAAO,IAAI,CAAA;IACZ,CAAC;IAEO,sBAAsB,CAAC,KAAmB,EAAE,MAAoB;QACvE,IAAI,IAAI,GAAG,eAAe,MAAM,CAAC,IAAI,QAAQ,CAAA;QAE7C,IAAI,WAAW,GAAG,EAAE,CAAA;QACpB,IAAI,UAAU,GAAG,EAAE,CAAA;QACnB,IAAI,WAAW,GAAG,EAAE,CAAA;QAEpB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE;YACtC,YAAY,EAAE,GAAG,CAAC,EAAE;gBACnB,WAAW,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,IAAI,MAAM,CAAA;YACxE,CAAC;YACD,WAAW,EAAE,GAAG,CAAC,EAAE;gBAClB,UAAU,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,CAAA;YACrE,CAAC;YACD,WAAW,EAAE,GAAG,CAAC,EAAE;gBAClB,WAAW,IAAI,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA;YAChH,CAAC;SACD,CAAC,CAAA;QAEF,IAAI,IAAI,WAAW,CAAA;QACnB,IAAI,IAAI,UAAU,CAAA;QAClB,IAAI,IAAI,WAAW,CAAA;QACnB,IAAI,IAAI,OAAO,CAAA;QAEf,OAAO,IAAI,CAAA;IACZ,CAAC;CACD"}
@@ -31,7 +31,7 @@ export class RoleSchemaGenerator {
31
31
  .map(role => `\treadonly ${role}: ${this.roleEntityName(role, entity.name)}`)
32
32
  .join('\n');
33
33
  if (roleEntries) {
34
- code += `export interface ${entity.name}$Roles {\n${roleEntries}\n}\n\n`;
34
+ code += `export type ${entity.name}$Roles = {\n${roleEntries}\n}\n\n`;
35
35
  }
36
36
  }
37
37
  // Export available roles type
@@ -133,7 +133,7 @@ ${entries}
133
133
  }
134
134
  generateRoleEntityType(model, entity, roleName, accessibleFields, roleAccess) {
135
135
  const typeName = this.roleEntityName(roleName, entity.name);
136
- let code = `export interface ${typeName} {\n`;
136
+ let code = `export type ${typeName} = {\n`;
137
137
  acceptEveryFieldVisitor(model, entity, {
138
138
  visitColumn: ctx => {
139
139
  if (!accessibleFields.has(ctx.column.name))
@@ -1 +1 @@
1
- {"version":3,"file":"RoleSchemaGenerator.js","sourceRoot":"","sources":["../src/RoleSchemaGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RoleSchemaGenerator.js","sourceRoot":"","sources":["../src/RoleSchemaGenerator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAAE,cAAc,EAAmB,MAAM,SAAS,CAAA;AAiBzD,MAAM,OAAO,mBAAmB;IACd,oBAAoB,CAAS;IAE9C,YAAY,UAAsC,EAAE;QACnD,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAA;IACjE,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,KAAmB,EAAE,GAAe;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAEpC,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,sCAAsC;QACtC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAE,CAAA;YACnC,IAAI,IAAI,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;QAClE,CAAC;QAED,2CAA2C;QAC3C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,MAAM,WAAW,GAAG,SAAS;iBAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iBAC7C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,cAAc,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;iBAC5E,IAAI,CAAC,IAAI,CAAC,CAAA;YAEZ,IAAI,WAAW,EAAE,CAAC;gBACjB,IAAI,IAAI,eAAe,MAAM,CAAC,IAAI,eAAe,WAAW,SAAS,CAAA;YACtE,CAAC;QACF,CAAC;QAED,8BAA8B;QAC9B,IAAI,IAAI,gCAAgC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;QAEpF,OAAO,IAAI,CAAA;IACZ,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,KAAmB,EAAE,GAAe;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAEzE,sCAAsC;QACtC,MAAM,eAAe,GAAa,EAAE,CAAA;QACpC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;YAC/D,IAAI,QAAQ,EAAE,CAAC;gBACd,eAAe,CAAC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAA;YACtC,CAAC;QACF,CAAC;QAED,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;YAC/D,IAAI,QAAQ,EAAE,CAAC;gBACd,OAAO,KAAK,IAAI,mBAAmB,IAAI,YAAY,IAAI,gBAAgB,CAAA;YACxE,CAAC;YACD,OAAO,KAAK,IAAI,eAAe,IAAI,MAAM,IAAI,gBAAgB,CAAA;QAC9D,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEb,MAAM,UAAU,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,eAAe,CAAC,CAAA;QAEvD,OAAO;;gBAEO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;EAMnC,OAAO;;CAER,CAAA;IACA,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,GAAe;QACnC,MAAM,MAAM,GAA6C,EAAE,CAAA;QAE3D,KAAK,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/D,sBAAsB;YACtB,IAAI,SAAS,CAAC,QAAQ;gBAAE,SAAQ;YAEhC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAuB,CAAA;YAErD,iCAAiC;YACjC,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACxB,KAAK,MAAM,UAAU,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;oBAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;oBACvC,IAAI,YAAY,EAAE,CAAC;wBAClB,KAAK,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;4BACjD,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,GAAG,EAAE,CAAA;4BAC5D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCAC5B,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;4BACpB,CAAC;4BACD,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;wBACzC,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;YAED,sBAAsB;YACtB,KAAK,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5E,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAA;gBAC7C,IAAI,CAAC,SAAS;oBAAE,SAAQ;gBAExB,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;gBAClE,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC3D,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;wBACpE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;oBACtB,CAAC;gBACF,CAAC;gBACD,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;oBACrB,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;gBACvC,CAAC;YACF,CAAC;YAED,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAA;QAClC,CAAC;QAED,OAAO,MAAM,CAAA;IACd,CAAC;IAED;;OAEG;IACK,uBAAuB,CAC9B,KAAmB,EACnB,QAAgB,EAChB,UAAoC;QAEpC,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACpD,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,IAAI,KAAK,CAAC;gBAAE,SAAQ;YAE9D,IAAI,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAA;QAC3F,CAAC;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;IAEO,sBAAsB,CAC7B,KAAmB,EACnB,MAAoB,EACpB,QAAgB,EAChB,gBAA6B,EAC7B,UAAoC;QAEpC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3D,IAAI,IAAI,GAAG,eAAe,QAAQ,QAAQ,CAAA;QAE1C,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE;YACtC,WAAW,EAAE,GAAG,CAAC,EAAE;gBAClB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;oBAAE,OAAM;gBAClD,IAAI,IAAI,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA;YACvG,CAAC;YACD,WAAW,EAAE,GAAG,CAAC,EAAE;gBAClB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,OAAM;gBACpD,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;gBAC1D,MAAM,UAAU,GAAG,YAAY,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC;oBACvD,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC;oBACtD,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAA;gBACxB,IAAI,IAAI,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,CAAA;YAClD,CAAC;YACD,YAAY,EAAE,GAAG,CAAC,EAAE;gBACnB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,OAAM;gBACpD,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;gBAC1D,MAAM,UAAU,GAAG,YAAY,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC;oBACvD,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC;oBACtD,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAA;gBACxB,IAAI,IAAI,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,MAAM,CAAA;YACpD,CAAC;SACD,CAAC,CAAA;QAEF,IAAI,IAAI,OAAO,CAAA;QACf,OAAO,IAAI,CAAA;IACZ,CAAC;IAEO,cAAc,CAAC,QAAgB,EAAE,UAAkB;QAC1D,OAAO,GAAG,UAAU,IAAI,QAAQ,EAAE,CAAA;IACnC,CAAC;CACD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contember/bindx-generator",
3
- "version": "0.1.14",
3
+ "version": "0.1.15",
4
4
  "description": "Schema generator for @contember/bindx with role-based ACL support",
5
5
  "type": "module",
6
6
  "main": "./src/index.ts",
@@ -49,7 +49,7 @@ export type JSONArray = readonly JSONValue[]
49
49
  }
50
50
 
51
51
  private generateEntityTypeCode(model: Model.Schema, entity: Model.Entity): string {
52
- let code = `export interface ${entity.name} {\n`
52
+ let code = `export type ${entity.name} = {\n`
53
53
 
54
54
  let columnsCode = ''
55
55
  let hasOneCode = ''
@@ -55,7 +55,7 @@ export class RoleSchemaGenerator {
55
55
  .join('\n')
56
56
 
57
57
  if (roleEntries) {
58
- code += `export interface ${entity.name}$Roles {\n${roleEntries}\n}\n\n`
58
+ code += `export type ${entity.name}$Roles = {\n${roleEntries}\n}\n\n`
59
59
  }
60
60
  }
61
61
 
@@ -184,7 +184,7 @@ ${entries}
184
184
  roleAccess: Map<string, Set<string>>,
185
185
  ): string {
186
186
  const typeName = this.roleEntityName(roleName, entity.name)
187
- let code = `export interface ${typeName} {\n`
187
+ let code = `export type ${typeName} = {\n`
188
188
 
189
189
  acceptEveryFieldVisitor(model, entity, {
190
190
  visitColumn: ctx => {