34 lines
700 B
TypeScript
34 lines
700 B
TypeScript
export interface CanvasContent {
|
|
nodes: CanvasNode[];
|
|
edges: CanvasEdge[];
|
|
groups: CanvasGroup[];
|
|
}
|
|
export type CanvasColor = {
|
|
class?: string;
|
|
} & {
|
|
hex?: string;
|
|
}
|
|
export interface CanvasNode {
|
|
type: 'group' | 'text';
|
|
id: string;
|
|
x: number;
|
|
y: number;
|
|
width: number;
|
|
height: number;
|
|
color?: CanvasColor;
|
|
label?: string;
|
|
text?: any;
|
|
};
|
|
export interface CanvasEdge {
|
|
id: string;
|
|
fromNode: string;
|
|
fromSide: 'bottom' | 'top' | 'left' | 'right';
|
|
toNode: string;
|
|
toSide: 'bottom' | 'top' | 'left' | 'right';
|
|
color?: CanvasColor;
|
|
label?: string;
|
|
};
|
|
export interface CanvasGroup {
|
|
name: string;
|
|
nodes: string[];
|
|
} |