@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,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,68 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { IUser } from './user.model';
3
+ /**
4
+ * Represents an API key used for authentication and authorization.
5
+ */
6
+ export interface IApiKey extends IBasePerTenantAndOrganizationEntityModel {
7
+ token: string;
8
+ name?: string;
9
+ /**
10
+ * Stable binding kind for resolving the technical principal behind this key.
11
+ */
12
+ type?: ApiKeyBindingType;
13
+ /**
14
+ * Stable binding target id/code. Examples:
15
+ * - assistant => xpertId
16
+ * - integration => integrationId
17
+ * - client => clientCode
18
+ */
19
+ entityId?: string;
20
+ validUntil?: Date;
21
+ expired?: boolean;
22
+ lastUsedAt?: Date;
23
+ /**
24
+ * Explicit technical principal bound to this apiKey.
25
+ * When set, it takes precedence over type/entityId resolution.
26
+ */
27
+ userId?: string;
28
+ user?: IUser;
29
+ }
30
+ /**
31
+ * Optional request header used by third-party callers to explicitly set the
32
+ * business user represented by the current request context.
33
+ */
34
+ export declare const API_PRINCIPAL_USER_ID_HEADER = "x-principal-user-id";
35
+ /**
36
+ * Stable binding kinds used to resolve long-lived technical principals.
37
+ */
38
+ export declare enum ApiKeyBindingType {
39
+ ASSISTANT = "assistant",
40
+ INTEGRATION = "integration",
41
+ CLIENT = "client",
42
+ /**
43
+ * @deprecated legacy type, do not use for new keys. Will be resolved as assistant for backward compatibility.
44
+ */
45
+ KNOWLEDGEBASE = "knowledgebase"
46
+ }
47
+ export type ApiPrincipalType = 'api_key' | 'client_secret';
48
+ export interface IApiPrincipal extends IUser {
49
+ apiKey: IApiKey;
50
+ principalType: ApiPrincipalType;
51
+ /**
52
+ * Resource owner / key creator. Used for audit and ownership metadata.
53
+ */
54
+ ownerUserId?: string | null;
55
+ /**
56
+ * Technical principal resolved from apiKey.userId or stable type/entityId binding.
57
+ */
58
+ apiKeyUserId?: string | null;
59
+ /**
60
+ * Explicit business user id requested by the caller via x-principal-user-id.
61
+ */
62
+ requestedUserId?: string | null;
63
+ /**
64
+ * Original organization context requested by the caller before api-key
65
+ * authentication normalized the request into tenant scope.
66
+ */
67
+ requestedOrganizationId?: string | null;
68
+ }
@@ -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
+ };
@@ -0,0 +1,5 @@
1
+ import { IBaseEntityModel } from './base-entity.model';
2
+ export interface ICountry extends IBaseEntityModel {
3
+ isoCode: string;
4
+ country: string;
5
+ }