/** * The internal data strcuture for the model */ import { RefObject } from 'react'; import { MMELNode, MMELObject } from '../serialize/interface/baseinterface'; import { MMELDataAttribute, MMELDataClass, MMELEnum, MMELRegistry } from '../serialize/interface/datainterface'; import { MMELEndEvent, MMELSignalCatchEvent, MMELStartEvent, MMELTimerEvent } from '../serialize/interface/eventinterface'; import { MMELEGate, MMELSubprocess } from '../serialize/interface/flowcontrolinterface'; import { MMELApproval, MMELProcess } from '../serialize/interface/processinterface'; import { MMELComment, MMELFigure, MMELLink, MMELMetadata, MMELNote, MMELProvision, MMELReference, MMELRole, MMELTable, MMELTerm, MMELTextSection, MMELVariable, MMELView } from '../serialize/interface/supportinterface'; export declare enum ModelType { EDIT = "edit", REF = "ref", IMP = "imp", EDITREF = "editref" } export interface EditorBaseObjectType { objectVersion: 'Editor'; } export declare type EditorNode = MMELNode & EditorNodeChild; export declare type EditorStartEvent = MMELStartEvent & EditorNode; export declare type EditorSubprocess = MMELSubprocess & EditorPage; export declare type EditorDataClass = MMELDataClass & EditorNode & EditorDataClassReference; export declare type EditorRegistry = MMELRegistry & EditorNode; export declare type EditorEndEvent = MMELEndEvent & EditorNode; export declare type EditorSignalEvent = MMELSignalCatchEvent & EditorNode; export declare type EditorTimerEvent = MMELTimerEvent & EditorNode; export declare type EditorEGate = MMELEGate & EditorNode; export declare type EditorApproval = MMELApproval & EditorNode; export declare type EditorProcess = MMELProcess & EditorNode & MultiPageElm; interface MultiPageElm { pages: Set; } export interface EditorNodeChild extends EditorBaseObjectType { uiref?: RefObject; } export interface EditorDataClassReference extends EditorBaseObjectType { rdcs: Set; mother: string; } export interface EditorPage extends EditorBaseObjectType { start: string; neighbor: Record>; } export interface EditorModel { meta: MMELMetadata; roles: Record; provisions: Record; elements: Record; refs: Record; enums: Record; vars: Record; notes: Record; pages: Record; views: Record; terms: Record; tables: Record; figures: Record; sections: Record; links: Record; comments: Record; root: string; version: string; } export declare function isEditorNode(x: unknown): x is EditorNode; export declare function isEditorPage(x: MMELObject): x is EditorSubprocess; export declare function isEditorProcess(x: EditorNode): x is EditorProcess; export declare function isEditorRegistry(x: EditorNode): x is EditorRegistry; export declare function isEditorApproval(x: EditorNode): x is EditorApproval; export declare function isEditorDataClass(x: EditorNode): x is EditorDataClass; export declare function isEditorData(x: EditorNode): x is EditorRegistry | EditorDataClass; export declare function isEditorTimerEvent(x: EditorNode): x is EditorTimerEvent; export declare function isEditorEndEvent(x: EditorNode): x is EditorEndEvent; export declare function isEditorStartEvent(x: EditorNode): x is EditorStartEvent; export declare function isEditorSignalEvent(x: EditorNode): x is EditorSignalEvent; export declare function isEditorEgate(x: EditorNode): x is EditorEGate; export declare function isMMELDataAttribute(x: MMELObject): x is MMELDataAttribute; export declare function isMMELTable(x: MMELObject): x is MMELTable; export declare function isMMELFigure(x: MMELObject): x is MMELFigure; export declare function isMMELProcess(x: MMELNode): x is MMELProcess; export declare function isMMELApproval(x: MMELNode): x is MMELApproval; export declare function isMMELDataClass(x: MMELNode): x is MMELDataClass; export declare function isMMELRegistry(x: MMELNode): x is MMELRegistry; export declare function getEditorNodeInfoById(model: EditorModel, id: string): string; export declare function getEditorRoleById(model: EditorModel, id: string): MMELRole | null; export declare function getEditorRefById(model: EditorModel, id: string): MMELReference | null; export declare function getEditorRegistryById(model: EditorModel, id: string): EditorRegistry | null; export declare function getEditorDataClassById(model: EditorModel, id: string): EditorDataClass | null; export declare function getEditorProvisionById(model: EditorModel, id: string): MMELProvision | null; export declare function getEditorNoteById(model: EditorModel, id: string): MMELNote | null; export {}; //# sourceMappingURL=editormodel.d.ts.map