@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,61 @@
1
+ import { AnalyticsPermissionsEnum } from './analytics/index';
2
+ import { AIPermissionsEnum } from './ai/index';
3
+ import { IBasePerTenantEntityModel } from './base-entity.model';
4
+ import { IRole } from './role.model';
5
+ export interface IRolePermission extends IBasePerTenantEntityModel {
6
+ roleId: string;
7
+ permission: string;
8
+ role: IRole;
9
+ enabled: boolean;
10
+ }
11
+ export interface IRolePermissionMigrateInput extends IBasePerTenantEntityModel {
12
+ permission: string;
13
+ role: string;
14
+ isImporting: boolean;
15
+ sourceId: string;
16
+ }
17
+ export interface IRolePermissionCreateInput extends IBasePerTenantEntityModel {
18
+ roleId: string;
19
+ permission: string;
20
+ enabled: boolean;
21
+ }
22
+ export interface IRolePermissionUpdateInput {
23
+ enabled: boolean;
24
+ }
25
+ export declare enum PermissionsEnum {
26
+ PROFILE_EDIT = "PROFILE_EDIT",
27
+ ADMIN_DASHBOARD_VIEW = "ADMIN_DASHBOARD_VIEW",
28
+ ORG_EMPLOYEES_VIEW = "ORG_EMPLOYEES_VIEW",
29
+ ORG_EMPLOYEES_EDIT = "ORG_EMPLOYEES_EDIT",
30
+ ORG_TAGS_EDIT = "ORG_TAGS_EDIT",
31
+ ORG_USERS_VIEW = "ORG_USERS_VIEW",
32
+ ORG_USERS_EDIT = "ORG_USERS_EDIT",
33
+ ORG_INVITE_VIEW = "ORG_INVITE_VIEW",
34
+ ORG_INVITE_EDIT = "ORG_INVITE_EDIT",
35
+ ALL_ORG_VIEW = "ALL_ORG_VIEW",
36
+ ALL_ORG_EDIT = "ALL_ORG_EDIT",
37
+ APPROVAL_POLICY_VIEW = "APPROVALS_POLICY_VIEW",
38
+ APPROVAL_POLICY_EDIT = "APPROVALS_POLICY_EDIT",
39
+ CHANGE_SELECTED_ORGANIZATION = "CHANGE_SELECTED_ORGANIZATION",
40
+ CHANGE_ROLES_PERMISSIONS = "CHANGE_ROLES_PERMISSIONS",
41
+ SUPER_ADMIN_EDIT = "SUPER_ADMIN_EDIT",
42
+ PUBLIC_PAGE_EDIT = "PUBLIC_PAGE_EDIT",
43
+ VIEW_ALL_EMAILS = "VIEW_ALL_EMAILS",
44
+ VIEW_ALL_EMAIL_TEMPLATES = "VIEW_ALL_EMAIL_TEMPLATES",
45
+ ORG_HELP_CENTER_EDIT = "ORG_HELP_CENTER_EDIT",
46
+ ORG_CONTACT_EDIT = "ORG_CONTACT_EDIT",
47
+ ORG_CONTACT_VIEW = "ORG_CONTACT_VIEW",
48
+ ORG_DEMO_EDIT = "ORG_DEMO_EDIT",// Orgnization demo edit permission
49
+ INTEGRATION_EDIT = "INTEGRATION_EDIT",
50
+ INTEGRATION_VIEW = "INTEGRATION_VIEW",
51
+ FILE_STORAGE_VIEW = "FILE_STORAGE_VIEW",
52
+ SMS_GATEWAY_VIEW = "SMS_GATEWAY_VIEW",
53
+ CUSTOM_SMTP_VIEW = "CUSTOM_SMTP_VIEW",
54
+ VIEW_ALL_ACCOUNTING_TEMPLATES = "VIEW_ALL_ACCOUNTING_TEMPLATES",
55
+ ACCESS_DELETE_ACCOUNT = "ACCESS_DELETE_ACCOUNT",
56
+ ACCESS_DELETE_ALL_DATA = "ACCESS_DELETE_ALL_DATA"
57
+ }
58
+ export declare const PermissionGroups: {
59
+ GENERAL: (PermissionsEnum | AIPermissionsEnum | AnalyticsPermissionsEnum)[];
60
+ ADMINISTRATION: PermissionsEnum[];
61
+ };
@@ -0,0 +1,26 @@
1
+ import { IUser } from './user.model';
2
+ import { IBasePerTenantEntityModel } from './base-entity.model';
3
+ import { IRolePermission } from './role-permission.model';
4
+ export interface IRole extends IRoleCreateInput {
5
+ isSystem?: boolean;
6
+ rolePermissions?: IRolePermission[];
7
+ users?: IUser[];
8
+ }
9
+ export interface IRoleCreateInput extends IBasePerTenantEntityModel {
10
+ name: string;
11
+ }
12
+ export declare enum RolesEnum {
13
+ SUPER_ADMIN = "SUPER_ADMIN",
14
+ ADMIN = "ADMIN",
15
+ DATA_ENTRY = "DATA_ENTRY",
16
+ EMPLOYEE = "EMPLOYEE",
17
+ CANDIDATE = "CANDIDATE",
18
+ MANAGER = "MANAGER",
19
+ VIEWER = "VIEWER",
20
+ TRIAL = "TRIAL"
21
+ }
22
+ export interface IRoleMigrateInput extends IBasePerTenantEntityModel {
23
+ name: string;
24
+ isImporting: boolean;
25
+ sourceId: string;
26
+ }
@@ -0,0 +1,27 @@
1
+ export declare enum ScheduleTaskStatus {
2
+ PAUSED = "paused",
3
+ ARCHIVED = "archived",
4
+ SCHEDULED = "scheduled"
5
+ }
6
+ export declare enum TaskFrequency {
7
+ Once = "Once",
8
+ Daily = "Daily",
9
+ Weekly = "Weekly",
10
+ Monthly = "Monthly",
11
+ Yearly = "Yearly"
12
+ }
13
+ export type TScheduleOptions = {
14
+ frequency: TaskFrequency;
15
+ time: string;
16
+ dayOfWeek?: number;
17
+ dayOfMonth?: number;
18
+ month?: number;
19
+ date?: string;
20
+ };
21
+ /**
22
+ * Generate cron expression: Minutes Hour Day Month Week
23
+ *
24
+ * @param schedule
25
+ * @returns
26
+ */
27
+ export declare function generateCronExpression(schedule: TScheduleOptions): string;
@@ -0,0 +1,11 @@
1
+ import { IBaseEntityModel } from './base-entity.model';
2
+ export interface ISecretToken extends IBaseEntityModel {
3
+ entityId?: string;
4
+ token: string;
5
+ validUntil?: Date;
6
+ expired?: boolean;
7
+ }
8
+ export interface ISecretTokenFindInput extends IBaseEntityModel {
9
+ entityId?: string;
10
+ token?: string;
11
+ }
@@ -0,0 +1,37 @@
1
+ import { CurrenciesEnum } from './currency.model';
2
+ import { DefaultValueDateTypeEnum } from './organization.model';
3
+ import { IUser, LanguagesEnum } from './user.model';
4
+ export interface IDefaultUser {
5
+ email: string;
6
+ password: string;
7
+ imageUrl: string;
8
+ firstName?: string;
9
+ lastName?: string;
10
+ preferredLanguage: LanguagesEnum;
11
+ }
12
+ export interface IDefaultEmployee extends IDefaultUser {
13
+ startedWorkOn?: string;
14
+ endWork?: string;
15
+ employeeLevel?: string;
16
+ }
17
+ export interface IDefaultOrganization {
18
+ name: string;
19
+ currency: CurrenciesEnum;
20
+ defaultValueDateType: DefaultValueDateTypeEnum;
21
+ imageUrl: string;
22
+ }
23
+ export interface ISeedUsers {
24
+ adminUsers: IUser[];
25
+ employeeUsers: IUser[];
26
+ candidateUsers: IUser[];
27
+ }
28
+ export interface IDefaultProductCategory {
29
+ name: string;
30
+ description: string;
31
+ imageUrl: string;
32
+ }
33
+ export interface IDefaultProductType {
34
+ name: string;
35
+ description: string;
36
+ icon: string;
37
+ }
@@ -0,0 +1,40 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { FileStorageProviderEnum } from './file-provider';
3
+ import { _TFile } from './types';
4
+ export type TFile = _TFile & {
5
+ fileType?: string;
6
+ contents?: string;
7
+ description?: string;
8
+ size?: number;
9
+ createdAt?: Date;
10
+ storageFileId?: string;
11
+ };
12
+ export interface IStorageFile extends IBasePerTenantAndOrganizationEntityModel {
13
+ file: string;
14
+ url?: string;
15
+ thumb?: string;
16
+ fileUrl?: string;
17
+ thumbUrl?: string;
18
+ originalName?: string;
19
+ encoding?: string;
20
+ size?: number;
21
+ mimetype?: string;
22
+ recordedAt?: Date;
23
+ storageProvider?: FileStorageProviderEnum;
24
+ }
25
+ export interface ICreateStorageFileInput extends IBasePerTenantAndOrganizationEntityModel {
26
+ activityTimestamp: string;
27
+ employeeId?: string;
28
+ file: string;
29
+ thumb?: string;
30
+ recordedAt: Date | string;
31
+ }
32
+ export interface IUpdateStorageFileInput extends ICreateStorageFileInput {
33
+ id: string;
34
+ }
35
+ export type TFileDirectory = TFile & {
36
+ fullPath?: string;
37
+ directory?: string;
38
+ hasChildren?: boolean;
39
+ children?: TFileDirectory[];
40
+ };
@@ -0,0 +1,20 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { I18nObject } from './types';
3
+ export interface ITag extends IBasePerTenantAndOrganizationEntityModel {
4
+ name?: string;
5
+ label?: I18nObject;
6
+ description?: string;
7
+ category?: TagCategoryEnum;
8
+ color?: string;
9
+ isSelected?: boolean;
10
+ icon?: string;
11
+ }
12
+ export interface ITagName {
13
+ name?: string;
14
+ }
15
+ export declare enum TagCategoryEnum {
16
+ INDICATOR = "indicator",
17
+ STORY = "story",
18
+ TOOLSET = "toolset",
19
+ XPERT = "xpert"
20
+ }
@@ -0,0 +1,40 @@
1
+ import { IImportRecord } from './import-export.model';
2
+ import { IFeatureOrganization } from './feature.model';
3
+ import { FileStorageProviderEnum, S3FileStorageProviderConfig } from './file-provider';
4
+ import { IOrganization, IOrganizationCreateInput } from './organization.model';
5
+ import { IRolePermission } from './role-permission.model';
6
+ import { IUserCreateInput } from './user.model';
7
+ export interface ITenant {
8
+ id?: string;
9
+ name?: string;
10
+ readonly createdAt?: Date;
11
+ readonly updatedAt?: Date;
12
+ organizations?: IOrganization[];
13
+ rolePermissions?: IRolePermission[];
14
+ featureOrganizations?: IFeatureOrganization[];
15
+ importRecords?: IImportRecord[];
16
+ settings?: ISetting[];
17
+ }
18
+ export interface ITenantCreateInput {
19
+ name: string;
20
+ isImporting?: boolean;
21
+ sourceId?: string;
22
+ userSourceId?: string;
23
+ superAdmin?: IUserCreateInput;
24
+ defaultOrganization?: IOrganizationCreateInput;
25
+ }
26
+ export interface ISetting {
27
+ name: string;
28
+ value: string;
29
+ }
30
+ export interface ITenantSetting extends S3FileStorageProviderConfig {
31
+ fileStorageProvider?: FileStorageProviderEnum;
32
+ tenant_title?: string;
33
+ tenant_title_en?: string;
34
+ tenant_enable_feishu?: boolean;
35
+ tenant_enable_dingtalk?: boolean;
36
+ tenant_enable_wechat?: boolean;
37
+ tenant_enable_github?: boolean;
38
+ tenant_enable_google?: boolean;
39
+ }
40
+ export declare const DEFAULT_TENANT = "Default Tenant";
@@ -0,0 +1 @@
1
+ export * from './sandbox';
@@ -0,0 +1,5 @@
1
+ export declare enum InterruptMessageType {
2
+ SlidesTemplate = "slides_template",
3
+ SwitchGitHubRepository = "switch_github_repository",
4
+ Select = "select"
5
+ }
@@ -0,0 +1,26 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { LanguagesEnum } from './user.model';
3
+ export interface ITranslation<T> extends IBasePerTenantAndOrganizationEntityModel {
4
+ reference?: ITranslatable<T>;
5
+ referenceId?: string;
6
+ languageCode: string;
7
+ }
8
+ export interface ITranslatable<T> extends IBasePerTenantAndOrganizationEntityModel {
9
+ translations?: ITranslation<T>[];
10
+ translate?(languageCode: string): any;
11
+ translateNested?(languageCode: string, translatePropsInput: Array<any>): any;
12
+ }
13
+ export interface TranslateInput {
14
+ key: string;
15
+ alias: string;
16
+ }
17
+ export interface TranslatePropertyInput {
18
+ prop: string;
19
+ propsTranslate: Array<TranslateInput>;
20
+ propAsArr?: Array<string>;
21
+ }
22
+ export declare const TranslationLanguageMap: {
23
+ 'zh-CN': string;
24
+ 'zh-Hans': string;
25
+ };
26
+ export declare function mapTranslationLanguage(languageCode: LanguagesEnum): any;
package/src/types.d.ts ADDED
@@ -0,0 +1,241 @@
1
+ import ShortUniqueId from 'short-unique-id';
2
+ export declare const uuid: ShortUniqueId;
3
+ /**
4
+ * @description
5
+ * An entity ID. Represents a unique identifier as a string.
6
+ *
7
+ * @docsCategory Type Definitions
8
+ * @docsSubcategory Identifiers
9
+ */
10
+ export type ID = string;
11
+ export interface I18nObject {
12
+ en_US: string;
13
+ zh_Hans?: string;
14
+ }
15
+ export type TAvatar = {
16
+ emoji?: {
17
+ id: string;
18
+ set?: '' | 'apple' | 'google' | 'twitter' | 'facebook';
19
+ colons?: string;
20
+ unified?: string;
21
+ };
22
+ /**
23
+ * Use Noto Color Emoji:
24
+ * https://fonts.google.com/noto/specimen/Noto+Color+Emoji/
25
+ */
26
+ useNotoColor?: boolean;
27
+ background?: string;
28
+ url?: string;
29
+ };
30
+ export type TDeleteResult = {
31
+ /**
32
+ * Raw SQL result returned by executed query.
33
+ */
34
+ raw: any;
35
+ /**
36
+ * Number of affected rows/documents
37
+ * Not all drivers support this
38
+ */
39
+ affected?: number | null;
40
+ };
41
+ export type TranslateOptions = {
42
+ lang?: string;
43
+ args?: ({
44
+ [k: string]: any;
45
+ } | string)[] | {
46
+ [k: string]: any;
47
+ };
48
+ debug?: boolean;
49
+ };
50
+ /**
51
+ * Select option type
52
+ */
53
+ export type TSelectOption<T = string | number | boolean, K = string> = {
54
+ key?: K;
55
+ value: T;
56
+ label?: I18nObject | string;
57
+ description?: I18nObject | string;
58
+ icon?: string;
59
+ };
60
+ export declare enum ParameterTypeEnum {
61
+ STRING = "string",
62
+ NUMBER = "number",
63
+ BOOLEAN = "boolean",
64
+ ARRAY = "array",
65
+ SELECT = "select",
66
+ SECRET_INPUT = "secret-input",
67
+ FILE = "file"
68
+ }
69
+ export type TParameterOption = {
70
+ value: string;
71
+ label: I18nObject;
72
+ };
73
+ export type TParameterHelpInfo = {
74
+ title: I18nObject;
75
+ url: I18nObject;
76
+ };
77
+ export type TParameter = {
78
+ name: string;
79
+ label: I18nObject;
80
+ placeholder?: I18nObject;
81
+ description?: I18nObject;
82
+ type: ParameterTypeEnum;
83
+ required?: boolean;
84
+ default?: number | string;
85
+ min?: number;
86
+ max?: number;
87
+ options?: TParameterOption[];
88
+ items?: {
89
+ type: ParameterTypeEnum;
90
+ };
91
+ when?: Record<string, unknown[]>;
92
+ /**
93
+ * Is visible for parameters
94
+ */
95
+ visible?: boolean;
96
+ help?: TParameterHelpInfo;
97
+ };
98
+ export type TParameterSchema = {
99
+ type: 'object' | 'array';
100
+ required?: string[];
101
+ secret?: string[];
102
+ /**
103
+ * @deprecated use parameters
104
+ */
105
+ properties?: any;
106
+ parameters?: TParameter[];
107
+ };
108
+ export interface IPoint {
109
+ x: number;
110
+ y: number;
111
+ }
112
+ export interface ISize {
113
+ width: number;
114
+ height: number;
115
+ }
116
+ export type _TFile = {
117
+ filePath: string;
118
+ fileUrl?: string;
119
+ mimeType?: string;
120
+ /**
121
+ * @deprecated use fileUrl instead
122
+ */
123
+ url?: string;
124
+ };
125
+ /**
126
+ * A recursive implementation of the Partial<T> type.
127
+ * Source: https://stackoverflow.com/a/49936686/772859
128
+ */
129
+ export type DeepPartial<T> = {
130
+ [P in keyof T]?: T[P] extends (infer U)[] ? DeepPartial<U>[] : T[P] extends Readonly<infer U>[] ? Readonly<DeepPartial<U>>[] : DeepPartial<T[P]>;
131
+ };
132
+ export interface ChecklistItem {
133
+ node?: string;
134
+ field?: string;
135
+ value?: string;
136
+ message: I18nObject;
137
+ level: 'error' | 'warning';
138
+ ruleCode?: string;
139
+ }
140
+ export interface RuleValidator {
141
+ validate(input: any, params?: any): Promise<ChecklistItem[]>;
142
+ }
143
+ export declare function letterStartSUID(start: string): string;
144
+ /**
145
+ * The type of icon to render.
146
+ * Determines how the `value` field should be interpreted.
147
+ */
148
+ export type IconType = 'image' | 'svg' | 'font' | 'emoji' | 'lottie';
149
+ /**
150
+ * Defines a unified structure for representing different kinds of icons
151
+ * in the frontend (image, SVG, font icon, emoji, Lottie animation, etc.).
152
+ *
153
+ * ---
154
+ * 🧩 Supported icon types:
155
+ *
156
+ * | Type | Description | Example `value` |
157
+ * |-----------|----------------------------------|-----------------|
158
+ * | `image` | Raster or Base64-encoded image | `"https://cdn.example.com/logo.png"` or `"data:image/png;base64,..."` |
159
+ * | `svg` | Inline SVG markup | `"<svg xmlns='http://www.w3.org/2000/svg'><path d='M12 2l4 20H8z'/></svg>"` |
160
+ * | `font` | Font icon class name | `"fa-solid fa-user"` or `"material-icons:home"` |
161
+ * | `emoji` | Unicode emoji character | `"🚀"` |
162
+ * | `lottie` | Lottie animation JSON URL | `"https://assets.lottiefiles.com/packages/lf20_abc123.json"` |
163
+ *
164
+ * ---
165
+ * 🧠 Example usages:
166
+ *
167
+ * ```json
168
+ * {
169
+ * "icon": {
170
+ * "type": "image",
171
+ * "value": "https://cdn.example.com/logo.png",
172
+ * "alt": "Company logo"
173
+ * }
174
+ * }
175
+ *
176
+ * {
177
+ * "icon": {
178
+ * "type": "svg",
179
+ * "value": "<svg xmlns='http://www.w3.org/2000/svg'><path d='M12 2l4 20H8z'/></svg>"
180
+ * }
181
+ * }
182
+ *
183
+ * {
184
+ * "icon": {
185
+ * "type": "font",
186
+ * "value": "fa-solid fa-user",
187
+ * "color": "#666",
188
+ * "size": 20
189
+ * }
190
+ * }
191
+ *
192
+ * {
193
+ * "icon": {
194
+ * "type": "emoji",
195
+ * "value": "🚀",
196
+ * "size": 32
197
+ * }
198
+ * }
199
+ *
200
+ * {
201
+ * "icon": {
202
+ * "type": "lottie",
203
+ * "value": "https://assets.lottiefiles.com/packages/lf20_abc123.json"
204
+ * }
205
+ * }
206
+ * ```
207
+ * ---
208
+ */
209
+ export interface IconDefinition {
210
+ /**
211
+ * The type of icon to render.
212
+ * Determines how the `value` field should be interpreted.
213
+ */
214
+ type: IconType;
215
+ /**
216
+ * The icon content or resource reference.
217
+ * Can be a URL, Base64 data, SVG markup, emoji, or animation file.
218
+ */
219
+ value: string;
220
+ /**
221
+ * Optional color for the icon.
222
+ * Typically used for font, SVG, or emoji icons.
223
+ */
224
+ color?: string;
225
+ /**
226
+ * Optional size of the icon, in pixels.
227
+ * Defines the intended rendered size (e.g. 24 → 24px).
228
+ */
229
+ size?: number;
230
+ /**
231
+ * Alternative text for accessibility.
232
+ * Useful for image or SVG icons.
233
+ */
234
+ alt?: string;
235
+ /**
236
+ * Optional inline style definitions.
237
+ * Can include any CSS-compatible properties
238
+ * (e.g. `{ "borderRadius": "50%", "backgroundColor": "#f0f0f0" }`).
239
+ */
240
+ style?: Record<string, string>;
241
+ }
@@ -0,0 +1,24 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { LanguagesEnum, IUser } from './user.model';
3
+ export interface IUserOrganization extends IBasePerTenantAndOrganizationEntityModel {
4
+ userId: string;
5
+ isDefault: boolean;
6
+ isActive: boolean;
7
+ user?: IUser;
8
+ }
9
+ export interface IUserOrganizationFindInput extends IBasePerTenantAndOrganizationEntityModel {
10
+ id?: string;
11
+ userId?: string;
12
+ isDefault?: boolean;
13
+ isActive?: boolean;
14
+ }
15
+ export interface IUserOrganizationCreateInput extends IBasePerTenantAndOrganizationEntityModel {
16
+ userId: string;
17
+ isDefault?: boolean;
18
+ isActive?: boolean;
19
+ }
20
+ export interface IUserOrganizationDeleteInput {
21
+ userOrganizationId: string;
22
+ requestingUser: IUser;
23
+ language?: LanguagesEnum;
24
+ }