@metad/contracts 3.6.7 → 3.7.0

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 (291) hide show
  1. package/README.md +2 -2
  2. package/index.cjs.d.ts +1 -0
  3. package/index.cjs.js +4029 -5
  4. package/index.esm.d.ts +1 -0
  5. package/index.esm.js +3909 -0
  6. package/package.json +1 -1
  7. package/src/agent/{ai-model.ts → ai-model.d.ts} +2 -2
  8. package/src/agent/graph.d.ts +151 -0
  9. package/src/agent/index.d.ts +5 -0
  10. package/src/agent/token.d.ts +21 -0
  11. package/src/agent/utils.d.ts +19 -0
  12. package/src/agent/variables.d.ts +16 -0
  13. package/src/ai/ai-model.model.d.ts +198 -0
  14. package/src/ai/ai-provider.model.d.ts +43 -0
  15. package/src/ai/ai.model.d.ts +82 -0
  16. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  17. package/src/ai/chat-message.model.d.ts +222 -0
  18. package/src/ai/chat.model.d.ts +189 -0
  19. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  20. package/src/ai/copilot-example.model.d.ts +19 -0
  21. package/src/ai/copilot-model.model.d.ts +26 -0
  22. package/src/ai/copilot-organization.model.d.ts +17 -0
  23. package/src/ai/copilot-provider.model.d.ts +31 -0
  24. package/src/ai/copilot-role.model.d.ts +43 -0
  25. package/src/ai/copilot-store.model.d.ts +29 -0
  26. package/src/ai/copilot-user.model.d.ts +20 -0
  27. package/src/ai/copilot.model.d.ts +36 -0
  28. package/src/ai/{environment.model.ts → environment.model.d.ts} +10 -12
  29. package/src/ai/feature.model.d.ts +6 -0
  30. package/src/ai/index.d.ts +42 -0
  31. package/src/ai/knowledge-doc-chunk.model.d.ts +61 -0
  32. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  33. package/src/ai/knowledge-doc.model.d.ts +222 -0
  34. package/src/ai/knowledge-pipeline.d.ts +107 -0
  35. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  36. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  37. package/src/ai/knowledgebase.model.d.ts +174 -0
  38. package/src/ai/middleware.model.d.ts +18 -0
  39. package/src/ai/rag-web.d.ts +26 -0
  40. package/src/ai/rag.d.ts +24 -0
  41. package/src/ai/role-permissions.d.ts +13 -0
  42. package/src/ai/skill.model.d.ts +181 -0
  43. package/src/ai/types.d.ts +71 -0
  44. package/src/ai/xpert-agent-execution.model.d.ts +96 -0
  45. package/src/ai/xpert-agent.model.d.ts +204 -0
  46. package/src/ai/xpert-project.model.d.ts +86 -0
  47. package/src/ai/xpert-table.model.d.ts +84 -0
  48. package/src/ai/xpert-task.model.d.ts +26 -0
  49. package/src/ai/xpert-template.model.d.ts +47 -0
  50. package/src/ai/xpert-tool-mcp.model.d.ts +72 -0
  51. package/src/ai/xpert-tool.model.d.ts +154 -0
  52. package/src/ai/xpert-toolset.model.d.ts +200 -0
  53. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  54. package/src/ai/xpert-workflow.model.d.ts +401 -0
  55. package/src/ai/xpert-workspace.model.d.ts +32 -0
  56. package/src/ai/xpert.model.d.ts +551 -0
  57. package/src/ai/xpert.utils.d.ts +77 -0
  58. package/src/analytics/ai.d.ts +73 -0
  59. package/src/analytics/approval-policy.model.d.ts +30 -0
  60. package/src/analytics/business-area-user.model.d.ts +35 -0
  61. package/src/analytics/business-area.d.ts +17 -0
  62. package/src/analytics/certification.model.d.ts +11 -0
  63. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  64. package/src/analytics/chatbi-model.model.d.ts +18 -0
  65. package/src/analytics/collection.model.d.ts +6 -0
  66. package/src/analytics/comment.model.d.ts +10 -0
  67. package/src/analytics/data-source-type.d.ts +16 -0
  68. package/src/analytics/data-source.d.ts +62 -0
  69. package/src/analytics/favorite.d.ts +14 -0
  70. package/src/analytics/features.d.ts +19 -0
  71. package/src/analytics/feed-model.d.ts +13 -0
  72. package/src/analytics/gateway.d.ts +28 -0
  73. package/src/analytics/index.d.ts +38 -0
  74. package/src/analytics/indicator-app.d.ts +44 -0
  75. package/src/analytics/{indicator-market.ts → indicator-market.d.ts} +2 -6
  76. package/src/analytics/indicator.d.ts +105 -0
  77. package/src/analytics/model-query-log.model.d.ts +41 -0
  78. package/src/analytics/model-query.d.ts +21 -0
  79. package/src/analytics/{notification-destination.ts → notification-destination.d.ts} +5 -9
  80. package/src/analytics/{permission-approval-user.model.ts → permission-approval-user.model.d.ts} +8 -10
  81. package/src/analytics/permission-approval.model.d.ts +47 -0
  82. package/src/analytics/project.model.d.ts +50 -0
  83. package/src/analytics/role-permissions.d.ts +25 -0
  84. package/src/analytics/schema.d.ts +262 -0
  85. package/src/analytics/screenshot.model.d.ts +25 -0
  86. package/src/analytics/semantic-model-entity.d.ts +38 -0
  87. package/src/analytics/semantic-model-member.d.ts +27 -0
  88. package/src/analytics/semantic-model.d.ts +183 -0
  89. package/src/analytics/{story-point.ts → story-point.d.ts} +6 -11
  90. package/src/analytics/story-template.model.d.ts +28 -0
  91. package/src/analytics/story-widget.d.ts +12 -0
  92. package/src/analytics/story.d.ts +93 -0
  93. package/src/analytics/subscription.d.ts +38 -0
  94. package/src/analytics/visit.model.d.ts +34 -0
  95. package/src/analytics/webSocket.d.ts +48 -0
  96. package/src/api-key.model.d.ts +10 -0
  97. package/src/base-entity.model.d.ts +27 -0
  98. package/src/contact.model.d.ts +41 -0
  99. package/src/core.model.d.ts +97 -0
  100. package/src/{country.model.ts → country.model.d.ts} +2 -3
  101. package/src/currency.model.d.ts +579 -0
  102. package/src/{custom-smtp.model.ts → custom-smtp.model.d.ts} +17 -21
  103. package/src/date-picker.model.d.ts +5 -0
  104. package/src/email-template.model.d.ts +39 -0
  105. package/src/email.model.d.ts +36 -0
  106. package/src/employee.model.d.ts +128 -0
  107. package/src/entity-with-members.model.d.ts +13 -0
  108. package/src/feature.model.d.ts +93 -0
  109. package/src/file-provider.d.ts +33 -0
  110. package/src/help-center-article.model.d.ts +0 -0
  111. package/src/help-center.model.d.ts +0 -0
  112. package/src/http-status.enum.d.ts +57 -0
  113. package/src/import-export.model.d.ts +36 -0
  114. package/src/index.d.ts +48 -0
  115. package/src/integration/dify.d.ts +0 -0
  116. package/src/integration/dingtalk.d.ts +2 -0
  117. package/src/integration/fastgpt.d.ts +0 -0
  118. package/src/integration/firecrawl.d.ts +2 -0
  119. package/src/integration/github.d.ts +69 -0
  120. package/src/integration/index.d.ts +4 -0
  121. package/src/integration/lark.d.ts +11 -0
  122. package/src/integration/wecom.d.ts +2 -0
  123. package/src/integration.model.d.ts +90 -0
  124. package/src/invite.model.d.ts +123 -0
  125. package/src/language.model.d.ts +19 -0
  126. package/src/organization-contact.model.d.ts +73 -0
  127. package/src/{organization-department.model.ts → organization-department.model.d.ts} +10 -16
  128. package/src/organization-language.model.d.ts +18 -0
  129. package/src/organization-projects.model.d.ts +80 -0
  130. package/src/organization-team-employee-model.d.ts +12 -0
  131. package/src/organization-team-model.d.ts +19 -0
  132. package/src/organization.model.d.ts +239 -0
  133. package/src/{password-reset.model.ts → password-reset.model.d.ts} +10 -14
  134. package/src/{plain-object.model.ts → plain-object.model.d.ts} +1 -1
  135. package/src/plugin.d.ts +13 -0
  136. package/src/role-permission.model.d.ts +61 -0
  137. package/src/role.model.d.ts +26 -0
  138. package/src/schedule.d.ts +27 -0
  139. package/src/secret-token.model.d.ts +11 -0
  140. package/src/seed.model.d.ts +37 -0
  141. package/src/storage-file.model.d.ts +40 -0
  142. package/src/tag-entity.model.d.ts +20 -0
  143. package/src/tenant.model.d.ts +40 -0
  144. package/src/tools/index.d.ts +1 -0
  145. package/src/tools/sandbox.d.ts +5 -0
  146. package/src/translation.model.d.ts +26 -0
  147. package/src/types.d.ts +245 -0
  148. package/src/user-organization.model.d.ts +24 -0
  149. package/src/user.model.d.ts +131 -0
  150. package/src/visibility.model.d.ts +6 -0
  151. package/.babelrc +0 -5
  152. package/.eslintrc.json +0 -18
  153. package/babel.config.json +0 -1
  154. package/jest.config.ts +0 -16
  155. package/project.json +0 -53
  156. package/src/agent/graph.ts +0 -275
  157. package/src/agent/index.ts +0 -5
  158. package/src/agent/token.ts +0 -23
  159. package/src/agent/utils.spec.ts +0 -283
  160. package/src/agent/utils.ts +0 -122
  161. package/src/agent/variables.ts +0 -66
  162. package/src/ai/ai-model.model.ts +0 -232
  163. package/src/ai/ai-provider.model.ts +0 -53
  164. package/src/ai/ai.model.ts +0 -87
  165. package/src/ai/chat-message-feedback.model.ts +0 -31
  166. package/src/ai/chat-message.model.ts +0 -277
  167. package/src/ai/chat.model.ts +0 -207
  168. package/src/ai/copilot-checkpoint.model.ts +0 -25
  169. package/src/ai/copilot-example.model.ts +0 -23
  170. package/src/ai/copilot-model.model.ts +0 -31
  171. package/src/ai/copilot-organization.model.ts +0 -21
  172. package/src/ai/copilot-provider.model.ts +0 -46
  173. package/src/ai/copilot-role.model.ts +0 -48
  174. package/src/ai/copilot-store.model.ts +0 -34
  175. package/src/ai/copilot-user.model.ts +0 -24
  176. package/src/ai/copilot.model.ts +0 -47
  177. package/src/ai/feature.model.ts +0 -6
  178. package/src/ai/index.ts +0 -40
  179. package/src/ai/knowledge-doc-chunk.model.ts +0 -123
  180. package/src/ai/knowledge-doc-chunk.spec.ts +0 -47
  181. package/src/ai/knowledge-doc-page.model.ts +0 -20
  182. package/src/ai/knowledge-doc.model.ts +0 -364
  183. package/src/ai/knowledge-pipeline.ts +0 -138
  184. package/src/ai/knowledge-retrieval-log.model.ts +0 -19
  185. package/src/ai/knowledgebase-task.model.ts +0 -46
  186. package/src/ai/knowledgebase.model.ts +0 -205
  187. package/src/ai/rag-web.ts +0 -54
  188. package/src/ai/rag.ts +0 -24
  189. package/src/ai/role-permissions.ts +0 -13
  190. package/src/ai/types.ts +0 -83
  191. package/src/ai/xpert-agent-execution.model.ts +0 -115
  192. package/src/ai/xpert-agent.model.ts +0 -264
  193. package/src/ai/xpert-project.model.ts +0 -103
  194. package/src/ai/xpert-table.model.ts +0 -100
  195. package/src/ai/xpert-task.model.ts +0 -32
  196. package/src/ai/xpert-template.model.ts +0 -53
  197. package/src/ai/xpert-tool-mcp.model.ts +0 -77
  198. package/src/ai/xpert-tool.model.ts +0 -216
  199. package/src/ai/xpert-toolset.model.ts +0 -220
  200. package/src/ai/xpert-workflow-task.prompt.ts +0 -71
  201. package/src/ai/xpert-workflow.model.ts +0 -502
  202. package/src/ai/xpert-workspace.model.ts +0 -42
  203. package/src/ai/xpert.model.ts +0 -637
  204. package/src/ai/xpert.utils.ts +0 -214
  205. package/src/analytics/ai.ts +0 -79
  206. package/src/analytics/approval-policy.model.ts +0 -40
  207. package/src/analytics/business-area-user.model.ts +0 -43
  208. package/src/analytics/business-area.ts +0 -20
  209. package/src/analytics/certification.model.ts +0 -12
  210. package/src/analytics/chatbi-conversation.model.ts +0 -16
  211. package/src/analytics/chatbi-model.model.ts +0 -22
  212. package/src/analytics/collection.model.ts +0 -8
  213. package/src/analytics/comment.model.ts +0 -14
  214. package/src/analytics/data-source-type.ts +0 -19
  215. package/src/analytics/data-source.ts +0 -72
  216. package/src/analytics/favorite.ts +0 -18
  217. package/src/analytics/features.ts +0 -19
  218. package/src/analytics/feed-model.ts +0 -15
  219. package/src/analytics/gateway.ts +0 -31
  220. package/src/analytics/index.ts +0 -39
  221. package/src/analytics/indicator-app.ts +0 -49
  222. package/src/analytics/indicator.ts +0 -143
  223. package/src/analytics/model-query-log.model.ts +0 -45
  224. package/src/analytics/model-query.ts +0 -22
  225. package/src/analytics/permission-approval.model.ts +0 -58
  226. package/src/analytics/project.model.ts +0 -56
  227. package/src/analytics/role-permissions.ts +0 -36
  228. package/src/analytics/schema.ts +0 -300
  229. package/src/analytics/screenshot.model.ts +0 -28
  230. package/src/analytics/semantic-model-entity.ts +0 -50
  231. package/src/analytics/semantic-model-member.ts +0 -49
  232. package/src/analytics/semantic-model.ts +0 -237
  233. package/src/analytics/story-template.model.ts +0 -34
  234. package/src/analytics/story-widget.ts +0 -15
  235. package/src/analytics/story.ts +0 -109
  236. package/src/analytics/subscription.ts +0 -43
  237. package/src/analytics/visit.model.ts +0 -39
  238. package/src/analytics/webSocket.ts +0 -53
  239. package/src/api-key.model.ts +0 -11
  240. package/src/base-entity.model.ts +0 -34
  241. package/src/contact.model.ts +0 -45
  242. package/src/core.model.ts +0 -103
  243. package/src/currency.model.ts +0 -582
  244. package/src/date-picker.model.ts +0 -5
  245. package/src/email-template.model.ts +0 -50
  246. package/src/email.model.ts +0 -46
  247. package/src/employee.model.ts +0 -199
  248. package/src/entity-with-members.model.ts +0 -16
  249. package/src/feature.model.ts +0 -108
  250. package/src/file-provider.ts +0 -37
  251. package/src/help-center-article.model.ts +0 -35
  252. package/src/help-center.model.ts +0 -33
  253. package/src/http-status.enum.ts +0 -58
  254. package/src/import-export.model.ts +0 -42
  255. package/src/index.ts +0 -60
  256. package/src/integration/dify.ts +0 -31
  257. package/src/integration/dingtalk.ts +0 -16
  258. package/src/integration/fastgpt.ts +0 -32
  259. package/src/integration/firecrawl.ts +0 -46
  260. package/src/integration/github.ts +0 -149
  261. package/src/integration/index.ts +0 -15
  262. package/src/integration/lark.ts +0 -79
  263. package/src/integration/wecom.ts +0 -16
  264. package/src/integration.model.ts +0 -119
  265. package/src/invite.model.ts +0 -144
  266. package/src/language.model.ts +0 -22
  267. package/src/organization-contact.model.ts +0 -84
  268. package/src/organization-language.model.ts +0 -24
  269. package/src/organization-projects.model.ts +0 -99
  270. package/src/organization-team-employee-model.ts +0 -14
  271. package/src/organization-team-model.ts +0 -25
  272. package/src/organization.model.ts +0 -266
  273. package/src/plugin.ts +0 -15
  274. package/src/role-permission.model.ts +0 -123
  275. package/src/role.model.ts +0 -31
  276. package/src/schedule.ts +0 -71
  277. package/src/secret-token.model.ts +0 -15
  278. package/src/seed.model.ts +0 -50
  279. package/src/storage-file.model.ts +0 -46
  280. package/src/tag-entity.model.ts +0 -23
  281. package/src/tenant.model.ts +0 -52
  282. package/src/tools/index.ts +0 -1
  283. package/src/tools/sandbox.ts +0 -5
  284. package/src/translation.model.ts +0 -37
  285. package/src/types.ts +0 -277
  286. package/src/user-organization.model.ts +0 -31
  287. package/src/user.model.ts +0 -151
  288. package/src/visibility.model.ts +0 -6
  289. package/tsconfig.json +0 -22
  290. package/tsconfig.lib.json +0 -10
  291. 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
  }