Interface.ts 897 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { type Node, type DefaultEdge, Position } from '@vue-flow/core'
  2. export type CanvasConnectionPort = {
  3. node?: string
  4. type: string
  5. index: number
  6. required?: boolean
  7. maxConnections?: number
  8. label?: string
  9. [key: string]: any
  10. }
  11. export interface CanvasElementPortWithRenderData extends CanvasConnectionPort {
  12. handleId: string
  13. connectionsCount: number
  14. isConnecting: boolean
  15. position: Position
  16. offset?: { top?: string; left?: string }
  17. }
  18. export interface IWorkflowNode extends Node {
  19. data: {
  20. inputs: CanvasConnectionPort[]
  21. outputs: CanvasConnectionPort[]
  22. // 定义节点数据
  23. [key: string]: any
  24. }
  25. }
  26. export type IWorkflowEdge = DefaultEdge<{
  27. // 定义边数据
  28. [key: string]: any
  29. }>
  30. export interface IWorkflow {
  31. id: string
  32. nodes: IWorkflowNode[]
  33. edges: IWorkflowEdge[]
  34. [key: string]: any
  35. }
  36. export interface XYPosition {
  37. x: number
  38. y: number
  39. }
  40. export { Position }