ConceptPortal-public/rsconcept/frontend/src/models/oss.ts

68 lines
1.4 KiB
TypeScript
Raw Normal View History

2024-06-04 23:00:22 +03:00
/**
* Module: Schema of Synthesis Operations.
*/
import { ILibraryItemData } from './library';
import { UserID } from './user';
2024-06-21 18:47:46 +03:00
import { IConstituenta, ISubstitution } from '@/models/rsform.ts';
2024-06-04 23:00:22 +03:00
/**
* Represents backend data for Schema of Synthesis Operations.
*/
export interface IOperationSchemaData extends ILibraryItemData {
2024-06-21 18:47:46 +03:00
input_nodes: IInputNode[];
operation_nodes: ISynthesisNode[];
edges: ISynthesisEdge[];
substitutions: ISynthesisSubstitution[];
graph: ISynthesisGraph;
}
interface ISynthesisGraph {
id: number;
status: string;
}
interface IInputNode {
id: number | null;
graph_id: number;
vertical_coordinate: number;
horizontal_coordinate: number;
rsform_id: number;
}
interface ISynthesisNode extends IInputNode {
id: number | null;
name: string;
status: string;
}
interface ISynthesisEdge {
id: number | null;
decoded_id: string;
source_handle: string;
graph_id: number;
node_from: string;
node_to: string;
}
export interface ISynthesisSubstitution extends ISubstitution {
id: number | null;
graph_id: number;
operation_id: string;
}
export interface IRunSynthesis {
operationId: number;
}
export interface IRunSynthesisResponse {
rsformId: number;
2024-06-04 23:00:22 +03:00
}
/**
* Represents Schema of Synthesis Operations.
*/
export interface IOperationSchema extends IOperationSchemaData {
subscribers: UserID[];
editors: UserID[];