@class NSData, NSString, PLManagedAsset, NSDate, PLUniformTypeIdentifier, PLFileSystemVolume, PLInternalResourceSidecarRepresentation, PLFileSystemBookmark, PLCloudMaster, NSNumber; @protocol PLResourceDataStore, PLAssetID, PLResourceDataStoreKey; @interface PLInternalResource : PLManagedObject <PLResource, PLValidatesResourceModel, PLResourceAvailabilityMarking, PLCloudDeletable> @property (class, readonly, copy) NSString *cloudUUIDKeyForDeletion; @property (retain, nonatomic) NSString *compactUTI; @property (nonatomic) short utiConformanceHint; @property (nonatomic) unsigned int resourceType; @property (nonatomic) unsigned int version; @property (nonatomic) unsigned int recipeID; @property (retain, nonatomic) PLUniformTypeIdentifier *uniformTypeIdentifier; @property (readonly, nonatomic) unsigned int orientation; @property (nonatomic) long long unorientedWidth; @property (nonatomic) long long unorientedHeight; @property (retain, nonatomic) NSString *codecFourCharCodeName; @property (readonly, nonatomic) long long orientedWidth; @property (readonly, nonatomic) long long orientedHeight; @property (retain, nonatomic) PLManagedAsset *asset; @property (readonly, nonatomic) BOOL isDerivative; @property (nonatomic) short localAvailability; @property (nonatomic) short localAvailabilityTarget; @property (nonatomic) short remoteAvailability; @property (nonatomic) short remoteAvailabilityTarget; @property (nonatomic) short dataStoreClassID; @property (nonatomic) long long dataStoreSubtype; @property (copy, nonatomic) NSData *dataStoreKeyData; @property (nonatomic) long long dataLength; @property (nonatomic) long long fileID; @property (retain, nonatomic) NSString *fingerprint; @property (nonatomic) short trashedState; @property (retain, nonatomic) NSDate *trashedDate; @property (retain, nonatomic) NSString *cloudDeleteAssetUUIDWithResourceType; @property (readonly, nonatomic) int qualitySortValue; @property (retain, nonatomic) PLFileSystemBookmark *fileSystemBookmark; @property (retain, nonatomic) PLFileSystemVolume *fileSystemVolume; @property (retain, nonatomic) NSNumber *sidecarIndex; @property (nonatomic) long long ptpTrashedState; @property (readonly, nonatomic) PLInternalResourceSidecarRepresentation *sidecarRepresentation; @property (nonatomic) short cloudLocalState; @property (retain, nonatomic) NSDate *cloudMasterDateCreated; @property (retain, nonatomic) NSDate *cloudLastOnDemandDownloadDate; @property (retain, nonatomic) NSDate *cloudLastPrefetchDate; @property (nonatomic) short cloudPrefetchCount; @property (retain, nonatomic) NSDate *cloudPrunedAt; @property (nonatomic) int cloudSourceType; @property (retain, nonatomic) PLCloudMaster *transientCloudMaster; @property (readonly, nonatomic) unsigned long long cplType; @property (readonly, nonatomic) float scale; @property (readonly, copy, nonatomic) id<PLAssetID> assetID; @property (readonly, nonatomic) id<PLResourceDataStore> dataStore; @property (readonly, nonatomic) id<PLResourceDataStoreKey> dataStoreKey; @property (readonly, nonatomic) long long estimatedDataLength; @property (readonly, nonatomic) BOOL isOriginalResource; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (nonatomic) short cloudDeleteState; @property (readonly) long long cloudDeletionType; @property (readonly, copy) NSString *cloudUUIDForDeletion; + (id)prefetchResourcePredicateForCPLResourceType:(unsigned long long)a0 isAssetResource:(BOOL)a1 maxRetry:(unsigned long long)a2 excludeDynamicResources:(BOOL)a3 additionalResourcePredicates:(id)a4; + (id)entityName; + (void)triggerBackgroundDownloadFailureForResources:(id)a0 cloudPhotoLibraryManager:(id)a1; + (id)originalCPLResourceTypesForMaster; + (id)prunePredicateForCPLResourceTypes:(id)a0; + (id)predicateForAllFullSizeResourcesLocallyAvailable; + (unsigned long long)cplExpungedStateForTrashedState:(short)a0; + (id)predicateForResourceCreatedAfterDate:(id)a0; + (id)predicateForPurgeableOriginalResources; + (void)resetCloudResourcesStateForCloudInManagedObjectContext:(id)a0 hardReset:(BOOL)a1; + (BOOL)batchResetFileIDInManagedObjectContext:(id)a0 error:(id *)a1; + (id)predicateForResourceIsNotLocallyAvailableWithCPLResourceType:(unsigned long long)a0 version:(unsigned int)a1; + (id)predicateForOriginalsToDownload; + (id)predicateForAllOriginalResourcesLocallyAvailable; + (id)nonOriginalCPLResourceTypes; + (id)predicateForSyndicationResourcesRequiringBackgroundDownload; + (id)predicateForImageResourcePixelsLessOrEqual:(long long)a0; + (void)resetPrefetchStateForResourcesWithVersion:(unsigned int)a0 cplType:(unsigned long long)a1 assetUuids:(id)a2 inLibrary:(id)a3; + (id)predicateForAvailableResources; + (id)purgeablePushedPredicateForCPLResourceTypes:(id)a0 urgency:(long long)a1; + (id)originalCPLResourceTypesForAsset; + (BOOL)deleteObsoleteResourcesInManagedObjectContext:(id)a0 error:(id *)a1; + (BOOL)supportsTrashedStateForResourceIdentity:(id)a0; + (id)resourceForManagedAsset:(id)a0 sharedStreamsType:(unsigned int)a1 managedObjectContext:(id)a2 error:(id *)a3; + (unsigned long long)bytesNeededToDownloadOriginalResourcesInLibrary:(id)a0; + (id)insertResourceForMasterObjectID:(id)a0 withExternalCPLResource:(id)a1 inManagedObjectContext:(id)a2; + (id)originalCPLResourceTypes; + (id)predicateForSyndicationResourcesRequiringSanitization; + (id)listOfSyncedProperties; + (short)plTrashedStateForCPLExpungedState:(unsigned long long)a0; + (id)_obsoleteResourceRecipesWithCPLOff; + (unsigned long long)bytesForAllResourcesInLibrary:(id)a0; + (id)predicateForMaxFilesize:(unsigned long long)a0; + (long long)cloudDeletionTypeForTombstone:(id)a0; + (BOOL)isCPLJPEGThumbnailResource:(id)a0; + (id)insertResourceForAssetObjectID:(id)a0 resourceIdentity:(id)a1 inManagedObjectContext:(id)a2; - (void)willSave; - (BOOL)isDerivative; - (id)validateForAssetID:(id)a0 resourceIdentity:(id)a1; - (void)setDataLength:(long long)a0; - (void)prepareForDeletion; - (id)payloadForChangedKeys:(id)a0; - (BOOL)isVirtual; - (id)payloadID; - (BOOL)repairResourceValidationErrors:(id)a0 managedObjectContext:(id)a1; - (BOOL)_colorSpaceIsNativeForDisplay; - (BOOL)isLocallyAvailable; - (BOOL)shouldPersistTrashedState; - (id)fileURL; - (id)redactedDescription; - (BOOL)isCPLMasterResource; - (id)_avAssetProxyIfTypeIsFullSizeOrOriginal; - (float)scaleGivenAssetHasAdjustments:(BOOL)a0 currentWidth:(long long)a1 currentHeight:(long long)a2; - (BOOL)isCPLJPEGThumbnail; - (BOOL)isPlayableVideo; - (BOOL)isTrashedOrExpunged; - (BOOL)supportsCloudUpload; - (BOOL)isSyncableChange; - (void)setCloudAttributesWithExternalResource:(id)a0; - (void)setResourceIdentity:(id)a0 managedObjectContext:(id)a1; - (id)photosCTLDescription; - (BOOL)isCPLOriginalResource; - (id)cplFileURL; - (BOOL)hasInvalidFileID; - (BOOL)canRepresentAsSidecar; - (id)purgeIfPossibleReturningError:(id *)a0; - (void)setFingerprint:(id)a0; - (id)referenceMediaFileURL; - (id)cplResourceIncludeFile:(BOOL)a0 createDirectoryIfNeeded:(BOOL)a1; - (BOOL)isAdjustedFullSizeRenderResource; - (void)deleteResource; - (BOOL)isInCloud; - (BOOL)isAdjustedResource; - (void)applyTrashedState:(short)a0 trashedDate:(id)a1; - (void)markAsLocallyAvailableWithFilePath:(id)a0; - (BOOL)supportsTrashedState; - (BOOL)isCPLOriginalResourceAssetHasAdjustments:(BOOL)a0; - (unsigned long long)cplType; - (void)ensureInitialValuesForSyndication; - (id)cplResourceForTimeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0; - (id)scopedIdentifier; - (void)setCloudLocalState:(short)a0; - (void)clearRequiresSanitizationFlag; - (void)setSyndicationLocalAvailabilityWithAvailable:(BOOL)a0 additionalFlags:(unsigned short)a1; - (void)resetPrefetchState; - (BOOL)isDefaultOrientation; - (id)expectedFileURL; - (id)validatedExternalResourceRepresentationUsingFileURL:(id)a0; - (void).cxx_destruct; - (void)makeResourceLocallyAvailableWithCompletion:(id /* block */)a0; - (BOOL)isRemotelyAvailable; - (void)markAsNotLocallyAvailable; - (id)cplResourceForFileURL:(id)a0 createDirectoryIfNeeded:(BOOL)a1; - (id)_libraryID; - (BOOL)isValidForJournalPersistence; - (void)transitional_reconsiderLocalAvailabilityBasedOnExistingLocationOfCPLResourceAtFilePath:(id)a0; - (id)photosCTLJSONDict; - (void)updateResourceForMasterExternalCPLResource:(id)a0 inManagedObjectContext:(id)a1; - (void)applyTrashedState:(short)a0; - (BOOL)isCPLAssetResource; - (id)singleLineDescription; - (void)setSyndicationLocalAvailabilityWithAvailable:(BOOL)a0; - (BOOL)isCPLResource; - (void)persistTrashedStateToFilesystem; - (void)setLocalAvailability:(short)a0; - (id)expungeableResourceStateRepresentation; - (long long)estimatedDataLength; - (void)markAsNotLocallyAvailableAfterPurge; - (BOOL)copyPurgeabilityFromFileURL:(id)a0; - (id)cplResourceIncludeFile:(BOOL)a0; @end