@metad/contracts 3.6.1 → 3.6.2

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.
Files changed (286) hide show
  1. package/index.cjs.d.ts +1 -0
  2. package/index.cjs.js +4233 -5
  3. package/index.esm.d.ts +1 -0
  4. package/index.esm.js +4129 -0
  5. package/package.json +9 -2
  6. package/src/agent/{ai-model.ts → ai-model.d.ts} +2 -2
  7. package/src/agent/graph.d.ts +148 -0
  8. package/src/agent/index.d.ts +5 -0
  9. package/src/agent/token.d.ts +21 -0
  10. package/src/agent/utils.d.ts +19 -0
  11. package/src/agent/variables.d.ts +14 -0
  12. package/src/ai/ai-model.model.d.ts +198 -0
  13. package/src/ai/ai-provider.model.d.ts +43 -0
  14. package/src/ai/ai.model.d.ts +82 -0
  15. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  16. package/src/ai/chat-message.model.d.ts +222 -0
  17. package/src/ai/chat.model.d.ts +189 -0
  18. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  19. package/src/ai/copilot-example.model.d.ts +19 -0
  20. package/src/ai/copilot-model.model.d.ts +26 -0
  21. package/src/ai/copilot-organization.model.d.ts +17 -0
  22. package/src/ai/copilot-provider.model.d.ts +31 -0
  23. package/src/ai/copilot-role.model.d.ts +43 -0
  24. package/src/ai/copilot-store.model.d.ts +29 -0
  25. package/src/ai/copilot-user.model.d.ts +20 -0
  26. package/src/ai/copilot.model.d.ts +36 -0
  27. package/src/ai/{environment.model.ts → environment.model.d.ts} +10 -12
  28. package/src/ai/feature.model.d.ts +6 -0
  29. package/src/ai/index.d.ts +39 -0
  30. package/src/ai/knowledge-doc-chunk.model.d.ts +60 -0
  31. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  32. package/src/ai/knowledge-doc.model.d.ts +192 -0
  33. package/src/ai/knowledge-pipeline.d.ts +107 -0
  34. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  35. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  36. package/src/ai/knowledgebase.model.d.ts +162 -0
  37. package/src/ai/rag-web.d.ts +26 -0
  38. package/src/ai/rag.d.ts +24 -0
  39. package/src/ai/role-permissions.d.ts +13 -0
  40. package/src/ai/types.d.ts +39 -0
  41. package/src/ai/xpert-agent-execution.model.d.ts +96 -0
  42. package/src/ai/xpert-agent.model.d.ts +192 -0
  43. package/src/ai/xpert-project.model.d.ts +86 -0
  44. package/src/ai/xpert-task.model.d.ts +26 -0
  45. package/src/ai/xpert-template.model.d.ts +47 -0
  46. package/src/ai/xpert-tool-mcp.model.d.ts +67 -0
  47. package/src/ai/xpert-tool.model.d.ts +147 -0
  48. package/src/ai/xpert-toolset.model.d.ts +200 -0
  49. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  50. package/src/ai/xpert-workflow.model.d.ts +366 -0
  51. package/src/ai/xpert-workspace.model.d.ts +32 -0
  52. package/src/ai/xpert.model.d.ts +529 -0
  53. package/src/ai/xpert.utils.d.ts +80 -0
  54. package/src/analytics/ai.d.ts +73 -0
  55. package/src/analytics/approval-policy.model.d.ts +30 -0
  56. package/src/analytics/business-area-user.model.d.ts +35 -0
  57. package/src/analytics/business-area.d.ts +17 -0
  58. package/src/analytics/certification.model.d.ts +11 -0
  59. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  60. package/src/analytics/chatbi-model.model.d.ts +18 -0
  61. package/src/analytics/collection.model.d.ts +6 -0
  62. package/src/analytics/comment.model.d.ts +10 -0
  63. package/src/analytics/data-source-type.d.ts +16 -0
  64. package/src/analytics/data-source.d.ts +62 -0
  65. package/src/analytics/favorite.d.ts +14 -0
  66. package/src/analytics/features.d.ts +19 -0
  67. package/src/analytics/feed-model.d.ts +13 -0
  68. package/src/analytics/gateway.d.ts +27 -0
  69. package/src/analytics/index.d.ts +38 -0
  70. package/src/analytics/indicator-app.d.ts +44 -0
  71. package/src/analytics/{indicator-market.ts → indicator-market.d.ts} +2 -6
  72. package/src/analytics/indicator.d.ts +106 -0
  73. package/src/analytics/model-query-log.model.d.ts +41 -0
  74. package/src/analytics/model-query.d.ts +21 -0
  75. package/src/analytics/{notification-destination.ts → notification-destination.d.ts} +5 -9
  76. package/src/analytics/{permission-approval-user.model.ts → permission-approval-user.model.d.ts} +8 -10
  77. package/src/analytics/permission-approval.model.d.ts +47 -0
  78. package/src/analytics/project.model.d.ts +50 -0
  79. package/src/analytics/role-permissions.d.ts +25 -0
  80. package/src/analytics/schema.d.ts +262 -0
  81. package/src/analytics/screenshot.model.d.ts +25 -0
  82. package/src/analytics/semantic-model-entity.d.ts +37 -0
  83. package/src/analytics/semantic-model-member.d.ts +24 -0
  84. package/src/analytics/semantic-model.d.ts +175 -0
  85. package/src/analytics/{story-point.ts → story-point.d.ts} +6 -11
  86. package/src/analytics/story-template.model.d.ts +28 -0
  87. package/src/analytics/story-widget.d.ts +12 -0
  88. package/src/analytics/story.d.ts +93 -0
  89. package/src/analytics/subscription.d.ts +38 -0
  90. package/src/analytics/visit.model.d.ts +34 -0
  91. package/src/analytics/webSocket.d.ts +48 -0
  92. package/src/api-key.model.d.ts +10 -0
  93. package/src/base-entity.model.d.ts +27 -0
  94. package/src/contact.model.d.ts +41 -0
  95. package/src/core.model.d.ts +97 -0
  96. package/src/{country.model.ts → country.model.d.ts} +2 -3
  97. package/src/currency.model.d.ts +579 -0
  98. package/src/{custom-smtp.model.ts → custom-smtp.model.d.ts} +17 -21
  99. package/src/date-picker.model.d.ts +5 -0
  100. package/src/email-template.model.d.ts +39 -0
  101. package/src/email.model.d.ts +36 -0
  102. package/src/employee.model.d.ts +128 -0
  103. package/src/entity-with-members.model.d.ts +13 -0
  104. package/src/feature.model.d.ts +93 -0
  105. package/src/file-provider.d.ts +33 -0
  106. package/src/help-center-article.model.d.ts +0 -0
  107. package/src/help-center.model.d.ts +0 -0
  108. package/src/http-status.enum.d.ts +57 -0
  109. package/src/import-export.model.d.ts +36 -0
  110. package/src/index.d.ts +48 -0
  111. package/src/integration/dify.d.ts +0 -0
  112. package/src/integration/dingtalk.d.ts +2 -0
  113. package/src/integration/fastgpt.d.ts +0 -0
  114. package/src/integration/firecrawl.d.ts +2 -0
  115. package/src/integration/github.d.ts +69 -0
  116. package/src/integration/index.d.ts +4 -0
  117. package/src/integration/lark.d.ts +11 -0
  118. package/src/integration/wecom.d.ts +2 -0
  119. package/src/integration.model.d.ts +90 -0
  120. package/src/invite.model.d.ts +123 -0
  121. package/src/language.model.d.ts +19 -0
  122. package/src/organization-contact.model.d.ts +73 -0
  123. package/src/{organization-department.model.ts → organization-department.model.d.ts} +10 -16
  124. package/src/organization-language.model.d.ts +18 -0
  125. package/src/organization-projects.model.d.ts +80 -0
  126. package/src/organization-team-employee-model.d.ts +12 -0
  127. package/src/organization-team-model.d.ts +19 -0
  128. package/src/organization.model.d.ts +239 -0
  129. package/src/{password-reset.model.ts → password-reset.model.d.ts} +10 -14
  130. package/src/{plain-object.model.ts → plain-object.model.d.ts} +1 -1
  131. package/src/plugin.d.ts +13 -0
  132. package/src/role-permission.model.d.ts +61 -0
  133. package/src/role.model.d.ts +26 -0
  134. package/src/schedule.d.ts +27 -0
  135. package/src/secret-token.model.d.ts +11 -0
  136. package/src/seed.model.d.ts +37 -0
  137. package/src/storage-file.model.d.ts +40 -0
  138. package/src/tag-entity.model.d.ts +20 -0
  139. package/src/tenant.model.d.ts +40 -0
  140. package/src/tools/index.d.ts +1 -0
  141. package/src/tools/sandbox.d.ts +5 -0
  142. package/src/translation.model.d.ts +26 -0
  143. package/src/types.d.ts +241 -0
  144. package/src/user-organization.model.d.ts +24 -0
  145. package/src/user.model.d.ts +131 -0
  146. package/src/visibility.model.d.ts +6 -0
  147. package/.babelrc +0 -5
  148. package/.eslintrc.json +0 -18
  149. package/babel.config.json +0 -1
  150. package/jest.config.ts +0 -16
  151. package/project.json +0 -53
  152. package/src/agent/graph.ts +0 -272
  153. package/src/agent/index.ts +0 -5
  154. package/src/agent/token.ts +0 -23
  155. package/src/agent/utils.spec.ts +0 -283
  156. package/src/agent/utils.ts +0 -122
  157. package/src/agent/variables.ts +0 -21
  158. package/src/ai/ai-model.model.ts +0 -228
  159. package/src/ai/ai-provider.model.ts +0 -53
  160. package/src/ai/ai.model.ts +0 -87
  161. package/src/ai/chat-message-feedback.model.ts +0 -31
  162. package/src/ai/chat-message.model.ts +0 -277
  163. package/src/ai/chat.model.ts +0 -207
  164. package/src/ai/copilot-checkpoint.model.ts +0 -25
  165. package/src/ai/copilot-example.model.ts +0 -23
  166. package/src/ai/copilot-model.model.ts +0 -31
  167. package/src/ai/copilot-organization.model.ts +0 -21
  168. package/src/ai/copilot-provider.model.ts +0 -46
  169. package/src/ai/copilot-role.model.ts +0 -48
  170. package/src/ai/copilot-store.model.ts +0 -34
  171. package/src/ai/copilot-user.model.ts +0 -24
  172. package/src/ai/copilot.model.ts +0 -47
  173. package/src/ai/feature.model.ts +0 -6
  174. package/src/ai/index.ts +0 -39
  175. package/src/ai/knowledge-doc-chunk.model.ts +0 -120
  176. package/src/ai/knowledge-doc-chunk.spec.ts +0 -47
  177. package/src/ai/knowledge-doc-page.model.ts +0 -20
  178. package/src/ai/knowledge-doc.model.ts +0 -252
  179. package/src/ai/knowledge-pipeline.ts +0 -138
  180. package/src/ai/knowledge-retrieval-log.model.ts +0 -19
  181. package/src/ai/knowledgebase-task.model.ts +0 -46
  182. package/src/ai/knowledgebase.model.ts +0 -190
  183. package/src/ai/rag-web.ts +0 -54
  184. package/src/ai/rag.ts +0 -24
  185. package/src/ai/role-permissions.ts +0 -13
  186. package/src/ai/types.ts +0 -83
  187. package/src/ai/xpert-agent-execution.model.ts +0 -115
  188. package/src/ai/xpert-agent.model.ts +0 -258
  189. package/src/ai/xpert-project.model.ts +0 -103
  190. package/src/ai/xpert-task.model.ts +0 -32
  191. package/src/ai/xpert-template.model.ts +0 -53
  192. package/src/ai/xpert-tool-mcp.model.ts +0 -72
  193. package/src/ai/xpert-tool.model.ts +0 -211
  194. package/src/ai/xpert-toolset.model.ts +0 -220
  195. package/src/ai/xpert-workflow-task.prompt.ts +0 -71
  196. package/src/ai/xpert-workflow.model.ts +0 -449
  197. package/src/ai/xpert-workspace.model.ts +0 -42
  198. package/src/ai/xpert.model.ts +0 -613
  199. package/src/ai/xpert.utils.ts +0 -214
  200. package/src/analytics/ai.ts +0 -79
  201. package/src/analytics/approval-policy.model.ts +0 -40
  202. package/src/analytics/business-area-user.model.ts +0 -43
  203. package/src/analytics/business-area.ts +0 -20
  204. package/src/analytics/certification.model.ts +0 -12
  205. package/src/analytics/chatbi-conversation.model.ts +0 -16
  206. package/src/analytics/chatbi-model.model.ts +0 -22
  207. package/src/analytics/collection.model.ts +0 -8
  208. package/src/analytics/comment.model.ts +0 -14
  209. package/src/analytics/data-source-type.ts +0 -19
  210. package/src/analytics/data-source.ts +0 -72
  211. package/src/analytics/favorite.ts +0 -18
  212. package/src/analytics/features.ts +0 -19
  213. package/src/analytics/feed-model.ts +0 -15
  214. package/src/analytics/gateway.ts +0 -30
  215. package/src/analytics/index.ts +0 -39
  216. package/src/analytics/indicator-app.ts +0 -49
  217. package/src/analytics/indicator.ts +0 -127
  218. package/src/analytics/model-query-log.model.ts +0 -45
  219. package/src/analytics/model-query.ts +0 -22
  220. package/src/analytics/permission-approval.model.ts +0 -58
  221. package/src/analytics/project.model.ts +0 -56
  222. package/src/analytics/role-permissions.ts +0 -36
  223. package/src/analytics/schema.ts +0 -300
  224. package/src/analytics/screenshot.model.ts +0 -28
  225. package/src/analytics/semantic-model-entity.ts +0 -49
  226. package/src/analytics/semantic-model-member.ts +0 -45
  227. package/src/analytics/semantic-model.ts +0 -227
  228. package/src/analytics/story-template.model.ts +0 -34
  229. package/src/analytics/story-widget.ts +0 -15
  230. package/src/analytics/story.ts +0 -109
  231. package/src/analytics/subscription.ts +0 -43
  232. package/src/analytics/visit.model.ts +0 -39
  233. package/src/analytics/webSocket.ts +0 -53
  234. package/src/api-key.model.ts +0 -11
  235. package/src/base-entity.model.ts +0 -34
  236. package/src/contact.model.ts +0 -45
  237. package/src/core.model.ts +0 -103
  238. package/src/currency.model.ts +0 -582
  239. package/src/date-picker.model.ts +0 -5
  240. package/src/email-template.model.ts +0 -50
  241. package/src/email.model.ts +0 -46
  242. package/src/employee.model.ts +0 -199
  243. package/src/entity-with-members.model.ts +0 -16
  244. package/src/feature.model.ts +0 -108
  245. package/src/file-provider.ts +0 -37
  246. package/src/help-center-article.model.ts +0 -35
  247. package/src/help-center.model.ts +0 -33
  248. package/src/http-status.enum.ts +0 -58
  249. package/src/import-export.model.ts +0 -42
  250. package/src/index.ts +0 -60
  251. package/src/integration/dify.ts +0 -31
  252. package/src/integration/dingtalk.ts +0 -16
  253. package/src/integration/fastgpt.ts +0 -32
  254. package/src/integration/firecrawl.ts +0 -46
  255. package/src/integration/github.ts +0 -149
  256. package/src/integration/index.ts +0 -15
  257. package/src/integration/lark.ts +0 -79
  258. package/src/integration/wecom.ts +0 -16
  259. package/src/integration.model.ts +0 -119
  260. package/src/invite.model.ts +0 -144
  261. package/src/language.model.ts +0 -22
  262. package/src/organization-contact.model.ts +0 -84
  263. package/src/organization-language.model.ts +0 -24
  264. package/src/organization-projects.model.ts +0 -99
  265. package/src/organization-team-employee-model.ts +0 -14
  266. package/src/organization-team-model.ts +0 -25
  267. package/src/organization.model.ts +0 -266
  268. package/src/plugin.ts +0 -15
  269. package/src/role-permission.model.ts +0 -123
  270. package/src/role.model.ts +0 -31
  271. package/src/schedule.ts +0 -71
  272. package/src/secret-token.model.ts +0 -15
  273. package/src/seed.model.ts +0 -50
  274. package/src/storage-file.model.ts +0 -46
  275. package/src/tag-entity.model.ts +0 -23
  276. package/src/tenant.model.ts +0 -52
  277. package/src/tools/index.ts +0 -1
  278. package/src/tools/sandbox.ts +0 -5
  279. package/src/translation.model.ts +0 -37
  280. package/src/types.ts +0 -277
  281. package/src/user-organization.model.ts +0 -31
  282. package/src/user.model.ts +0 -151
  283. package/src/visibility.model.ts +0 -6
  284. package/tsconfig.json +0 -22
  285. package/tsconfig.lib.json +0 -10
  286. package/tsconfig.spec.json +0 -9
