211 lines
3.9 KiB
TypeScript
211 lines
3.9 KiB
TypeScript
import { ICommonObject, INode, INodeData as INodeDataFromComponent, INodeParams } from 'flowise-components'
|
|
|
|
export type MessageType = 'apiMessage' | 'userMessage'
|
|
|
|
export enum chatType {
|
|
INTERNAL = 'INTERNAL',
|
|
EXTERNAL = 'EXTERNAL'
|
|
}
|
|
/**
|
|
* Databases
|
|
*/
|
|
export interface IChatFlow {
|
|
id: string
|
|
name: string
|
|
flowData: string
|
|
updatedDate: Date
|
|
createdDate: Date
|
|
deployed?: boolean
|
|
isPublic?: boolean
|
|
apikeyid?: string
|
|
analytic?: string
|
|
chatbotConfig?: string
|
|
apiConfig?: any
|
|
}
|
|
|
|
export interface IChatMessage {
|
|
id: string
|
|
role: MessageType
|
|
content: string
|
|
chatflowid: string
|
|
sourceDocuments?: string
|
|
usedTools?: string
|
|
fileAnnotations?: string
|
|
chatType: string
|
|
chatId: string
|
|
memoryType?: string
|
|
sessionId?: string
|
|
createdDate: Date
|
|
}
|
|
|
|
export interface ITool {
|
|
id: string
|
|
name: string
|
|
description: string
|
|
color: string
|
|
iconSrc?: string
|
|
schema?: string
|
|
func?: string
|
|
updatedDate: Date
|
|
createdDate: Date
|
|
}
|
|
|
|
export interface IAssistant {
|
|
id: string
|
|
details: string
|
|
credential: string
|
|
iconSrc?: string
|
|
updatedDate: Date
|
|
createdDate: Date
|
|
}
|
|
|
|
export interface ICredential {
|
|
id: string
|
|
name: string
|
|
credentialName: string
|
|
encryptedData: string
|
|
updatedDate: Date
|
|
createdDate: Date
|
|
}
|
|
|
|
export interface IComponentNodes {
|
|
[key: string]: INode
|
|
}
|
|
|
|
export interface IComponentCredentials {
|
|
[key: string]: INode
|
|
}
|
|
|
|
export interface IVariableDict {
|
|
[key: string]: string
|
|
}
|
|
|
|
export interface INodeDependencies {
|
|
[key: string]: number
|
|
}
|
|
|
|
export interface INodeDirectedGraph {
|
|
[key: string]: string[]
|
|
}
|
|
|
|
export interface INodeData extends INodeDataFromComponent {
|
|
inputAnchors: INodeParams[]
|
|
inputParams: INodeParams[]
|
|
outputAnchors: INodeParams[]
|
|
}
|
|
|
|
export interface IReactFlowNode {
|
|
id: string
|
|
position: {
|
|
x: number
|
|
y: number
|
|
}
|
|
type: string
|
|
data: INodeData
|
|
positionAbsolute: {
|
|
x: number
|
|
y: number
|
|
}
|
|
z: number
|
|
handleBounds: {
|
|
source: any
|
|
target: any
|
|
}
|
|
width: number
|
|
height: number
|
|
selected: boolean
|
|
dragging: boolean
|
|
}
|
|
|
|
export interface IReactFlowEdge {
|
|
source: string
|
|
sourceHandle: string
|
|
target: string
|
|
targetHandle: string
|
|
type: string
|
|
id: string
|
|
data: {
|
|
label: string
|
|
}
|
|
}
|
|
|
|
export interface IReactFlowObject {
|
|
nodes: IReactFlowNode[]
|
|
edges: IReactFlowEdge[]
|
|
viewport: {
|
|
x: number
|
|
y: number
|
|
zoom: number
|
|
}
|
|
}
|
|
|
|
export interface IExploredNode {
|
|
[key: string]: {
|
|
remainingLoop: number
|
|
lastSeenDepth: number
|
|
}
|
|
}
|
|
|
|
export interface INodeQueue {
|
|
nodeId: string
|
|
depth: number
|
|
}
|
|
|
|
export interface IDepthQueue {
|
|
[key: string]: number
|
|
}
|
|
|
|
export interface IMessage {
|
|
message: string
|
|
type: MessageType
|
|
}
|
|
|
|
export interface IncomingInput {
|
|
question: string
|
|
history: IMessage[]
|
|
overrideConfig?: ICommonObject
|
|
socketIOClientId?: string
|
|
chatId?: string
|
|
}
|
|
|
|
export interface IActiveChatflows {
|
|
[key: string]: {
|
|
startingNodes: IReactFlowNode[]
|
|
endingNodeData: INodeData
|
|
inSync: boolean
|
|
overrideConfig?: ICommonObject
|
|
}
|
|
}
|
|
|
|
export interface IActiveCache {
|
|
[key: string]: Map<any, any>
|
|
}
|
|
|
|
export interface IOverrideConfig {
|
|
node: string
|
|
nodeId: string
|
|
label: string
|
|
name: string
|
|
type: string
|
|
}
|
|
|
|
export interface IDatabaseExport {
|
|
chatmessages: IChatMessage[]
|
|
chatflows: IChatFlow[]
|
|
apikeys: ICommonObject[]
|
|
}
|
|
|
|
export type ICredentialDataDecrypted = ICommonObject
|
|
|
|
// Plain credential object sent to server
|
|
export interface ICredentialReqBody {
|
|
name: string
|
|
credentialName: string
|
|
plainDataObj: ICredentialDataDecrypted
|
|
}
|
|
|
|
// Decrypted credential object sent back to client
|
|
export interface ICredentialReturnResponse extends ICredential {
|
|
plainDataObj: ICredentialDataDecrypted
|
|
}
|