@xpert-ai/contracts 3.9.0-beta.1

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 (157) hide show
  1. package/README.md +3 -0
  2. package/index.cjs.js +4945 -0
  3. package/index.d.ts +1 -0
  4. package/index.esm.js +4792 -0
  5. package/package.json +25 -0
  6. package/src/agent/ai-model.d.ts +9 -0
  7. package/src/agent/graph.d.ts +182 -0
  8. package/src/agent/index.d.ts +6 -0
  9. package/src/agent/interrupt.d.ts +51 -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/assistant-binding.model.d.ts +81 -0
  17. package/src/ai/chat-event.model.d.ts +8 -0
  18. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  19. package/src/ai/chat-message.model.d.ts +93 -0
  20. package/src/ai/chat.model.d.ts +191 -0
  21. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  22. package/src/ai/copilot-example.model.d.ts +19 -0
  23. package/src/ai/copilot-model.model.d.ts +30 -0
  24. package/src/ai/copilot-organization.model.d.ts +17 -0
  25. package/src/ai/copilot-provider.model.d.ts +31 -0
  26. package/src/ai/copilot-role.model.d.ts +43 -0
  27. package/src/ai/copilot-store.model.d.ts +29 -0
  28. package/src/ai/copilot-user.model.d.ts +27 -0
  29. package/src/ai/copilot.model.d.ts +36 -0
  30. package/src/ai/environment.model.d.ts +16 -0
  31. package/src/ai/feature.model.d.ts +10 -0
  32. package/src/ai/index.d.ts +84 -0
  33. package/src/ai/knowledge-doc-chunk.model.d.ts +61 -0
  34. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  35. package/src/ai/knowledge-doc.model.d.ts +222 -0
  36. package/src/ai/knowledge-pipeline.d.ts +107 -0
  37. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  38. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  39. package/src/ai/knowledgebase.model.d.ts +174 -0
  40. package/src/ai/message-content.utils.d.ts +58 -0
  41. package/src/ai/middleware.model.d.ts +24 -0
  42. package/src/ai/rag-web.d.ts +26 -0
  43. package/src/ai/rag.d.ts +24 -0
  44. package/src/ai/role-permissions.d.ts +13 -0
  45. package/src/ai/sandbox.d.ts +8 -0
  46. package/src/ai/skill.model.d.ts +241 -0
  47. package/src/ai/types.d.ts +77 -0
  48. package/src/ai/xpert-agent-execution.model.d.ts +105 -0
  49. package/src/ai/xpert-agent.model.d.ts +194 -0
  50. package/src/ai/xpert-chat.model.d.ts +66 -0
  51. package/src/ai/xpert-project.model.d.ts +89 -0
  52. package/src/ai/xpert-table.model.d.ts +84 -0
  53. package/src/ai/xpert-task.model.d.ts +26 -0
  54. package/src/ai/xpert-template.model.d.ts +47 -0
  55. package/src/ai/xpert-tool-mcp.model.d.ts +91 -0
  56. package/src/ai/xpert-tool.model.d.ts +154 -0
  57. package/src/ai/xpert-toolset.model.d.ts +200 -0
  58. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  59. package/src/ai/xpert-workflow.model.d.ts +445 -0
  60. package/src/ai/xpert-workspace.model.d.ts +37 -0
  61. package/src/ai/xpert.model.d.ts +513 -0
  62. package/src/ai/xpert.utils.d.ts +87 -0
  63. package/src/analytics/ai.d.ts +73 -0
  64. package/src/analytics/approval-policy.model.d.ts +30 -0
  65. package/src/analytics/business-area-user.model.d.ts +35 -0
  66. package/src/analytics/business-area.d.ts +17 -0
  67. package/src/analytics/certification.model.d.ts +11 -0
  68. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  69. package/src/analytics/chatbi-model.model.d.ts +18 -0
  70. package/src/analytics/collection.model.d.ts +6 -0
  71. package/src/analytics/comment.model.d.ts +10 -0
  72. package/src/analytics/data-source-type.d.ts +16 -0
  73. package/src/analytics/data-source.d.ts +62 -0
  74. package/src/analytics/favorite.d.ts +14 -0
  75. package/src/analytics/features.d.ts +19 -0
  76. package/src/analytics/feed-model.d.ts +13 -0
  77. package/src/analytics/gateway.d.ts +28 -0
  78. package/src/analytics/index.d.ts +38 -0
  79. package/src/analytics/indicator-app.d.ts +44 -0
  80. package/src/analytics/indicator-market.d.ts +4 -0
  81. package/src/analytics/indicator.d.ts +105 -0
  82. package/src/analytics/model-query-log.model.d.ts +41 -0
  83. package/src/analytics/model-query.d.ts +21 -0
  84. package/src/analytics/notification-destination.d.ts +10 -0
  85. package/src/analytics/permission-approval-user.model.d.ts +10 -0
  86. package/src/analytics/permission-approval.model.d.ts +47 -0
  87. package/src/analytics/project.model.d.ts +50 -0
  88. package/src/analytics/role-permissions.d.ts +25 -0
  89. package/src/analytics/schema.d.ts +262 -0
  90. package/src/analytics/screenshot.model.d.ts +24 -0
  91. package/src/analytics/semantic-model-entity.d.ts +38 -0
  92. package/src/analytics/semantic-model-member.d.ts +27 -0
  93. package/src/analytics/semantic-model.d.ts +183 -0
  94. package/src/analytics/story-point.d.ts +11 -0
  95. package/src/analytics/story-template.model.d.ts +28 -0
  96. package/src/analytics/story-widget.d.ts +12 -0
  97. package/src/analytics/story.d.ts +93 -0
  98. package/src/analytics/subscription.d.ts +38 -0
  99. package/src/analytics/visit.model.d.ts +34 -0
  100. package/src/analytics/webSocket.d.ts +48 -0
  101. package/src/api-key.model.d.ts +68 -0
  102. package/src/base-entity.model.d.ts +27 -0
  103. package/src/contact.model.d.ts +41 -0
  104. package/src/core.model.d.ts +97 -0
  105. package/src/country.model.d.ts +5 -0
  106. package/src/currency.model.d.ts +579 -0
  107. package/src/custom-smtp.model.d.ts +23 -0
  108. package/src/date-picker.model.d.ts +5 -0
  109. package/src/email-template.model.d.ts +39 -0
  110. package/src/email.model.d.ts +36 -0
  111. package/src/employee.model.d.ts +128 -0
  112. package/src/entity-with-members.model.d.ts +13 -0
  113. package/src/feature.model.d.ts +93 -0
  114. package/src/file-asset.model.d.ts +77 -0
  115. package/src/file-provider.d.ts +31 -0
  116. package/src/http-status.enum.d.ts +57 -0
  117. package/src/import-export.model.d.ts +36 -0
  118. package/src/index.d.ts +53 -0
  119. package/src/integration/dingtalk.d.ts +2 -0
  120. package/src/integration/firecrawl.d.ts +2 -0
  121. package/src/integration/github.d.ts +69 -0
  122. package/src/integration/index.d.ts +4 -0
  123. package/src/integration/lark.d.ts +5 -0
  124. package/src/integration/wecom.d.ts +2 -0
  125. package/src/integration.model.d.ts +92 -0
  126. package/src/invite.model.d.ts +125 -0
  127. package/src/language.model.d.ts +19 -0
  128. package/src/organization-contact.model.d.ts +72 -0
  129. package/src/organization-department.model.d.ts +20 -0
  130. package/src/organization-language.model.d.ts +18 -0
  131. package/src/organization-projects.model.d.ts +80 -0
  132. package/src/organization-team-employee-model.d.ts +12 -0
  133. package/src/organization-team-model.d.ts +19 -0
  134. package/src/organization.model.d.ts +238 -0
  135. package/src/password-reset.model.d.ts +18 -0
  136. package/src/plain-object.model.d.ts +13 -0
  137. package/src/plugin.d.ts +116 -0
  138. package/src/role-permission.model.d.ts +61 -0
  139. package/src/role.model.d.ts +25 -0
  140. package/src/schedule.d.ts +27 -0
  141. package/src/scope.model.d.ts +9 -0
  142. package/src/secret-token.model.d.ts +11 -0
  143. package/src/seed.model.d.ts +37 -0
  144. package/src/storage-file.model.d.ts +39 -0
  145. package/src/tag-entity.model.d.ts +20 -0
  146. package/src/tenant.model.d.ts +40 -0
  147. package/src/tools/index.d.ts +1 -0
  148. package/src/tools/sandbox.d.ts +5 -0
  149. package/src/translation.model.d.ts +26 -0
  150. package/src/types.d.ts +248 -0
  151. package/src/user-group.model.d.ts +7 -0
  152. package/src/user-me-context.model.d.ts +9 -0
  153. package/src/user-organization.model.d.ts +28 -0
  154. package/src/user.model.d.ts +131 -0
  155. package/src/view-extension/index.d.ts +1 -0
  156. package/src/view-extension/model.d.ts +183 -0
  157. package/src/visibility.model.d.ts +6 -0