@@ -0,0 +1,93 @@
1
+ import { ITag } from '../tag-entity.model';
2
+ import { Visibility } from '../visibility.model';
3
+ import { IBusinessArea } from './business-area';
4
+ import { ICollection } from './collection.model';
5
+ import { IFavorite } from './favorite';
6
+ import { IBasePerProjectEntityModel } from './project.model';
7
+ import { IScreenshot } from './screenshot.model';
8
+ import { ISemanticModel } from './semantic-model';
9
+ import { IStoryPoint } from './story-point';
10
+ import { IStoryTemplate } from './story-template.model';
11
+ export interface IStory extends IBasePerProjectEntityModel {
12
+ name?: string;
13
+ description?: string;
14
+ tags?: ITag[];
15
+ status?: StoryStatusEnum;
16
+ collection?: ICollection;
17
+ collectionId?: string;
18
+ /**
19
+ * Released story destination
20
+ */
21
+ businessArea?: IBusinessArea;
22
+ businessAreaId?: string;
23
+ modelId?: string;
24
+ /**
25
+ * Story's models space
26
+ */
27
+ model?: ISemanticModel;
28
+ /**
29
+ * Story relative models
30
+ */
31
+ models?: ISemanticModel[];
32
+ visibility?: Visibility;
33
+ points?: IStoryPoint[];
34
+ options?: Record<string, unknown>;
35
+ thumbnail?: string;
36
+ previewId?: string;
37
+ preview?: IScreenshot;
38
+ templateId?: string;
39
+ template?: IStoryTemplate;
40
+ asTemplate?: IStoryTemplate;
41
+ pv?: number;
42
+ }
43
+ export declare enum StoryStatusEnum {
44
+ /**
45
+ * 草稿
46
+ */
47
+ DRAFT = "DRAFT",
48
+ /**
49
+ * 重新编辑
50
+ */
51
+ CHANGING = "CHANGING",
52
+ /**
53
+ * 审阅中
54
+ */
55
+ REVIEW = "REVIEW",
56
+ /**
57
+ * 通过
58
+ */
59
+ APPROVED = "APPROVED",
60
+ /**
61
+ * 退回
62
+ */
63
+ REJECTED = "REJECTED",
64
+ /**
65
+ * 已发布
66
+ */
67
+ RELEASED = "RELEASED",
68
+ /**
69
+ * 下线存档
70
+ */
71
+ ARCHIVED = "ARCHIVED"
72
+ }
73
+ export interface Accessibility {
74
+ access?: AccessEnum;
75
+ bookmark?: IFavorite;
76
+ }
77
+ /**
78
+ * 用户对某个实体的访问权限
79
+ */
80
+ export declare enum AccessEnum {
81
+ /**
82
+ * 可看到
83
+ */
84
+ View = "View",
85
+ /**
86
+ * 可读取详情
87
+ */
88
+ Read = "Read",
89
+ /**
90
+ * 可编辑
91
+ */
92
+ Write = "Write"
93
+ }
@@ -0,0 +1,38 @@
1
+ import { IBasePerTenantEntityModel } from "../base-entity.model";
2
+ import { INotificationDestination } from "./notification-destination";
3
+ import { IStory } from "./story";
4
+ export interface ISubscription extends IBasePerTenantEntityModel {
5
+ name: string;
6
+ type: SubscriptionType;
7
+ description?: string;
8
+ /**
9
+ * 启动订阅
10
+ */
11
+ enable?: boolean;
12
+ storyId?: string;
13
+ story?: IStory;
14
+ pointId?: string;
15
+ widgetId?: string;
16
+ destinationId?: string;
17
+ /**
18
+ * 目的地
19
+ */
20
+ destination?: INotificationDestination;
21
+ selectedDateType?: string;
22
+ sendDate?: string;
23
+ sendTime?: string;
24
+ miOffice?: boolean;
25
+ selectedUser?: string;
26
+ selectedGroup?: string;
27
+ notifyEveryone?: boolean;
28
+ subscriptionDetail?: string;
29
+ navigationButton?: boolean;
30
+ buttonDesc?: string;
31
+ linkSetting?: string;
32
+ linkUrl?: string;
33
+ options?: Record<string, unknown>;
34
+ }
35
+ export declare enum SubscriptionType {
36
+ CHART = "CHART",
37
+ INDICATOR = "INDICATOR"
38
+ }
@@ -0,0 +1,34 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IIndicator } from './indicator';
3
+ import { ISemanticModel } from './semantic-model';
4
+ import { IStory } from './story';
5
+ export interface IVisit extends IBasePerTenantAndOrganizationEntityModel {
6
+ type: VisitTypeEnum;
7
+ entity: VisitEntityEnum;
8
+ entityId: string;
9
+ entityName?: string;
10
+ businessAreaId?: string;
11
+ visitAt?: number;
12
+ visits?: number;
13
+ story?: IStory;
14
+ model?: ISemanticModel;
15
+ indicator?: IIndicator;
16
+ }
17
+ export declare enum VisitEntityEnum {
18
+ DataSource = "DataSource",
19
+ SemanticModel = "SemanticModel",
20
+ Story = "Story",
21
+ Widget = "Widget",
22
+ Indicator = "Indicator"
23
+ }
24
+ export declare enum VisitTypeEnum {
25
+ View = "View",
26
+ Data = "Data"
27
+ }
28
+ export interface IEntityVisits {
29
+ entity?: VisitEntityEnum;
30
+ entityId: string;
31
+ entityName: string;
32
+ pv?: number;
33
+ uv?: number;
34
+ }
@@ -0,0 +1,48 @@
1
+ import { ISemanticModel } from "./semantic-model";
2
+ export interface AgentEventRequest {
3
+ url?: string;
4
+ headers: {
5
+ [key: string]: string[];
6
+ };
7
+ body?: any;
8
+ catalog?: string;
9
+ table?: string;
10
+ forceRefresh?: boolean;
11
+ auth?: {
12
+ username: string;
13
+ password: string;
14
+ };
15
+ }
16
+ export interface AgentEventResponse extends AgentEventRequest {
17
+ status: number;
18
+ statusText: string;
19
+ }
20
+ export declare enum AgentEventType {
21
+ request = "request",
22
+ response = "response",
23
+ error = "error"
24
+ }
25
+ export interface AgentEvent {
26
+ type?: 'connected';
27
+ id: string;
28
+ event: AgentEventType;
29
+ data: {
30
+ organizationId?: string;
31
+ dataSource?: {
32
+ id: string;
33
+ name: string;
34
+ type: string;
35
+ updatedAt?: Date;
36
+ };
37
+ modelId?: string;
38
+ semanticModel?: ISemanticModel;
39
+ request: AgentEventRequest;
40
+ response?: AgentEventResponse;
41
+ error?: string;
42
+ };
43
+ }
44
+ export declare enum LocalAgentType {
45
+ TENANT = 0,
46
+ USER = 1
47
+ }
48
+ export declare const TENANT_AGENT_LOCAL_URL = "agent-local-url";
@@ -0,0 +1,10 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ export interface IApiKey extends IBasePerTenantAndOrganizationEntityModel {
3
+ token: string;
4
+ name?: string;
5
+ type?: string;
6
+ entityId?: string;
7
+ validUntil?: Date;
8
+ expired?: boolean;
9
+ lastUsedAt?: Date;
10
+ }
@@ -0,0 +1,27 @@
1
+ import { ITenant } from './tenant.model';
2
+ import { IOrganization } from './organization.model';
3
+ import { ID } from './types';
4
+ import { IUser } from './user.model';
5
+ export interface IBaseRelationsEntityModel {
6
+ relations?: string[];
7
+ }
8
+ export interface IBaseSoftDeleteEntityModel {
9
+ deletedAt?: Date;
10
+ }
11
+ export interface IBaseEntityModel extends IBaseSoftDeleteEntityModel {
12
+ id?: ID;
13
+ createdById?: ID;
14
+ createdBy?: IUser;
15
+ updatedById?: ID;
16
+ updatedBy?: IUser;
17
+ readonly createdAt?: Date;
18
+ readonly updatedAt?: Date;
19
+ }
20
+ export interface IBasePerTenantEntityModel extends IBaseEntityModel {
21
+ tenantId?: string;
22
+ tenant?: ITenant;
23
+ }
24
+ export interface IBasePerTenantAndOrganizationEntityModel extends IBasePerTenantEntityModel {
25
+ organizationId?: string;
26
+ organization?: IOrganization;
27
+ }
@@ -0,0 +1,41 @@
1
+ import { IOrganizationContact } from './organization-contact.model';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
3
+ import { IEmployee } from './employee.model';
4
+ export interface IContact extends IBasePerTenantAndOrganizationEntityModel {
5
+ id?: string;
6
+ name?: string;
7
+ firstName?: string;
8
+ lastName?: string;
9
+ country?: string;
10
+ city?: string;
11
+ address?: string;
12
+ address2?: string;
13
+ postcode?: string;
14
+ latitude?: number;
15
+ longitude?: number;
16
+ regionCode?: string;
17
+ fax?: string;
18
+ fiscalInformation?: string;
19
+ website?: string;
20
+ organization_contacts?: IOrganizationContact[];
21
+ employees?: IEmployee[];
22
+ }
23
+ export interface IContactFindInput extends IContactCreateInput {
24
+ id?: string;
25
+ }
26
+ export interface IContactCreateInput extends IBasePerTenantAndOrganizationEntityModel {
27
+ name?: string;
28
+ firstName?: string;
29
+ lastName?: string;
30
+ country?: string;
31
+ city?: string;
32
+ address?: string;
33
+ address2?: string;
34
+ postcode?: string;
35
+ latitude?: number;
36
+ longitude?: number;
37
+ regionCode?: string;
38
+ fax?: string;
39
+ fiscalInformation?: string;
40
+ website?: string;
41
+ }
@@ -0,0 +1,97 @@
1
+ export interface IPaginationInput {
2
+ limit?: number;
3
+ page?: number;
4
+ }
5
+ /**
6
+ * Generic pagination interface
7
+ */
8
+ export interface IPagination<T> {
9
+ /**
10
+ * Items included in the current listing
11
+ */
12
+ readonly items: T[];
13
+ /**
14
+ * Total number of available items
15
+ */
16
+ readonly total: number;
17
+ }
18
+ export interface IListQueryInput<T> {
19
+ /**
20
+ * Model entity defined relations
21
+ */
22
+ readonly relations?: string[];
23
+ readonly findInput?: T | any;
24
+ readonly where?: any;
25
+ }
26
+ /**
27
+ * Describes generic pagination params
28
+ */
29
+ export interface IPaginationParam extends IOptionParams {
30
+ /**
31
+ * Limit (paginated) - max number of entities should be taken.
32
+ */
33
+ readonly take?: number;
34
+ /**
35
+ * Offset (paginated) where from entities should be taken.
36
+ */
37
+ readonly skip?: number;
38
+ }
39
+ export interface IOptionParams {
40
+ /**
41
+ * Order, in which entities should be ordered.
42
+ */
43
+ readonly order?: Record<string, any>;
44
+ /**
45
+ * Simple condition that should be applied to match entities.
46
+ */
47
+ readonly where: Record<string, any>;
48
+ /**
49
+ * Indicates if soft-deleted rows should be included in entity result.
50
+ */
51
+ readonly withDeleted?: boolean;
52
+ }
53
+ export declare enum OrderTypeEnum {
54
+ DESC = "DESC",
55
+ ASC = "ASC"
56
+ }
57
+ export type JSONValue = null | string | number | boolean | {
58
+ [x: string]: JSONValue;
59
+ } | Array<JSONValue>;
60
+ export type WhereOperator<T> = {
61
+ $eq?: T;
62
+ } | {
63
+ $ne?: T;
64
+ } | {
65
+ $in?: T[];
66
+ } | {
67
+ $notIn?: T[];
68
+ } | {
69
+ $like?: string;
70
+ } | {
71
+ $ilike?: string;
72
+ } | {
73
+ $gt?: T;
74
+ } | {
75
+ $gte?: T;
76
+ } | {
77
+ $lt?: T;
78
+ } | {
79
+ $lte?: T;
80
+ } | {
81
+ $isNull?: boolean;
82
+ };
83
+ export type SmartWhere<T> = Partial<{
84
+ [P in keyof T]?: T[P] | WhereOperator<T[P]>;
85
+ }>;
86
+ export type PaginationParams<T> = {
87
+ select?: (keyof T)[] | {
88
+ [P in keyof T]?: P extends "toString" ? unknown : NonNullable<T[P]>;
89
+ };
90
+ take?: number;
91
+ skip?: number;
92
+ where?: SmartWhere<T>;
93
+ relations?: string[];
94
+ order?: Partial<{
95
+ [P in keyof T]: OrderTypeEnum;
96
+ }>;
97
+ };
@@ -1,6 +1,5 @@
1
1
  import { IBaseEntityModel } from './base-entity.model';
2
-
3
2
  export interface ICountry extends IBaseEntityModel {
4
- isoCode: string;
5
- country: string;
3
+ isoCode: string;
4
+ country: string;
6
5
  }