| 
									
										
										
										
											2024-02-23 14:31:06 +08:00
										 |  |  | import type { I18nText } from '@/i18n/language' | 
					
						
							| 
									
										
										
										
											2024-01-23 21:14:53 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | export type CommonResponse = { | 
					
						
							|  |  |  |   result: 'success' | 'fail' | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type OauthResponse = { | 
					
						
							|  |  |  |   redirect_url: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-08-07 13:19:47 +08:00
										 |  |  | export type SetupStatusResponse = { | 
					
						
							|  |  |  |   step: 'finished' | 'not_started' | 
					
						
							|  |  |  |   setup_at?: Date | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-02-01 15:03:56 +08:00
										 |  |  | export type InitValidateStatusResponse = { | 
					
						
							|  |  |  |   status: 'finished' | 'not_started' | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | export type UserProfileResponse = { | 
					
						
							|  |  |  |   id: string | 
					
						
							|  |  |  |   name: string | 
					
						
							|  |  |  |   email: string | 
					
						
							| 
									
										
										
										
											2023-07-14 11:19:26 +08:00
										 |  |  |   avatar: string | 
					
						
							|  |  |  |   is_password_set: boolean | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  |   interface_language?: string | 
					
						
							|  |  |  |   interface_theme?: string | 
					
						
							|  |  |  |   timezone?: string | 
					
						
							|  |  |  |   last_login_at?: string | 
					
						
							| 
									
										
										
										
											2024-06-14 20:49:19 +08:00
										 |  |  |   last_active_at?: string | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  |   last_login_ip?: string | 
					
						
							|  |  |  |   created_at?: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type UserProfileOriginResponse = { | 
					
						
							|  |  |  |   json: () => Promise<UserProfileResponse> | 
					
						
							|  |  |  |   bodyUsed: boolean | 
					
						
							|  |  |  |   headers: any | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type LangGeniusVersionResponse = { | 
					
						
							|  |  |  |   current_version: string | 
					
						
							|  |  |  |   latest_version: string | 
					
						
							|  |  |  |   version: string | 
					
						
							|  |  |  |   release_date: string | 
					
						
							|  |  |  |   release_notes: string | 
					
						
							|  |  |  |   can_auto_update: boolean | 
					
						
							|  |  |  |   current_env: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type TenantInfoResponse = { | 
					
						
							|  |  |  |   name: string | 
					
						
							|  |  |  |   created_at: string | 
					
						
							|  |  |  |   providers: Array<{ | 
					
						
							|  |  |  |     provider: string | 
					
						
							|  |  |  |     provider_name: string | 
					
						
							|  |  |  |     token_is_set: boolean | 
					
						
							|  |  |  |     is_valid: boolean | 
					
						
							|  |  |  |     token_is_valid: boolean | 
					
						
							|  |  |  |   }> | 
					
						
							|  |  |  |   in_trail: boolean | 
					
						
							|  |  |  |   trial_end_reason: null | 'trial_exceeded' | 'using_custom' | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-06-17 17:22:16 +08:00
										 |  |  | export type Member = Pick<UserProfileResponse, 'id' | 'name' | 'email' | 'last_login_at' | 'last_active_at' | 'created_at'> & { | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  |   avatar: string | 
					
						
							|  |  |  |   status: 'pending' | 'active' | 'banned' | 'closed' | 
					
						
							| 
									
										
										
										
											2024-07-09 17:47:54 +08:00
										 |  |  |   role: 'owner' | 'admin' | 'editor' | 'normal' | 'dataset_operator' | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-23 14:15:33 +08:00
										 |  |  | export enum ProviderName { | 
					
						
							|  |  |  |   OPENAI = 'openai', | 
					
						
							| 
									
										
										
										
											2023-06-01 23:19:36 +08:00
										 |  |  |   AZURE_OPENAI = 'azure_openai', | 
					
						
							| 
									
										
										
										
											2023-07-17 00:14:32 +08:00
										 |  |  |   ANTHROPIC = 'anthropic', | 
					
						
							| 
									
										
										
										
											2023-08-12 00:57:13 +08:00
										 |  |  |   Replicate = 'replicate', | 
					
						
							|  |  |  |   HuggingfaceHub = 'huggingface_hub', | 
					
						
							|  |  |  |   MiniMax = 'minimax', | 
					
						
							|  |  |  |   Spark = 'spark', | 
					
						
							|  |  |  |   Tongyi = 'tongyi', | 
					
						
							|  |  |  |   ChatGLM = 'chatglm', | 
					
						
							| 
									
										
										
										
											2023-05-23 14:15:33 +08:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | export type ProviderAzureToken = { | 
					
						
							| 
									
										
										
										
											2023-05-23 14:15:33 +08:00
										 |  |  |   openai_api_base?: string | 
					
						
							|  |  |  |   openai_api_key?: string | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2023-07-17 00:14:32 +08:00
										 |  |  | export type ProviderAnthropicToken = { | 
					
						
							|  |  |  |   anthropic_api_key?: string | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2023-05-23 14:15:33 +08:00
										 |  |  | export type ProviderTokenType = { | 
					
						
							|  |  |  |   [ProviderName.OPENAI]: string | 
					
						
							|  |  |  |   [ProviderName.AZURE_OPENAI]: ProviderAzureToken | 
					
						
							| 
									
										
										
										
											2023-07-17 00:14:32 +08:00
										 |  |  |   [ProviderName.ANTHROPIC]: ProviderAnthropicToken | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2023-05-23 14:15:33 +08:00
										 |  |  | export type Provider = { | 
					
						
							|  |  |  |   [Name in ProviderName]: { | 
					
						
							|  |  |  |     provider_name: Name | 
					
						
							|  |  |  |   } & { | 
					
						
							|  |  |  |     provider_type: 'custom' | 'system' | 
					
						
							|  |  |  |     is_valid: boolean | 
					
						
							|  |  |  |     is_enabled: boolean | 
					
						
							|  |  |  |     last_used: string | 
					
						
							| 
									
										
										
										
											2023-11-06 19:36:32 +08:00
										 |  |  |     token?: string | ProviderAzureToken | ProviderAnthropicToken | 
					
						
							| 
									
										
										
										
											2023-05-23 14:15:33 +08:00
										 |  |  |   } | 
					
						
							|  |  |  | }[ProviderName] | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | export type ProviderHosted = Provider & { | 
					
						
							|  |  |  |   quota_type: string | 
					
						
							|  |  |  |   quota_limit: number | 
					
						
							|  |  |  |   quota_used: number | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type AccountIntegrate = { | 
					
						
							|  |  |  |   provider: 'google' | 'github' | 
					
						
							|  |  |  |   created_at: number | 
					
						
							|  |  |  |   is_bound: boolean | 
					
						
							|  |  |  |   link: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-01 23:19:36 +08:00
										 |  |  | export type IWorkspace = { | 
					
						
							| 
									
										
										
										
											2023-05-15 08:51:32 +08:00
										 |  |  |   id: string | 
					
						
							|  |  |  |   name: string | 
					
						
							|  |  |  |   plan: string | 
					
						
							|  |  |  |   status: string | 
					
						
							|  |  |  |   created_at: number | 
					
						
							|  |  |  |   current: boolean | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2023-06-06 11:22:00 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-08-15 13:35:47 +08:00
										 |  |  | export type ICurrentWorkspace = Omit<IWorkspace, 'current'> & { | 
					
						
							| 
									
										
										
										
											2024-07-09 17:47:54 +08:00
										 |  |  |   role: 'owner' | 'admin' | 'editor' | 'dataset_operator' | 'normal' | 
					
						
							| 
									
										
										
										
											2023-08-15 13:35:47 +08:00
										 |  |  |   providers: Provider[] | 
					
						
							|  |  |  |   in_trail: boolean | 
					
						
							|  |  |  |   trial_end_reason?: string | 
					
						
							| 
									
										
										
										
											2023-12-18 16:25:37 +08:00
										 |  |  |   custom_config?: { | 
					
						
							|  |  |  |     remove_webapp_brand?: boolean | 
					
						
							|  |  |  |     replace_webapp_logo?: string | 
					
						
							|  |  |  |   } | 
					
						
							| 
									
										
										
										
											2023-08-15 13:35:47 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-16 21:47:51 +08:00
										 |  |  | export type DataSourceNotionPage = { | 
					
						
							|  |  |  |   page_icon: null | { | 
					
						
							|  |  |  |     type: string | null | 
					
						
							|  |  |  |     url: string | null | 
					
						
							|  |  |  |     emoji: string | null | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |   page_id: string | 
					
						
							|  |  |  |   page_name: string | 
					
						
							|  |  |  |   parent_id: string | 
					
						
							|  |  |  |   type: string | 
					
						
							|  |  |  |   is_bound: boolean | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-08-28 19:48:53 +08:00
										 |  |  | export type NotionPage = DataSourceNotionPage & { | 
					
						
							|  |  |  |   workspace_id: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-16 21:47:51 +08:00
										 |  |  | export type DataSourceNotionPageMap = Record<string, DataSourceNotionPage & { workspace_id: string }> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type DataSourceNotionWorkspace = { | 
					
						
							|  |  |  |   workspace_name: string | 
					
						
							|  |  |  |   workspace_id: string | 
					
						
							|  |  |  |   workspace_icon: string | null | 
					
						
							|  |  |  |   total?: number | 
					
						
							|  |  |  |   pages: DataSourceNotionPage[] | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type DataSourceNotionWorkspaceMap = Record<string, DataSourceNotionWorkspace> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type DataSourceNotion = { | 
					
						
							|  |  |  |   id: string | 
					
						
							|  |  |  |   provider: string | 
					
						
							|  |  |  |   is_bound: boolean | 
					
						
							|  |  |  |   source_info: DataSourceNotionWorkspace | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-06-14 22:02:41 +08:00
										 |  |  | export enum DataSourceCategory { | 
					
						
							|  |  |  |   website = 'website', | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2024-06-17 03:06:32 -05:00
										 |  |  | export enum DataSourceProvider { | 
					
						
							| 
									
										
										
										
											2024-06-14 22:02:41 +08:00
										 |  |  |   fireCrawl = 'firecrawl', | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type FirecrawlConfig = { | 
					
						
							|  |  |  |   api_key: string | 
					
						
							|  |  |  |   base_url: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-06-17 03:06:32 -05:00
										 |  |  | export type DataSourceItem = { | 
					
						
							| 
									
										
										
										
											2024-06-14 22:02:41 +08:00
										 |  |  |   id: string | 
					
						
							| 
									
										
										
										
											2024-06-17 03:06:32 -05:00
										 |  |  |   category: DataSourceCategory | 
					
						
							|  |  |  |   provider: DataSourceProvider | 
					
						
							| 
									
										
										
										
											2024-06-14 22:02:41 +08:00
										 |  |  |   disabled: boolean | 
					
						
							|  |  |  |   created_at: number | 
					
						
							|  |  |  |   updated_at: number | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2024-06-17 03:06:32 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | export type DataSources = { | 
					
						
							|  |  |  |   sources: DataSourceItem[] | 
					
						
							| 
									
										
										
										
											2024-06-14 22:02:41 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-06 11:22:00 +08:00
										 |  |  | export type GithubRepo = { | 
					
						
							|  |  |  |   stargazers_count: number | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2023-07-27 13:27:34 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | export type PluginProvider = { | 
					
						
							|  |  |  |   tool_name: string | 
					
						
							|  |  |  |   is_enabled: boolean | 
					
						
							|  |  |  |   credentials: { | 
					
						
							|  |  |  |     api_key: string | 
					
						
							|  |  |  |   } | null | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2023-08-16 23:14:27 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | export type FileUploadConfigResponse = { | 
					
						
							|  |  |  |   file_size_limit: number | 
					
						
							|  |  |  |   batch_count_limit: number | 
					
						
							| 
									
										
										
										
											2023-11-13 22:32:39 +08:00
										 |  |  |   image_file_size_limit?: number | string | 
					
						
							| 
									
										
										
										
											2023-08-16 23:14:27 +08:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2023-08-28 10:53:45 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-08-31 01:18:31 +08:00
										 |  |  | export type InvitationResult = { | 
					
						
							|  |  |  |   status: 'success' | 
					
						
							|  |  |  |   email: string | 
					
						
							|  |  |  |   url: string | 
					
						
							|  |  |  | } | { | 
					
						
							|  |  |  |   status: 'failed' | 
					
						
							|  |  |  |   email: string | 
					
						
							|  |  |  |   message: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type InvitationResponse = CommonResponse & { | 
					
						
							|  |  |  |   invitation_results: InvitationResult[] | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2023-11-06 19:36:32 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | export type ApiBasedExtension = { | 
					
						
							|  |  |  |   id?: string | 
					
						
							|  |  |  |   name?: string | 
					
						
							|  |  |  |   api_endpoint?: string | 
					
						
							|  |  |  |   api_key?: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type CodeBasedExtensionForm = { | 
					
						
							|  |  |  |   type: string | 
					
						
							|  |  |  |   label: I18nText | 
					
						
							|  |  |  |   variable: string | 
					
						
							|  |  |  |   required: boolean | 
					
						
							| 
									
										
										
										
											2023-11-07 17:56:07 +08:00
										 |  |  |   options: { label: I18nText; value: string }[] | 
					
						
							| 
									
										
										
										
											2023-11-06 19:36:32 +08:00
										 |  |  |   default: string | 
					
						
							|  |  |  |   placeholder: string | 
					
						
							| 
									
										
										
										
											2023-11-07 17:56:07 +08:00
										 |  |  |   max_length?: number | 
					
						
							| 
									
										
										
										
											2023-11-06 19:36:32 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type CodeBasedExtensionItem = { | 
					
						
							|  |  |  |   name: string | 
					
						
							| 
									
										
										
										
											2024-01-24 11:08:11 +08:00
										 |  |  |   label: any | 
					
						
							| 
									
										
										
										
											2023-11-06 19:36:32 +08:00
										 |  |  |   form_schema: CodeBasedExtensionForm[] | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | export type CodeBasedExtension = { | 
					
						
							|  |  |  |   module: string | 
					
						
							|  |  |  |   data: CodeBasedExtensionItem[] | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type ExternalDataTool = { | 
					
						
							|  |  |  |   type?: string | 
					
						
							|  |  |  |   label?: string | 
					
						
							|  |  |  |   icon?: string | 
					
						
							|  |  |  |   icon_background?: string | 
					
						
							|  |  |  |   variable?: string | 
					
						
							|  |  |  |   enabled?: boolean | 
					
						
							|  |  |  |   config?: { | 
					
						
							|  |  |  |     api_based_extension_id?: string | 
					
						
							|  |  |  |   } & Partial<Record<string, any>> | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type ModerateResponse = { | 
					
						
							|  |  |  |   flagged: boolean | 
					
						
							|  |  |  |   text: string | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export type ModerationService = ( | 
					
						
							|  |  |  |   url: string, | 
					
						
							|  |  |  |   body: { | 
					
						
							|  |  |  |     app_id: string | 
					
						
							|  |  |  |     text: string | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | ) => Promise<ModerateResponse> |