interface IDataManager {
    addStructure: (
        structure: IStructureInitOptions,
    ) => [
        {
            _id?: string;
            data?: Record<string, any>;
            delta?: Record<string, any>;
            eventTime?: number;
            method?: "POST" | "UPDATE" | "DELETE";
            operationId?: string;
            operationType?:
                | "node"
                | "structure"
                | "structure-child"
                | "relation"
                | "metadata"
                | "list"
                | "list-child";
            ref?: any;
        },
        _structure,
    ];
    lists: Map<string, _list>;
    meta: Map<string, _metaContainer<NodeType>>;
    nodes: Map<string, _node<NodeType>>;
    relations: Map<`${string}-${string}`, _relation>;
    setStructure: (
        structure: IStructureInitOptions,
    ) => [
        {
            _id?: string;
            data?: Record<string, any>;
            delta?: Record<string, any>;
            eventTime?: number;
            method?: "POST" | "UPDATE" | "DELETE";
            operationId?: string;
            operationType?:
                | "node"
                | "structure"
                | "structure-child"
                | "relation"
                | "metadata"
                | "list"
                | "list-child";
            ref?: any;
        },
        _structure,
    ];
    structures: Map<string, _structure>;
    addList(
        list: IListInitOptions,
    ): [
        {
            _id?: string;
            data?: Record<string, any>;
            delta?: Record<string, any>;
            eventTime?: number;
            method?: "POST" | "UPDATE" | "DELETE";
            operationId?: string;
            operationType?:
                | "node"
                | "structure"
                | "structure-child"
                | "relation"
                | "metadata"
                | "list"
                | "list-child";
            ref?: any;
        },
        {
            create_dt?: number;
            id?: string;
            meta?: {
                children?: any[];
                default?: boolean;
                description?: string
                | string[];
                external?: any;
                path?: any;
                ref_extern?: string | string[];
                type?: string;
                views?: {
                    bubble?: any;
                    forceDirectedTree?: any;
                    listView?: { views?: any };
                };
            };
            name?: string;
            token?: string;
            type?: "list";
            update_dt?: number;
            userGroup?: string[];
        },
    ];
    addMetadata(meta: IMetaContainer<NodeType>): MetadataCreationResult;
    addNode(
        node: {
            create_dt?: number;
            id?: string;
            name?: string;
            token?: string;
            type?: string;
            update_dt?: number;
            userGroup?: string[];
        },
    ): NodeCreationResult;
    addRelation(relation: IRelation): RelationCreationResult;
    deleteMetadata(metaToken: string): DeleteResult;
    deleteNode(nodeToken: string): DeleteResult;
    deleteRelation(relationToken: `${string}-${string}`): DeleteResult;
    getListByToken(
        listToken: string,
    ): {
        create_dt?: number;
        id?: string;
        meta?: {
            children?: any[];
            default?: boolean;
            description?: string | string[];
            external?: any;
            path?: any;
            ref_extern?: string | string[];
            type?: string;
            views?: {
                bubble?: any;
                forceDirectedTree?: any;
                listView?: { views?: any };
            };
        };
        name?: string;
        token?: string;
        type?: "list";
        update_dt?: number;
        userGroup?: string[];
    };
    getNodeByToken(
        nodeToken: string,
    ): {
        create_dt?: number;
        id?: string;
        name?: string;
        token?: string;
        type?: string;
        update_dt?: number;
        userGroup?: string[];
    };
    getNodesByType(
        nodeType: NodeType,
    ): {
        create_dt?: number;
        id?: string;
        name?: string;
        token?: string;
        type?: string;
        update_dt?: number;
        userGroup?: string[];
    }[];
    getRelationFromNodeToken(
        token: string,
    ): {
        create_dt?: number;
        f_id?: string;
        f_token?: string;
        r_type?: string;
        t_id?: string;
        t_token?: string;
        update_dt?: number;
    }[];
    getRelationToToken(
        token: string,
    ): {
        create_dt?: number;
        f_id?: string;
        f_token?: string;
        r_type?: string;
        t_id?: string;
        t_token?: string;
        update_dt?: number;
    }[];
    getStructureByToken(structureToken: any): _structure;
    hasMetadata(metaToken: string): boolean;
    hasNode(nodeToken: string): boolean;
    hasRelation(relationToken: `${string}-${string}`): boolean;
    on(event: DataManagerEvents, callback: any): void;
    queryMetadataAll(query: any): any;
    queryNodeAll(
        query: Partial<INode<NodeType>>,
    ): {
        create_dt?: number;
        id?: string;
        name?: string;
        token?: string;
        type?: string;
        update_dt?: number;
        userGroup?: string[];
    }[];
    queryNodeStructure(node: any, nodeType?: string): any;
    queryNodeToStructure(
        startingNode: {
            create_dt?: number;
            id?: string;
            name?: string;
            token?: string;
            type?: string;
            update_dt?: number;
            userGroup?: string[];
        },
        nodeType?: string,
    ): any;
    queryRelationAll(
        query: Partial<
            {
                create_dt?: number;
                f_id?: string;
                f_token?: string;
                r_type?: string;
                t_id?: string;
                t_token?: string;
                update_dt?: number;
            },
        >,
    ): {
        create_dt?: number;
        f_id?: string;
        f_token?: string;
        r_type?: string;
        t_id?: string;
        t_token?: string;
        update_dt?: number;
    }[];
    queryStructureAll(
        query: any,
    ): {
        create_dt?: number;
        id?: string;
        meta?: {
            children?: any[];
            default?: boolean;
            description?: string | string[];
            external?: any;
            path?: any;
            ref_extern?: string | string[];
            type?: string;
            views?: {
                bubble?: any;
                forceDirectedTree?: any;
                listView?: { views?: any };
            };
        };
        name?: string;
        token?: string;
        type?: "structure";
        update_dt?: number;
        userGroup?: string[];
    }[];
    setList(
        list: IListInitOptions,
    ): [
        {
            _id?: string;
            data?: Record<string, any>;
            delta?: Record<string, any>;
            eventTime?: number;
            method?: "POST" | "UPDATE" | "DELETE";
            operationId?: string;
            operationType?:
                | "node"
                | "structure"
                | "structure-child"
                | "relation"
                | "metadata"
                | "list"
                | "list-child";
            ref?: any;
        },
        {
            create_dt?: number;
            id?: string;
            meta?: {
                children?: any[];
                default?: boolean;
                description?: string
                | string[];
                external?: any;
                path?: any;
                ref_extern?: string | string[];
                type?: string;
                views?: {
                    bubble?: any;
                    forceDirectedTree?: any;
                    listView?: { views?: any };
                };
            };
            name?: string;
            token?: string;
            type?: "list";
            update_dt?: number;
            userGroup?: string[];
        },
    ];
    setMetadata(meta: IMetaContainer<NodeType>): MetadataCreationResult;
    setNode(
        node: {
            create_dt?: number;
            id?: string;
            name?: string;
            token?: string;
            type?: string;
            update_dt?: number;
            userGroup?: string[];
        },
    ): NodeCreationResult;
    setRelation(relation: IRelation): RelationCreationResult;
}

