|
import { Locale } from '@/i18n' |
|
|
|
export type PromptVariable = { |
|
key: string, |
|
name: string, |
|
type: "string" | "number" | "select", |
|
default?: string | number, |
|
options?: string[] |
|
max_length?: number |
|
required: boolean |
|
} |
|
|
|
export type PromptConfig = { |
|
prompt_template: string, |
|
prompt_variables: PromptVariable[], |
|
} |
|
|
|
export type TextTypeFormItem = { |
|
label: string, |
|
variable: string, |
|
required: boolean |
|
max_length: number |
|
} |
|
|
|
export type SelectTypeFormItem = { |
|
label: string, |
|
variable: string, |
|
required: boolean, |
|
options: string[] |
|
} |
|
|
|
|
|
|
|
export type UserInputFormItem = { |
|
'text-input': TextTypeFormItem |
|
} | { |
|
'select': SelectTypeFormItem |
|
} |
|
|
|
export const MessageRatings = ['like', 'dislike', null] as const |
|
export type MessageRating = typeof MessageRatings[number] |
|
|
|
export type Feedbacktype = { |
|
rating: MessageRating |
|
content?: string | null |
|
} |
|
|
|
export type MessageMore = { |
|
time: string |
|
tokens: number |
|
latency: number | string |
|
} |
|
|
|
export type IChatItem = { |
|
id: string |
|
content: string |
|
|
|
|
|
|
|
isAnswer: boolean |
|
|
|
|
|
|
|
feedback?: Feedbacktype |
|
|
|
|
|
|
|
adminFeedback?: Feedbacktype |
|
|
|
|
|
|
|
feedbackDisabled?: boolean |
|
|
|
|
|
|
|
more?: MessageMore |
|
isIntroduction?: boolean |
|
useCurrentUserAvatar?: boolean |
|
isOpeningStatement?: boolean |
|
} |
|
|
|
|
|
export type ResponseHolder = {} |
|
|
|
export type ConversationItem = { |
|
id: string |
|
name: string |
|
inputs: Record<string, any> | null |
|
introduction: string, |
|
} |
|
|
|
export type AppInfo = { |
|
title: string |
|
description: string |
|
default_language: Locale |
|
copyright?: string |
|
privacy_policy?: string |
|
} |