@class NSMutableDictionary; @interface MPMediaLibraryEntityTranslator : NSObject { NSMutableDictionary *_propertiesToTranslators; NSMutableDictionary *_relationshipsToTranslators; } @property (readonly, nonatomic) Class MPModelClass; @property (readonly, nonatomic, getter=isTransient) BOOL transient; @property (readonly, nonatomic) void *entityClass; @property (copy, nonatomic) id /* block */ allowedItemPredicatesBlock; @property (copy, nonatomic) id /* block */ entityQueryBlock; + (id)translatorForMPModelClass:(Class)a0; + (id)translatorForTransientMPModelClass:(Class)a0; + (id)_translatorForMPModelClass:(Class)a0 mlcoreEntityClass:(void *)a1 create:(BOOL)a2 transient:(BOOL)a3; + (id)translatorForMPModelClass:(Class)a0 mlcoreEntityClass:(void *)a1; - (struct shared_ptr> { void *x0; struct __shared_weak_count *x1; })_propertyMapForKeyPath:(id)a0 includePropertiesToSort:(BOOL)a1; - (id)identifiersForPropertyCache:(const void *)a0 context:(id)a1; - (struct shared_ptr { struct PropertiesQuery *x0; struct __shared_weak_count *x1; })propertiesQueryForPropertySet:(id)a0 scopedContainers:(id)a1 allowedItemIdentifiers:(id)a2 view:(id)a3; - (struct unordered_map, std::equal_to, std::allocator>> { struct __hash_table, std::__unordered_map_hasher, std::hash, std::equal_to>, std::__unordered_map_equal, std::equal_to, std::hash>, std::allocator>> { struct unique_ptr, void *> *> *[], std::__bucket_list_deallocator, void *> *> *>>> { struct __compressed_pair, void *> *> **, std::__bucket_list_deallocator, void *> *> *>>> { void **x0; struct __bucket_list_deallocator, void *> *> *>> { struct __compressed_pair, void *> *> *>> { unsigned long long x0; } x0; } x1; } x0; } x0; struct __compressed_pair, void *> *>, std::allocator, void *>>> { struct __hash_node_base, void *> *> { void *x0; } x0; } x1; struct __compressed_pair, std::hash, std::equal_to>> { unsigned long long x0; } x2; struct __compressed_pair, std::equal_to, std::hash>> { float x0; } x3; } x0; })propertiesToFetchForPropertyKey:(id)a0; - (id)_propertyTranslatorForKeyPath:(id)a0; - (struct vector> { struct SortDescriptor *x0; struct SortDescriptor *x1; struct __compressed_pair> { struct SortDescriptor *x0; } x2; })MLCoreSortDescriptorsForModelSortDescriptors:(id)a0; - (struct vector, std::allocator>> { void *x0; void *x1; struct __compressed_pair *, std::allocator>> { void *x0; } x2; })MLCorePredicateForModelPropertyFilters:(id)a0; - (id)_valueForKeyPath:(id)a0 forPropertyCache:(const void *)a1 context:(id)a2; - (void)mapPropertyKey:(id)a0 withPropertiesToFetch:(const void *)a1 propertiesToSort:(const void *)a2 sortTransformer:(id /* block */)a3 valueTransformer:(id /* block */)a4; - (void)mapRelationshipKey:(id)a0 toModelClass:(Class)a1 transient:(BOOL)a2 usingForeignPropertyBase:(void *)a3; - (void)mapIdentifierMLProperties:(const void *)a0 identifierCreationBlock:(id /* block */)a1; - (struct vector> { struct ModelPropertyBase **x0; struct ModelPropertyBase **x1; struct __compressed_pair> { struct ModelPropertyBase **x0; } x2; })MLCorePropertiesForPropertySet:(id)a0; - (struct shared_ptr { struct EntityQuery *x0; struct __shared_weak_count *x1; })entityQueryForPropertySet:(id)a0 sortDescriptors:(id)a1 context:(id)a2 view:(id)a3; - (id)objectForPropertySet:(id)a0 entityClass:(void *)a1 propertyCache:(const void *)a2 context:(id)a3; - (struct vector> { struct ModelPropertyBase **x0; struct ModelPropertyBase **x1; struct __compressed_pair> { struct ModelPropertyBase **x0; } x2; })_MLCorePropertiesForPropertySet:(id)a0 withForeignPropertyBase:(void *)a1; - (id)_objectForPropertySet:(id)a0 entityClass:(void *)a1 propertyCache:(const void *)a2 baseTranslator:(id)a3 prependKeyPath:(id)a4 context:(id)a5; - (void)mapRelationshipKey:(id)a0 toModelClass:(Class)a1 usingForeignPropertyBase:(void *)a2; - (void).cxx_destruct; - (void)mapRelationshipKey:(id)a0 toModelClass:(Class)a1 transient:(BOOL)a2 usingForeignPropertyBase:(void *)a3 relationshipValidationProperties:(const void *)a4 isValidRelationshipHandler:(id /* block */)a5; - (void)mapPropertyKey:(id)a0 withPropertiesToFetch:(const void *)a1 propertiesToSort:(const void *)a2 sortTransformer:(id /* block */)a3 filterTransformer:(id /* block */)a4 valueTransformer:(id /* block */)a5; - (void)mapPropertyKey:(id)a0 withPropertiesToFetch:(const void *)a1 valueTransformer:(id /* block */)a2; - (Class)classForRelationshipKey:(id)a0; - (void)mapPropertyKey:(id)a0 toMLProperty:(void *)a1; - (void *)_propertyForKeyPath:(id)a0; @end