@class MAGraphSpecification, NSUUID, NSString, MAGraphReference; @interface MABaseGraph : NSObject <NSXMLParserDelegate, MANodeAndEdgeQueryProtocol, MALegacyNodeAndEdgeQueryProtocol> @property (readonly, nonatomic) BOOL _shouldFail; @property (nonatomic) unsigned long long version; @property (readonly) MAGraphSpecification *specification; @property (readonly, nonatomic) NSUUID *identifier; @property (readonly, nonatomic) BOOL isReadOnly; @property (readonly, nonatomic) BOOL usesClassADataProtection; @property (readonly, nonatomic) BOOL usesClassBDataProtection; @property (readonly, nonatomic) BOOL usesClassCDataProtection; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (readonly) MAGraphReference *graphReference; + (id)graph; + (id)persistentStoreFileExtension; + (void)initialize; + (BOOL)copyPersistentStoreFromURL:(id)a0 toURL:(id)a1 error:(id *)a2; + (id)defaultSpecification; + (BOOL)destroyPersistentStoreAtURL:(id)a0 error:(id *)a1; + (id)graphJSONURLWithPath:(id)a0 andName:(id)a1; + (id)graphMLURLWithPath:(id)a0 andName:(id)a1; + (id)graphWithDefinitions:(id)a0 constraints:(id)a1 error:(id *)a2; + (id)graphWithMergedGraphs:(id)a0 strictNodes:(BOOL)a1 strictEdges:(BOOL)a2; + (id)graphWithVisualString:(id)a0 error:(id *)a1; + (BOOL)migratePersistentStoreFromURL:(id)a0 toURL:(id)a1 error:(id *)a2; + (id)persistentStoreURLWithPath:(id)a0 andName:(id)a1; + (BOOL)populateGraph:(id)a0 withDefinitions:(id)a1 constraints:(id)a2 error:(id *)a3; + (id)scanGraphConstraintString:(id)a0 error:(id *)a1; + (BOOL)scanGraphElementOptionsString:(id)a0 minimum:(unsigned long long *)a1 maximum:(unsigned long long *)a2 error:(id *)a3; + (BOOL)scanGraphElementString:(id)a0 type:(unsigned long long *)a1 optionalName:(id *)a2 label:(id *)a3 optionalDomains:(id *)a4 optionalProperties:(id *)a5 error:(id *)a6; + (BOOL)scanMatchString:(id)a0 definitions:(id *)a1 constraints:(id *)a2 forCreation:(BOOL)a3 error:(id *)a4; + (id)visualStringWithFormat:(id)a0 elements:(id)a1; - (id)init; - (void)dealloc; - (id)nodesForLabel:(id)a0; - (id)databaseURL; - (id)nodeForIdentifier:(unsigned long long)a0; - (unsigned long long)memoryFootprint:(id)a0; - (void)parser:(id)a0 didStartElement:(id)a1 namespaceURI:(id)a2 qualifiedName:(id)a3 attributes:(id)a4; - (void)enumerateEdgesWithBlock:(id /* block */)a0; - (id)allNodes; - (id)addNodeWithLabel:(id)a0; - (void)closePersistentStore; - (void)enumerateNodesWithBlock:(id /* block */)a0; - (void)parser:(id)a0 didEndElement:(id)a1 namespaceURI:(id)a2 qualifiedName:(id)a3; - (void).cxx_destruct; - (void)invalidateMemoryCaches; - (id)allEdges; - (BOOL)isEqual:(id)a0; - (id)initWithSpecification:(id)a0; - (void)parser:(id)a0 foundCharacters:(id)a1; - (id)edgesForLabel:(id)a0; - (void)readUsingBlock:(id /* block */)a0; - (unsigned long long)edgesCount; - (unsigned long long)nodesCount; - (id)graphNode; - (BOOL)edgesStoreWeakReferencesToNodes; - (id)schema:(id)a0; - (BOOL)copyPersistentStoreToURL:(id)a0 error:(id *)a1; - (BOOL)hasPendingWrite; - (id)nodesForDomain:(unsigned short)a0; - (id)_constraintAbstractEdgesFromAbstractNode:(id)a0 inConstraints:(id *)a1; - (id)_graphDictionary; - (id)_graphJSONDictionary; - (BOOL)_matchNode:(id)a0 usingAbstractNode:(id)a1 fromEdge:(id)a2 atIteration:(unsigned long long)a3 withDefinitions:(id)a4 constraints:(id)a5 unusedConstraints:(id)a6 andSubGraph:(id)a7 matchingNodeQueue:(id)a8; - (id)abstractEdges; - (id)addEdgeFromBase:(id)a0 sourceNode:(id)a1 targetNode:(id)a2; - (id)addEdgeWithLabel:(id)a0 sourceNode:(id)a1 targetNode:(id)a2; - (id)addEdgeWithLabel:(id)a0 sourceNode:(id)a1 targetNode:(id)a2 domain:(unsigned short)a3 weight:(float)a4 properties:(id)a5; - (id)addNodeFromBase:(id)a0; - (id)addNodeWithLabel:(id)a0 domain:(unsigned short)a1 weight:(float)a2 properties:(id)a3; - (id)addUniqueEdgeWithLabel:(id)a0 sourceNode:(id)a1 targetNode:(id)a2 domain:(unsigned short)a3 weight:(float)a4 properties:(id)a5; - (void)addUniqueNode:(id)a0 didInsert:(BOOL *)a1; - (id)addUniqueNodeWithLabel:(id)a0 domain:(unsigned short)a1 weight:(float)a2 properties:(id)a3 didCreate:(BOOL *)a4; - (id)addUniquelyIdentifiedNodeWithLabel:(id)a0 domain:(unsigned short)a1 weight:(float)a2 properties:(id)a3 didCreate:(BOOL *)a4; - (id)adjacencyWithEndNodeIdentifiers:(id)a0 edgeFilter:(id)a1 edgeType:(unsigned long long)a2; - (id)adjacencyWithSources:(id)a0 relation:(id)a1; - (id)adjacencyWithStartNodeIdentifiers:(id)a0 edgeFilter:(id)a1 edgeType:(unsigned long long)a2; - (id)anyEdgeMatchingFilter:(id)a0; - (id)anyNodeForLabel:(id)a0; - (id)anyNodeForLabel:(id)a0 domain:(unsigned short)a1; - (id)anyNodeForLabel:(id)a0 domain:(unsigned short)a1 properties:(id)a2; - (id)anyNodeMatchingFilter:(id)a0; - (void)breadthFirstSearchFromNode:(id)a0 directed:(BOOL)a1 usingBlock:(id /* block */)a2; - (BOOL)compareWithPersistedState; - (BOOL)conformsToGraphSchema:(id)a0; - (void)depthFirstSearchFromNode:(id)a0 directed:(BOOL)a1 usingBlock:(id /* block */)a2; - (id)edgeForIdentifier:(unsigned long long)a0; - (id)edgeFromFetchedRowWithIdentifier:(int)a0 domain:(short)a1 label:(id)a2 weight:(float)a3 properties:(id)a4 sourceNodeIdentifier:(int)a5 targetNodeIdentifier:(int)a6; - (id)edgeIdentifiersMatchingFilter:(id)a0; - (id)edgeIdentifiersMatchingFilter:(id)a0 intersectingIdentifiers:(id)a1; - (id)edgeIdentifiersOfType:(unsigned long long)a0 betweenNodesForIdentifiers:(id)a1 andNodesForIdentifiers:(id)a2 matchingFilter:(id)a3; - (id)edgeIdentifiersOfType:(unsigned long long)a0 onNodesForIdentifiers:(id)a1 matchingFilter:(id)a2; - (id)edgeSchemeWithLabel:(id)a0 domain:(unsigned short)a1 sourceNode:(id)a2 targetNode:(id)a3; - (unsigned long long)edgesCountForLabel:(id)a0; - (unsigned long long)edgesCountForLabel:(id)a0 domain:(unsigned short)a1; - (unsigned long long)edgesCountForLabel:(id)a0 domain:(unsigned short)a1 properties:(id)a2; - (id)edgesDomains; - (id)edgesForIdentifiers:(id)a0; - (id)edgesForLabel:(id)a0 domain:(unsigned short)a1; - (id)edgesForLabel:(id)a0 domain:(unsigned short)a1 properties:(id)a2; - (id)edgesLabels; - (void)enterBatch; - (void)enumerateDoublePropertyValuesForKey:(id)a0 ofEdgesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateDoublePropertyValuesForKey:(id)a0 ofNodesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateEdgesInDomain:(unsigned short)a0 usingBlock:(id /* block */)a1; - (void)enumerateEdgesMatchingFilter:(id)a0 usingBlock:(id /* block */)a1; - (void)enumerateEdgesWithIdentifiers:(id)a0 usingBlock:(id /* block */)a1; - (void)enumerateEdgesWithLabel:(id)a0 domain:(unsigned short)a1 properties:(id)a2 usingBlock:(id /* block */)a3; - (void)enumerateEdgesWithLabel:(id)a0 domain:(unsigned short)a1 usingBlock:(id /* block */)a2; - (void)enumerateIntegerPropertyValuesForKey:(id)a0 ofEdgesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateIntegerPropertyValuesForKey:(id)a0 ofNodesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateNodeIdentifiers:(id)a0 sortedByDoublePropertyForName:(id)a1 ascending:(BOOL)a2 usingBlock:(id /* block */)a3; - (void)enumerateNodeIdentifiers:(id)a0 sortedByIntegerPropertyForName:(id)a1 ascending:(BOOL)a2 usingBlock:(id /* block */)a3; - (void)enumerateNodeIdentifiers:(id)a0 sortedByStringPropertyForName:(id)a1 ascending:(BOOL)a2 usingBlock:(id /* block */)a3; - (void)enumerateNodeIdentifiers:(id)a0 sortedByUnsignedIntegerPropertyForName:(id)a1 ascending:(BOOL)a2 usingBlock:(id /* block */)a3; - (void)enumerateNodesInDomain:(unsigned short)a0 usingBlock:(id /* block */)a1; - (void)enumerateNodesMatchingFilter:(id)a0 usingBlock:(id /* block */)a1; - (void)enumerateNodesWithIdentifiers:(id)a0 sortedByFloatPropertyForName:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateNodesWithIdentifiers:(id)a0 sortedByIntegerPropertyForName:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateNodesWithIdentifiers:(id)a0 sortedByStringPropertyForName:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateNodesWithIdentifiers:(id)a0 usingBlock:(id /* block */)a1; - (void)enumerateNodesWithLabel:(id)a0 domain:(unsigned short)a1 properties:(id)a2 usingBlock:(id /* block */)a3; - (void)enumerateNodesWithLabel:(id)a0 domain:(unsigned short)a1 usingBlock:(id /* block */)a2; - (void)enumerateStringPropertyValuesForKey:(id)a0 ofEdgesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateStringPropertyValuesForKey:(id)a0 ofNodesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateUnsignedIntegerPropertyValuesForKey:(id)a0 ofEdgesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)enumerateUnsignedIntegerPropertyValuesForKey:(id)a0 ofNodesWithIdentifiers:(id)a1 usingBlock:(id /* block */)a2; - (void)executeGraphChangeRequest:(id)a0; - (BOOL)findAndResolveUniqueEdge:(id)a0; - (BOOL)findAndResolveUniqueNode:(id)a0; - (BOOL)hasPendingRead; - (id)initWithDataURL:(id)a0 error:(id *)a1; - (id)initWithGraphJSONURL:(id)a0 error:(id *)a1; - (id)initWithGraphMLURL:(id)a0 error:(id *)a1; - (id)initWithPersistenceOptions:(long long)a0; - (id)initWithPersistentStoreURL:(id)a0 options:(long long)a1 error:(id *)a2; - (id)initWithSpecification:(id)a0 dataURL:(id)a1 error:(id *)a2; - (id)initWithSpecification:(id)a0 persistenceStoreURL:(id)a1 error:(id *)a2; - (id)initWithSpecification:(id)a0 persistenceStoreURL:(id)a1 progressReporter:(id)a2; - (void)labelsAndDomainsOfEdgesForIdentifiers:(id)a0 labels:(id *)a1 domains:(id *)a2; - (void)labelsAndDomainsOfNodesForIdentifiers:(id)a0 labels:(id *)a1 domains:(id *)a2; - (void)leaveBatch; - (void)legacyRemoveEdges:(id)a0; - (void)legacyRemoveNodes:(id)a0; - (void)loadDomains:(id)a0; - (id)matchWithDefinitions:(id)a0 constraints:(id)a1 error:(id *)a2; - (id)matchWithVisualFormat:(id)a0 elements:(id)a1 error:(id *)a2; - (id)matchWithVisualString:(id)a0 error:(id *)a1; - (id)mergeWithGraph:(id)a0 strictNodes:(BOOL)a1 strictEdges:(BOOL)a2; - (void)mergeWithGraph:(id)a0 strictNodes:(BOOL)a1 strictEdges:(BOOL)a2 createdNodes:(out id *)a3 createdEdges:(out id *)a4; - (id)mergeWithGraph:(id)a0 strictNodes:(BOOL)a1 strictEdges:(BOOL)a2 saveToDatabase:(BOOL)a3; - (void)mergeWithGraph:(id)a0 strictNodes:(BOOL)a1 strictEdges:(BOOL)a2 saveToDatabase:(BOOL)a3 createdNodes:(out id *)a4 createdEdges:(out id *)a5; - (BOOL)migratePersistentStoreToURL:(id)a0 error:(id *)a1; - (id)neighborNodeIdentifiersWithStartNodeIdentifiers:(id)a0 edgeType:(unsigned long long)a1 edgeFilter:(id)a2; - (Class)nodeClass; - (id)nodeFromFetchedRowWithIdentifier:(int)a0 domain:(short)a1 label:(id)a2 weight:(float)a3 properties:(id)a4; - (id)nodeIdentifiersMatchingFilter:(id)a0; - (id)nodeIdentifiersMatchingFilter:(id)a0 intersectingIdentifiers:(id)a1; - (id)nodeIdentifiersOfEdgeIdentifiers:(id)a0 ofType:(unsigned long long)a1; - (id)nodeIdentifiersRelatedToSourceNodeIdentifiers:(id)a0 relation:(id)a1; - (id)nodeSchemeWithLabel:(id)a0 domain:(unsigned short)a1; - (unsigned long long)nodesCountForDomain:(unsigned short)a0; - (unsigned long long)nodesCountForLabel:(id)a0; - (unsigned long long)nodesCountForLabel:(id)a0 domain:(unsigned short)a1; - (unsigned long long)nodesCountForLabel:(id)a0 domain:(unsigned short)a1 properties:(id)a2; - (id)nodesDomains; - (id)nodesForDomain:(unsigned short)a0 properties:(id)a1; - (id)nodesForIdentifiers:(id)a0; - (id)nodesForLabel:(id)a0 domain:(unsigned short)a1; - (id)nodesForLabel:(id)a0 domain:(unsigned short)a1 properties:(id)a2; - (id)nodesLabels; - (unsigned long long)numberOfEdgesMatchingFilter:(id)a0; - (unsigned long long)numberOfNodesMatchingFilter:(id)a0; - (id)orphanNodes; - (void)persistModelProperties:(id)a0 forEdgeWithIdentifier:(unsigned long long)a1 clobberExisting:(BOOL)a2; - (void)persistModelProperties:(id)a0 forNodeWithIdentifier:(unsigned long long)a1 clobberExisting:(BOOL)a2; - (void)persistModelProperty:(id)a0 forKey:(id)a1 forEdgeWithIdentifier:(unsigned long long)a2; - (void)persistModelProperty:(id)a0 forKey:(id)a1 forNodeWithIdentifier:(unsigned long long)a2; - (void)persistWeight:(float)a0 forEdgeWithIdentifier:(unsigned long long)a1; - (void)persistWeight:(float)a0 forNodeWithIdentifier:(unsigned long long)a1; - (void)removeModelPropertiesForEdgeWithIdentifier:(unsigned long long)a0; - (void)removeModelPropertiesForNodeWithIdentifier:(unsigned long long)a0; - (void)removeModelPropertyForKey:(id)a0 forEdgeWithIdentifier:(unsigned long long)a1; - (void)removeModelPropertyForKey:(id)a0 forNodeWithIdentifier:(unsigned long long)a1; - (void)rollbackBatch; - (BOOL)savePersistentStore; - (void)savePersistentStoreWithCompletion:(id /* block */)a0; - (id)selectBestRootNodeForPath:(id)a0 withDefinitions:(id)a1; - (id)shortestPathFromNode:(id)a0 toNode:(id)a1 directed:(BOOL)a2; - (id)sourcesByTargetWithEdgeIdentifiers:(id)a0; - (id)targetsBySourceWithEdgeIdentifiers:(id)a0; - (id)transitiveClosureNeighborNodeIdentifiersWithStartNodeIdentifiers:(id)a0 edgeType:(unsigned long long)a1 edgeFilter:(id)a2; - (void)unloadDomains:(id)a0; - (BOOL)updateGraphWithVisualString:(id)a0; - (void)waitUntilQuiescentUsingBlock:(id /* block */)a0; - (BOOL)writeDataToURL:(id)a0 error:(id *)a1; - (BOOL)writeGraphJSONToURL:(id)a0 error:(id *)a1; - (void)writeUsingBlock:(id /* block */)a0; @end