Implemented by

Properties

addStructure: (
    structure: IStructureInitOptions,
) => [
    {
        _id?: string;
        data?: Record<string, any>;
        delta?: Record<string, any>;
        eventTime?: number;
        method?: "POST" | "UPDATE" | "DELETE";
        operationId?: string;
        operationType?:
            | "node"
            | "structure"
            | "structure-child"
            | "relation"
            | "metadata"
            | "list"
            | "list-child";
        ref?: any;
    },
    _structure,
]
lists: Map<string, _list>
meta: Map<string, _metaContainer<NodeType>>
nodes: Map<string, _node<NodeType>>

contains the nodes of the project

relations: Map<`${string}-${string}`, _relation>

contains the Node relations

setStructure: (
    structure: IStructureInitOptions,
) => [
    {
        _id?: string;
        data?: Record<string, any>;
        delta?: Record<string, any>;
        eventTime?: number;
        method?: "POST" | "UPDATE" | "DELETE";
        operationId?: string;
        operationType?:
            | "node"
            | "structure"
            | "structure-child"
            | "relation"
            | "metadata"
            | "list"
            | "list-child";
        ref?: any;
    },
    _structure,
]
structures: Map<string, _structure>

Methods

  • Parameters

    Returns [
        {
            _id?: string;
            data?: Record<string, any>;
            delta?: Record<string, any>;
            eventTime?: number;
            method?: "POST" | "UPDATE" | "DELETE";
            operationId?: string;
            operationType?:
                | "node"
                | "structure"
                | "structure-child"
                | "relation"
                | "metadata"
                | "list"
                | "list-child";
            ref?: any;
        },
        {
            create_dt?: number;
            id?: string;
            meta?: {
                children?: any[];
                default?: boolean;
                description?: string
                | string[];
                external?: any;
                path?: any;
                ref_extern?: string | string[];
                type?: string;
                views?: {
                    bubble?: any;
                    forceDirectedTree?: any;
                    listView?: { views?: any };
                };
            };
            name?: string;
            token?: string;
            type?: "list";
            update_dt?: number;
            userGroup?: string[];
        },
    ]

  • Parameters

    • node: {
          create_dt?: number;
          id?: string;
          name?: string;
          token?: string;
          type?: string;
          update_dt?: number;
          userGroup?: string[];
      }

    Returns NodeCreationResult

  • Parameters

    • listToken: string

    Returns {
        create_dt?: number;
        id?: string;
        meta?: {
            children?: any[];
            default?: boolean;
            description?: string | string[];
            external?: any;
            path?: any;
            ref_extern?: string | string[];
            type?: string;
            views?: {
                bubble?: any;
                forceDirectedTree?: any;
                listView?: { views?: any };
            };
        };
        name?: string;
        token?: string;
        type?: "list";
        update_dt?: number;
        userGroup?: string[];
    }

  • Parameters

    • nodeToken: string

    Returns {
        create_dt?: number;
        id?: string;
        name?: string;
        token?: string;
        type?: string;
        update_dt?: number;
        userGroup?: string[];
    }

  • Parameters

    Returns {
        create_dt?: number;
        id?: string;
        name?: string;
        token?: string;
        type?: string;
        update_dt?: number;
        userGroup?: string[];
    }[]

  • Parameters

    • token: string

    Returns {
        create_dt?: number;
        f_id?: string;
        f_token?: string;
        r_type?: string;
        t_id?: string;
        t_token?: string;
        update_dt?: number;
    }[]

  • Parameters

    • token: string

    Returns {
        create_dt?: number;
        f_id?: string;
        f_token?: string;
        r_type?: string;
        t_id?: string;
        t_token?: string;
        update_dt?: number;
    }[]

  • Parameters

    Returns {
        create_dt?: number;
        id?: string;
        name?: string;
        token?: string;
        type?: string;
        update_dt?: number;
        userGroup?: string[];
    }[]

  • Parameters

    • startingNode: {
          create_dt?: number;
          id?: string;
          name?: string;
          token?: string;
          type?: string;
          update_dt?: number;
          userGroup?: string[];
      }
    • OptionalnodeType: string

    Returns any

  • Parameters

    • query: Partial<
          {
              create_dt?: number;
              f_id?: string;
              f_token?: string;
              r_type?: string;
              t_id?: string;
              t_token?: string;
              update_dt?: number;
          },
      >

    Returns {
        create_dt?: number;
        f_id?: string;
        f_token?: string;
        r_type?: string;
        t_id?: string;
        t_token?: string;
        update_dt?: number;
    }[]

  • Parameters

    • query: any

    Returns {
        create_dt?: number;
        id?: string;
        meta?: {
            children?: any[];
            default?: boolean;
            description?: string | string[];
            external?: any;
            path?: any;
            ref_extern?: string | string[];
            type?: string;
            views?: {
                bubble?: any;
                forceDirectedTree?: any;
                listView?: { views?: any };
            };
        };
        name?: string;
        token?: string;
        type?: "structure";
        update_dt?: number;
        userGroup?: string[];
    }[]

  • Parameters

    Returns [
        {
            _id?: string;
            data?: Record<string, any>;
            delta?: Record<string, any>;
            eventTime?: number;
            method?: "POST" | "UPDATE" | "DELETE";
            operationId?: string;
            operationType?:
                | "node"
                | "structure"
                | "structure-child"
                | "relation"
                | "metadata"
                | "list"
                | "list-child";
            ref?: any;
        },
        {
            create_dt?: number;
            id?: string;
            meta?: {
                children?: any[];
                default?: boolean;
                description?: string
                | string[];
                external?: any;
                path?: any;
                ref_extern?: string | string[];
                type?: string;
                views?: {
                    bubble?: any;
                    forceDirectedTree?: any;
                    listView?: { views?: any };
                };
            };
            name?: string;
            token?: string;
            type?: "list";
            update_dt?: number;
            userGroup?: string[];
        },
    ]

  • Parameters

    • node: {
          create_dt?: number;
          id?: string;
          name?: string;
          token?: string;
          type?: string;
          update_dt?: number;
          userGroup?: string[];
      }

    Returns NodeCreationResult