| | import type { I18nText } from '@/i18n/language' |
| |
|
| | export type CommonResponse = { |
| | result: 'success' | 'fail' |
| | } |
| |
|
| | export type OauthResponse = { |
| | redirect_url: string |
| | } |
| |
|
| | export type SetupStatusResponse = { |
| | step: 'finished' | 'not_started' |
| | setup_at?: Date |
| | } |
| |
|
| | export type InitValidateStatusResponse = { |
| | status: 'finished' | 'not_started' |
| | } |
| |
|
| | export type UserProfileResponse = { |
| | id: string |
| | name: string |
| | email: string |
| | avatar: string |
| | is_password_set: boolean |
| | interface_language?: string |
| | interface_theme?: string |
| | timezone?: string |
| | last_login_at?: string |
| | last_active_at?: string |
| | 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' |
| | } |
| |
|
| | export type Member = Pick<UserProfileResponse, 'id' | 'name' | 'email' | 'last_login_at' | 'last_active_at' | 'created_at'> & { |
| | avatar: string |
| | status: 'pending' | 'active' | 'banned' | 'closed' |
| | role: 'owner' | 'admin' | 'editor' | 'normal' | 'dataset_operator' |
| | } |
| |
|
| | export enum ProviderName { |
| | OPENAI = 'openai', |
| | AZURE_OPENAI = 'azure_openai', |
| | ANTHROPIC = 'anthropic', |
| | Replicate = 'replicate', |
| | HuggingfaceHub = 'huggingface_hub', |
| | MiniMax = 'minimax', |
| | Spark = 'spark', |
| | Tongyi = 'tongyi', |
| | ChatGLM = 'chatglm', |
| | } |
| | export type ProviderAzureToken = { |
| | openai_api_base?: string |
| | openai_api_key?: string |
| | } |
| | export type ProviderAnthropicToken = { |
| | anthropic_api_key?: string |
| | } |
| | export type ProviderTokenType = { |
| | [ProviderName.OPENAI]: string |
| | [ProviderName.AZURE_OPENAI]: ProviderAzureToken |
| | [ProviderName.ANTHROPIC]: ProviderAnthropicToken |
| | } |
| | export type Provider = { |
| | [Name in ProviderName]: { |
| | provider_name: Name |
| | } & { |
| | provider_type: 'custom' | 'system' |
| | is_valid: boolean |
| | is_enabled: boolean |
| | last_used: string |
| | token?: string | ProviderAzureToken | ProviderAnthropicToken |
| | } |
| | }[ProviderName] |
| |
|
| | 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 |
| | } |
| |
|
| | export type IWorkspace = { |
| | id: string |
| | name: string |
| | plan: string |
| | status: string |
| | created_at: number |
| | current: boolean |
| | } |
| |
|
| | export type ICurrentWorkspace = Omit<IWorkspace, 'current'> & { |
| | role: 'owner' | 'admin' | 'editor' | 'dataset_operator' | 'normal' |
| | providers: Provider[] |
| | in_trail: boolean |
| | trial_end_reason?: string |
| | custom_config?: { |
| | remove_webapp_brand?: boolean |
| | replace_webapp_logo?: string |
| | } |
| | } |
| |
|
| | 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 |
| | } |
| |
|
| | export type NotionPage = DataSourceNotionPage & { |
| | workspace_id: string |
| | } |
| |
|
| | 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 |
| | } |
| |
|
| | export enum DataSourceCategory { |
| | website = 'website', |
| | } |
| | export enum DataSourceProvider { |
| | fireCrawl = 'firecrawl', |
| | jinaReader = 'jinareader', |
| | } |
| |
|
| | export type FirecrawlConfig = { |
| | api_key: string |
| | base_url: string |
| | } |
| |
|
| | export type DataSourceItem = { |
| | id: string |
| | category: DataSourceCategory |
| | provider: DataSourceProvider |
| | disabled: boolean |
| | created_at: number |
| | updated_at: number |
| | } |
| |
|
| | export type DataSources = { |
| | sources: DataSourceItem[] |
| | } |
| |
|
| | export type GithubRepo = { |
| | stargazers_count: number |
| | } |
| |
|
| | export type PluginProvider = { |
| | tool_name: string |
| | is_enabled: boolean |
| | credentials: { |
| | api_key: string |
| | } | null |
| | } |
| |
|
| | export type FileUploadConfigResponse = { |
| | batch_count_limit: number |
| | image_file_size_limit?: number | string |
| | file_size_limit: number |
| | audio_file_size_limit?: number |
| | video_file_size_limit?: number |
| | workflow_file_upload_limit?: number |
| | } |
| |
|
| | export type InvitationResult = { |
| | status: 'success' |
| | email: string |
| | url: string |
| | } | { |
| | status: 'failed' |
| | email: string |
| | message: string |
| | } |
| |
|
| | export type InvitationResponse = CommonResponse & { |
| | invitation_results: InvitationResult[] |
| | } |
| |
|
| | export type ApiBasedExtension = { |
| | id?: string |
| | name?: string |
| | api_endpoint?: string |
| | api_key?: string |
| | } |
| |
|
| | export type CodeBasedExtensionForm = { |
| | type: string |
| | label: I18nText |
| | variable: string |
| | required: boolean |
| | options: { label: I18nText; value: string }[] |
| | default: string |
| | placeholder: string |
| | max_length?: number |
| | } |
| |
|
| | export type CodeBasedExtensionItem = { |
| | name: string |
| | label: any |
| | 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> |
| |
|