@@ -0,0 +1,128 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { IContact } from './contact.model';
3
+ import { CrudActionEnum, IOrganizationFindInput } from './organization.model';
4
+ import { IOrganizationTeam } from './organization-team-model';
5
+ import { ITag } from './tag-entity.model';
6
+ import { IUser, IUserFindInput } from './user.model';
7
+ export interface IEmployee extends IBasePerTenantAndOrganizationEntityModel {
8
+ [x: string]: any;
9
+ endWork?: any;
10
+ startedWorkOn?: any;
11
+ user: IUser;
12
+ userId: string;
13
+ valueDate?: Date;
14
+ isActive: boolean;
15
+ short_description?: string;
16
+ description?: string;
17
+ teams?: IOrganizationTeam[];
18
+ payPeriod?: string;
19
+ billRateValue?: number;
20
+ billRateCurrency?: string;
21
+ reWeeklyLimit?: number;
22
+ tags: ITag[];
23
+ offerDate?: Date;
24
+ acceptDate?: Date;
25
+ rejectDate?: Date;
26
+ employeeLevel?: string;
27
+ anonymousBonus?: boolean;
28
+ }
29
+ export interface UpdateEmployeeJobsStatistics {
30
+ isJobSearchActive?: boolean;
31
+ }
32
+ export interface IEmployeeFindInput {
33
+ id?: string;
34
+ organization?: IOrganizationFindInput;
35
+ user?: IUserFindInput;
36
+ valueDate?: Date;
37
+ organizationId?: string;
38
+ tenantId?: string;
39
+ tags?: ITag[];
40
+ }
41
+ export interface IEmployeeUpdateInput extends IBasePerTenantAndOrganizationEntityModel {
42
+ payPeriod?: string;
43
+ billRateValue?: number;
44
+ billRateCurrency?: string;
45
+ reWeeklyLimit?: number;
46
+ offerDate?: Date;
47
+ acceptDate?: Date;
48
+ rejectDate?: Date;
49
+ short_description?: string;
50
+ description?: string;
51
+ averageIncome?: number;
52
+ averageExpenses?: number;
53
+ averageBonus?: number;
54
+ isJobSearchActive?: boolean;
55
+ contact?: IContact;
56
+ linkedInUrl?: string;
57
+ facebookUrl?: string;
58
+ instagramUrl?: string;
59
+ twitterUrl?: string;
60
+ githubUrl?: string;
61
+ gitlabUrl?: string;
62
+ upworkUrl?: string;
63
+ }
64
+ export interface IEmployeeCreateInput extends IBasePerTenantAndOrganizationEntityModel {
65
+ user: IUser;
66
+ password?: string;
67
+ offerDate?: Date;
68
+ acceptDate?: Date;
69
+ rejectDate?: Date;
70
+ members?: IEmployee[];
71
+ tags?: ITag[];
72
+ startedWorkOn?: any;
73
+ short_description?: string;
74
+ description?: string;
75
+ originalUrl?: string;
76
+ isActive?: boolean;
77
+ }
78
+ export interface ISelectedEmployee {
79
+ id: string;
80
+ firstName: string;
81
+ lastName: string;
82
+ fullName?: string;
83
+ imageUrl: string;
84
+ defaultType?: DEFAULT_TYPE;
85
+ tags?: ITag[];
86
+ }
87
+ export declare enum DEFAULT_TYPE {
88
+ ALL_EMPLOYEE = "ALL_EMPLOYEE",
89
+ NO_EMPLOYEE = "NO_EMPLOYEE"
90
+ }
91
+ export declare enum PayPeriodEnum {
92
+ NONE = "NONE",
93
+ BI_WEEKLY = "BI_WEEKLY",
94
+ WEEKLY = "WEEKLY",
95
+ TWICE_PER_MONTH = "TWICE_PER_MONTH",
96
+ MONTHLY = "MONTHLY"
97
+ }
98
+ export interface IEmployeeLevel extends IBasePerTenantAndOrganizationEntityModel {
99
+ level: string;
100
+ tag?: ITag[];
101
+ }
102
+ export interface IEmployeeLevelInput extends IBasePerTenantAndOrganizationEntityModel {
103
+ level: string;
104
+ tags?: ITag[];
105
+ }
106
+ export interface IEmployeeLevelFindInput {
107
+ organizationId?: string;
108
+ tenantId: string;
109
+ }
110
+ export interface EmployeeViewModel {
111
+ fullName: string;
112
+ email: string;
113
+ bonus?: number;
114
+ endWork?: any;
115
+ id: string;
116
+ imageUrl?: string;
117
+ averageIncome?: number;
118
+ averageExpenses?: number;
119
+ averageBonus?: number;
120
+ workStatus?: string;
121
+ startedWorkOn?: string;
122
+ isActive?: boolean;
123
+ tags?: ITag[];
124
+ }
125
+ export interface IEmployeeStoreState {
126
+ employee: IEmployee | IEmployee[];
127
+ action: CrudActionEnum;
128
+ }
@@ -0,0 +1,13 @@
1
+ import { IEmployee } from './employee.model';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
3
+ import { ITag } from './tag-entity.model';
4
+ export interface IBaseEntityWithMembers extends IBasePerTenantAndOrganizationEntityModel {
5
+ members?: IEmployee[];
6
+ name?: string;
7
+ tags?: ITag[];
8
+ }
9
+ export interface IEditEntityByMemberInput {
10
+ addedEntityIds?: string[];
11
+ removedEntityIds?: string[];
12
+ member: IEmployee;
13
+ }
@@ -0,0 +1,93 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ export interface IFeature extends IBasePerTenantAndOrganizationEntityModel {
3
+ code: string;
4
+ description: string;
5
+ featureOrganizations?: IFeatureOrganization[];
6
+ image?: string;
7
+ readonly imageUrl?: string;
8
+ link: string;
9
+ name: string;
10
+ status: string;
11
+ icon: string;
12
+ isEnabled?: boolean;
13
+ isPaid?: boolean;
14
+ readonly parentId?: string;
15
+ parent?: IFeature;
16
+ children?: IFeature[];
17
+ }
18
+ export interface IFeatureCreateInput extends IFeature {
19
+ isEnabled: boolean;
20
+ }
21
+ export interface IFeatureOrganization extends IBasePerTenantAndOrganizationEntityModel {
22
+ feature: IFeature;
23
+ featureId?: string;
24
+ isEnabled: boolean;
25
+ }
26
+ export interface IFeatureOrganizationUpdateInput extends IBasePerTenantAndOrganizationEntityModel {
27
+ featureId: string;
28
+ isEnabled: boolean;
29
+ }
30
+ export interface IFeatureOrganizationFindInput extends IBasePerTenantAndOrganizationEntityModel {
31
+ featureId?: string;
32
+ }
33
+ export declare enum FeatureStatusEnum {
34
+ INFO = "info",
35
+ PRIMARY = "primary",
36
+ SUCCESS = "success",
37
+ WARNING = "warning"
38
+ }
39
+ export declare enum IFeatureToggleTypeEnum {
40
+ RELEASE = "release",
41
+ KILL_SWITCH = "kill-switch",
42
+ EXPERIMENT = "experiment",
43
+ OPERATIONAL = "operational",
44
+ PERMISSION = "permission"
45
+ }
46
+ export interface IFeatureToggleVariant {
47
+ name?: string;
48
+ weight?: number;
49
+ weightType?: string;
50
+ payload?: IFeatureTogglePayload;
51
+ overrides?: IFeatureToggleOverride[];
52
+ }
53
+ export interface IFeatureToggleOverride {
54
+ contextName?: string;
55
+ values?: string[];
56
+ }
57
+ export interface IFeatureTogglePayload {
58
+ type?: string;
59
+ value?: string;
60
+ }
61
+ export interface IFeatureToggle {
62
+ name: string;
63
+ description?: string;
64
+ type: IFeatureToggleTypeEnum;
65
+ project?: string;
66
+ enabled: boolean;
67
+ stale?: boolean;
68
+ strategies?: any;
69
+ variants?: IFeatureToggleVariant[];
70
+ createdAt?: string;
71
+ lastSeenAt?: string | null;
72
+ }
73
+ export declare enum FeatureEnum {
74
+ FEATURE_HOME = "FEATURE_HOME",
75
+ FEATURE_DASHBOARD = "FEATURE_DASHBOARD",
76
+ FEATURE_JOB = "FEATURE_JOB",
77
+ FEATURE_EMPLOYEES = "FEATURE_EMPLOYEES",
78
+ FEATURE_MANAGE_INVITE = "FEATURE_MANAGE_INVITE",
79
+ FEATURE_ORGANIZATION = "FEATURE_ORGANIZATION",
80
+ FEATURE_ORGANIZATION_TAG = "FEATURE_ORGANIZATION_TAG",
81
+ FEATURE_ORGANIZATION_PROJECT = "FEATURE_ORGANIZATION_PROJECT",
82
+ FEATURE_CONTACT = "FEATURE_CONTACT",
83
+ FEATURE_USER = "FEATURE_USER",
84
+ FEATURE_ORGANIZATIONS = "FEATURE_ORGANIZATIONS",
85
+ FEATURE_SETTING = "FEATURE_SETTING",
86
+ FEATURE_EMAIL_HISTORY = "FEATURE_EMAIL_HISTORY",
87
+ FEATURE_EMAIL_TEMPLATE = "FEATURE_EMAIL_TEMPLATE",
88
+ FEATURE_FILE_STORAGE = "FEATURE_FILE_STORAGE",
89
+ FEATURE_SMS_GATEWAY = "FEATURE_SMS_GATEWAY",
90
+ FEATURE_SMTP = "FEATURE_SMTP",
91
+ FEATURE_ROLES_PERMISSION = "FEATURE_ROLES_PERMISSION",
92
+ FEATURE_INTEGRATION = "FEATURE_INTEGRATION"
93
+ }
@@ -0,0 +1,77 @@
1
+ import { IStorageFile } from './storage-file.model';
2
+ export type FileAssetStatus = 'success' | 'partial_success' | 'failed';
3
+ export type FileAssetDestinationKind = 'storage' | 'volume' | 'sandbox';
4
+ export type FileAssetSourceKind = 'multipart' | 'storage_file' | 'local_file';
5
+ export type FileUploadVolumeCatalog = 'projects' | 'users' | 'knowledges' | 'skills';
6
+ export type FileUploadSandboxMode = 'mounted_workspace' | 'backend_upload';
7
+ export interface IFileAssetSource {
8
+ kind: FileAssetSourceKind;
9
+ name?: string;
10
+ originalName?: string;
11
+ mimeType?: string;
12
+ size?: number;
13
+ storageFileId?: string;
14
+ filePath?: string;
15
+ metadata?: Record<string, any>;
16
+ }
17
+ export interface IFileAssetDestination {
18
+ kind: FileAssetDestinationKind;
19
+ status: 'success' | 'failed';
20
+ path?: string;
21
+ url?: string;
22
+ referenceId?: string;
23
+ metadata?: Record<string, any>;
24
+ error?: string;
25
+ }
26
+ export interface IFileAsset {
27
+ name?: string;
28
+ originalName?: string;
29
+ mimeType?: string;
30
+ size?: number;
31
+ status: FileAssetStatus;
32
+ metadata?: Record<string, any>;
33
+ source?: IFileAssetSource;
34
+ destinations: IFileAssetDestination[];
35
+ }
36
+ export interface IUploadFileStorageTarget {
37
+ kind: 'storage';
38
+ strategy?: string;
39
+ provider?: string;
40
+ providerOptions?: Record<string, any>;
41
+ directory?: string;
42
+ fileName?: string;
43
+ prefix?: string;
44
+ metadata?: Record<string, any>;
45
+ }
46
+ export interface IUploadFileVolumeTarget {
47
+ kind: 'volume';
48
+ strategy?: string;
49
+ catalog: FileUploadVolumeCatalog;
50
+ projectId?: string;
51
+ knowledgeId?: string;
52
+ userId?: string;
53
+ tenantId?: string;
54
+ folder?: string;
55
+ fileName?: string;
56
+ metadata?: Record<string, any>;
57
+ }
58
+ export interface IUploadFileSandboxTarget {
59
+ kind: 'sandbox';
60
+ strategy?: string;
61
+ mode: FileUploadSandboxMode;
62
+ workspacePath?: string;
63
+ workspaceUrl?: string;
64
+ workspaceId?: string;
65
+ sandboxUrl?: string;
66
+ folder?: string;
67
+ fileName?: string;
68
+ metadata?: Record<string, any>;
69
+ }
70
+ export type IUploadFileTarget = IUploadFileStorageTarget | IUploadFileVolumeTarget | IUploadFileSandboxTarget;
71
+ export type TStorageFileAssetDestination = IFileAssetDestination & {
72
+ kind: 'storage';
73
+ referenceId?: IStorageFile['id'];
74
+ metadata?: Record<string, any> & {
75
+ storageFile?: IStorageFile;
76
+ };
77
+ };
@@ -0,0 +1,31 @@
1
+ export interface FileStorageOption {
2
+ dest: string | CallableFunction;
3
+ provider?: string;
4
+ prefix?: string;
5
+ filename?: string | CallableFunction;
6
+ }
7
+ export interface FileSystem {
8
+ rootPath: string;
9
+ baseUrl?: string;
10
+ }
11
+ export declare enum FileStorageProviderEnum {
12
+ LOCAL = "LOCAL"
13
+ }
14
+ export interface UploadedFile {
15
+ fieldname: string;
16
+ key: string;
17
+ originalname: string;
18
+ size: number;
19
+ encoding?: string;
20
+ mimetype?: string;
21
+ filename: string;
22
+ url: string;
23
+ path: string;
24
+ }
25
+ export interface S3FileStorageProviderConfig {
26
+ aws_access_key_id?: string;
27
+ aws_secret_access_key?: string;
28
+ aws_default_region?: string;
29
+ aws_bucket?: string;
30
+ aws_endpoint?: string;
31
+ }
@@ -0,0 +1,57 @@
1
+ export declare enum HttpStatus {
2
+ CONTINUE = 100,
3
+ SWITCHING_PROTOCOLS = 101,
4
+ PROCESSING = 102,
5
+ OK = 200,
6
+ CREATED = 201,
7
+ ACCEPTED = 202,
8
+ NON_AUTHORITATIVE_INFORMATION = 203,
9
+ NO_CONTENT = 204,
10
+ RESET_CONTENT = 205,
11
+ PARTIAL_CONTENT = 206,
12
+ AMBIGUOUS = 300,
13
+ MOVED_PERMANENTLY = 301,
14
+ FOUND = 302,
15
+ SEE_OTHER = 303,
16
+ NOT_MODIFIED = 304,
17
+ TEMPORARY_REDIRECT = 307,
18
+ PERMANENT_REDIRECT = 308,
19
+ BAD_REQUEST = 400,
20
+ UNAUTHORIZED = 401,
21
+ PAYMENT_REQUIRED = 402,
22
+ FORBIDDEN = 403,
23
+ NOT_FOUND = 404,
24
+ METHOD_NOT_ALLOWED = 405,
25
+ NOT_ACCEPTABLE = 406,
26
+ PROXY_AUTHENTICATION_REQUIRED = 407,
27
+ REQUEST_TIMEOUT = 408,
28
+ CONFLICT = 409,
29
+ GONE = 410,
30
+ LENGTH_REQUIRED = 411,
31
+ PRECONDITION_FAILED = 412,
32
+ PAYLOAD_TOO_LARGE = 413,
33
+ URI_TOO_LONG = 414,
34
+ UNSUPPORTED_MEDIA_TYPE = 415,
35
+ REQUESTED_RANGE_NOT_SATISFIABLE = 416,
36
+ EXPECTATION_FAILED = 417,
37
+ I_AM_A_TEAPOT = 418,
38
+ UNPROCESSABLE_ENTITY = 422,
39
+ FAILED_DEPENDENCY = 424,
40
+ TOO_MANY_REQUESTS = 429,
41
+ INTERNAL_SERVER_ERROR = 500,
42
+ NOT_IMPLEMENTED = 501,
43
+ BAD_GATEWAY = 502,
44
+ SERVICE_UNAVAILABLE = 503,
45
+ GATEWAY_TIMEOUT = 504,
46
+ HTTP_VERSION_NOT_SUPPORTED = 505
47
+ }
48
+ export declare enum RequestMethodEnum {
49
+ GET = "GET",
50
+ POST = "POST",
51
+ PUT = "PUT",
52
+ DELETE = "DELETE",
53
+ PATCH = "PATCH",
54
+ ALL = "ALL",
55
+ OPTIONS = "OPTIONS",
56
+ HEAD = "HEAD"
57
+ }
@@ -0,0 +1,36 @@
1
+ import { IBasePerTenantEntityModel } from "./base-entity.model";
2
+ export interface IImportRecord extends IBasePerTenantEntityModel {
3
+ entityType?: string;
4
+ sourceId?: string;
5
+ destinationId?: string;
6
+ importDate?: Date;
7
+ wasCreated?: boolean;
8
+ }
9
+ export interface IImportRecordFind extends IBasePerTenantEntityModel {
10
+ entityType?: string;
11
+ sourceId?: string;
12
+ destinationId?: string;
13
+ }
14
+ export interface IImportHistory extends IBasePerTenantEntityModel {
15
+ file: string;
16
+ path: string;
17
+ size: number;
18
+ status: string;
19
+ importDate?: Date;
20
+ }
21
+ export interface IEntityModel {
22
+ name: string;
23
+ value: string;
24
+ checked: boolean;
25
+ isGroup: boolean;
26
+ entities: IEntityModel[];
27
+ }
28
+ export declare enum ImportTypeEnum {
29
+ MERGE = "merge",
30
+ CLEAN = "clean"
31
+ }
32
+ export declare enum ImportHistoryStatusEnum {
33
+ SUCCESS = "Success",
34
+ FAILED = "Failed",
35
+ CANCELLED = "Cancelled"
36
+ }
package/src/index.d.ts ADDED
@@ -0,0 +1,53 @@
1
+ export * from './types';
2
+ export * from './contact.model';
3
+ export * from './core.model';
4
+ export * from './country.model';
5
+ export * from './currency.model';
6
+ export * from './email-template.model';
7
+ export * from './email.model';
8
+ export * from './employee.model';
9
+ export * from './entity-with-members.model';
10
+ export * from './feature.model';
11
+ export * from './file-provider';
12
+ export * from './file-asset.model';
13
+ export * from './http-status.enum';
14
+ export * from './import-export.model';
15
+ export * from './language.model';
16
+ export * from './organization-contact.model';
17
+ export * from './organization-department.model';
18
+ export * from './organization-language.model';
19
+ export * from './organization-team-employee-model';
20
+ export * from './organization-team-model';
21
+ export * from './organization.model';
22
+ export * from './role-permission.model';
23
+ export * from './seed.model';
24
+ export * from './tag-entity.model';
25
+ export * from './tenant.model';
26
+ export * from './translation.model';
27
+ export type { IBasePerTenantAndOrganizationEntityModel, IBasePerTenantEntityModel, IBaseRelationsEntityModel } from './base-entity.model';
28
+ export type { IBaseEntityModel as BaseEntityModel } from './base-entity.model';
29
+ export * from './role.model';
30
+ export * from './user-organization.model';
31
+ export * from './user-group.model';
32
+ export * from './user-me-context.model';
33
+ export * from './user.model';
34
+ export * from './analytics/index';
35
+ export * from './custom-smtp.model';
36
+ export * from './date-picker.model';
37
+ export * from './integration.model';
38
+ export * from './invite.model';
39
+ export * from './organization-projects.model';
40
+ export * from './password-reset.model';
41
+ export * from './secret-token.model';
42
+ export * from './storage-file.model';
43
+ export * from './visibility.model';
44
+ export * from './scope.model';
45
+ export * from './integration/index';
46
+ export * from './ai/index';
47
+ export * from './agent/index';
48
+ export * from './api-key.model';
49
+ export * from './schedule';
50
+ export * from './tools/index';
51
+ export * from './plain-object.model';
52
+ export * from './plugin';
53
+ export * from './view-extension';
@@ -0,0 +1,2 @@
1
+ import { TIntegrationProvider } from '../integration.model';
2
+ export declare const IntegrationDingTalkProvider: TIntegrationProvider;
@@ -0,0 +1,2 @@
1
+ import { TIntegrationProvider } from '../integration.model';
2
+ export declare const IntegrationFirecrawlProvider: TIntegrationProvider;
@@ -0,0 +1,69 @@
1
+ import { Endpoints } from "@octokit/types";
2
+ import { TIntegrationProvider } from '../integration.model';
3
+ export declare const IntegrationGitHubProvider: TIntegrationProvider;
4
+ export type TGithubAuth = {
5
+ redirectUri: string;
6
+ integrationId: string;
7
+ access_token: string;
8
+ expires_in: number;
9
+ refresh_token: string;
10
+ refresh_token_expires_in: number;
11
+ token_type: string;
12
+ scope: string;
13
+ installation_token: string;
14
+ repository: string;
15
+ };
16
+ type GitHubInstallationsResponse = Endpoints["GET /user/installations"]["response"]["data"];
17
+ type GitHubInstallation = GitHubInstallationsResponse["installations"][0];
18
+ export interface Installation {
19
+ id: number;
20
+ accountName: string;
21
+ accountType: "User" | "Organization";
22
+ avatarUrl: string;
23
+ }
24
+ /**
25
+ * Transform GitHub API installation data to our simplified format
26
+ */
27
+ export declare const transformInstallation: (installation: GitHubInstallation) => Installation;
28
+ export type TRepositoryReturn = {
29
+ repositories: Repository[];
30
+ pagination: {
31
+ page: number;
32
+ perPage: number;
33
+ hasMore: boolean;
34
+ totalCount: number;
35
+ };
36
+ };
37
+ /**
38
+ * Repository interface representing GitHub repository data
39
+ */
40
+ export interface Repository {
41
+ id: number;
42
+ name: string;
43
+ full_name: string;
44
+ description: string | null;
45
+ private: boolean;
46
+ fork: boolean;
47
+ html_url: string;
48
+ default_branch: string;
49
+ permissions: {
50
+ admin: boolean;
51
+ maintain: boolean;
52
+ push: boolean;
53
+ triage: boolean;
54
+ pull: boolean;
55
+ };
56
+ has_issues: boolean;
57
+ }
58
+ /**
59
+ * Branch interface representing GitHub branch data
60
+ */
61
+ export interface Branch {
62
+ name: string;
63
+ commit: {
64
+ sha: string;
65
+ url: string;
66
+ };
67
+ protected: boolean;
68
+ }
69
+ export {};
@@ -0,0 +1,4 @@
1
+ import { IntegrationEnum, TIntegrationProvider } from '../integration.model';
2
+ export * from './github';
3
+ export * from './lark';
4
+ export declare const INTEGRATION_PROVIDERS: Partial<Record<IntegrationEnum, TIntegrationProvider>>;
@@ -0,0 +1,5 @@
1
+ import { TIntegrationProvider } from '../integration.model';
2
+ /**
3
+ * @deprecated use plugin
4
+ */
5
+ export declare const IntegrationLarkProvider: TIntegrationProvider;
@@ -0,0 +1,2 @@
1
+ import { TIntegrationProvider } from '../integration.model';
2
+ export declare const IntegrationWeComProvider: TIntegrationProvider;
@@ -0,0 +1,92 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { IOrganizationProjectsUpdateInput } from './organization-projects.model';
3
+ import { IOrganizationUpdateInput } from './organization.model';
4
+ import { ITag } from './tag-entity.model';
5
+ import { I18nObject, IconDefinition, TAvatar, TParameterSchema } from './types';
6
+ import { IUser } from './user.model';
7
+ export interface IIntegration<T = any> extends IBasePerTenantAndOrganizationEntityModel {
8
+ name: string;
9
+ description?: string;
10
+ /**
11
+ * avatar object
12
+ */
13
+ avatar?: TAvatar;
14
+ slug: string;
15
+ provider: string;
16
+ /**
17
+ * Integration features: ['knowledge', 'agent', ...]
18
+ */
19
+ features?: IntegrationFeatureEnum[];
20
+ /**
21
+ * Custom options for different providers
22
+ */
23
+ options?: T;
24
+ tags?: ITag[];
25
+ /**
26
+ * Stable technical principal for this integration.
27
+ * One integration should map to one long-lived communication user.
28
+ */
29
+ userId?: string;
30
+ user?: IUser;
31
+ }
32
+ export interface IIntegrationFilter {
33
+ integrationTypeId: string;
34
+ searchQuery: string;
35
+ filter: string;
36
+ }
37
+ export interface IIntegrationMapSyncProject extends IBasePerTenantAndOrganizationEntityModel {
38
+ organizationProjectInput: IOrganizationProjectsUpdateInput;
39
+ integrationId: string;
40
+ sourceId: number;
41
+ }
42
+ export interface IIntegrationMapSyncOrganization extends IBasePerTenantAndOrganizationEntityModel {
43
+ organizationInput: IOrganizationUpdateInput;
44
+ integrationId: string;
45
+ sourceId: number;
46
+ }
47
+ /**
48
+ * @deprecated use Plugins instead
49
+ */
50
+ export declare enum IntegrationEnum {
51
+ UPWORK = "Upwork",
52
+ HUBSTAFF = "Hubstaff",
53
+ LARK = "Lark",
54
+ DINGTALK = "DingTalk",
55
+ WECOM = "WeCom",
56
+ FIRECRAWL = "firecrawl",
57
+ KNOWLEDGEBASE = "knowledgebase",
58
+ GITHUB = "github",
59
+ RAGFlow = "ragflow",
60
+ Dify = "dify",
61
+ FastGPT = "fastgpt"
62
+ }
63
+ export declare enum IntegrationFeatureEnum {
64
+ KNOWLEDGE = "knowledge",
65
+ AGENT = "agent",
66
+ SSO = "sso"
67
+ }
68
+ export declare enum IntegrationFilterEnum {
69
+ ALL = "All",
70
+ FREE = "Free",
71
+ PAID = "Paid"
72
+ }
73
+ export declare const DEFAULT_INTEGRATION_PAID_FILTERS: {
74
+ label: IntegrationFilterEnum;
75
+ value: string;
76
+ }[];
77
+ export interface IDateRangeActivityFilter {
78
+ start: Date;
79
+ end: Date;
80
+ }
81
+ export type TIntegrationProvider = {
82
+ name: string;
83
+ label: I18nObject;
84
+ description?: I18nObject;
85
+ avatar?: string;
86
+ icon?: IconDefinition;
87
+ webhook?: boolean;
88
+ schema?: TParameterSchema;
89
+ features?: IntegrationFeatureEnum[];
90
+ helpUrl?: string;
91
+ pro?: boolean;
92
+ };