diff --git a/MagickCore/blob-private.h b/MagickCore/blob-private.h
index fe31b5f..ba3bba6 100644
--- a/MagickCore/blob-private.h
+++ b/MagickCore/blob-private.h
@@ -22,9 +22,6 @@
 extern "C" {
 #endif
 
-#include "MagickCore/image.h"
-#include "MagickCore/stream.h"
-
 #define MagickMinBlobExtent  32767L
 #if defined(MAGICKCORE_HAVE_FSEEKO)
 # define fseek  fseeko
@@ -33,17 +30,6 @@
 
 typedef enum
 {
-  UndefinedBlobMode,
-  ReadBlobMode,
-  ReadBinaryBlobMode,
-  WriteBlobMode,
-  WriteBinaryBlobMode,
-  AppendBlobMode,
-  AppendBinaryBlobMode
-} BlobMode;
-
-typedef enum
-{
   UndefinedStream,
   FileStream,
   StandardStream,
@@ -54,77 +40,22 @@
   BlobStream
 } StreamType;
 
-typedef int
-  *(*BlobFifo)(const Image *,const void *,const size_t);
+extern MagickPrivate MagickBooleanType
+  GetBlobError(const Image *),
+  IsBlobExempt(const Image *),
+  IsBlobSeekable(const Image *),
+  IsBlobTemporary(const Image *),
+  SetBlobExtent(Image *,const MagickSizeType);
 
-extern MagickExport BlobInfo
-  *CloneBlobInfo(const BlobInfo *),
-  *ReferenceBlob(BlobInfo *);
-
-extern MagickExport char
-  *ReadBlobString(Image *,char *);
-
-extern MagickExport const struct stat
+extern MagickPrivate const struct stat
   *GetBlobProperties(const Image *);
 
-extern MagickExport double
-  ReadBlobDouble(Image *);
+extern MagickPrivate StreamHandler
+  GetBlobStreamHandler(const Image *);
 
-extern MagickExport float
-  ReadBlobFloat(Image *);
-
-extern MagickExport int
-  EOFBlob(const Image *),
-  ReadBlobByte(Image *);
-
-extern MagickExport  MagickBooleanType
-  CloseBlob(Image *),
-  DiscardBlobBytes(Image *,const MagickSizeType),
-  OpenBlob(const ImageInfo *,Image *,const BlobMode,ExceptionInfo *),
-  SetBlobExtent(Image *,const MagickSizeType),
-  UnmapBlob(void *,const size_t);
-
-extern MagickExport MagickOffsetType
-  SeekBlob(Image *,const MagickOffsetType,const int),
-  TellBlob(const Image *);
-
-extern MagickExport MagickSizeType
-  ReadBlobLongLong(Image *),
-  ReadBlobMSBLongLong(Image *);
-
-extern MagickExport ssize_t
-  ReadBlob(Image *,const size_t,unsigned char *),
-  WriteBlob(Image *,const size_t,const unsigned char *),
-  WriteBlobByte(Image *,const unsigned char),
-  WriteBlobFloat(Image *,const float),
-  WriteBlobLong(Image *,const unsigned int),
-  WriteBlobShort(Image *,const unsigned short),
-  WriteBlobLSBLong(Image *,const unsigned int),
-  WriteBlobLSBShort(Image *,const unsigned short),
-  WriteBlobMSBLong(Image *,const unsigned int),
-  WriteBlobMSBLongLong(Image *,const MagickSizeType),
-  WriteBlobMSBShort(Image *,const unsigned short),
-  WriteBlobString(Image *,const char *);
-
-extern MagickExport unsigned char
-  *DetachBlob(BlobInfo *),
-  *MapBlob(int,const MapMode,const MagickOffsetType,const size_t);
-
-extern MagickExport unsigned int
-  ReadBlobLong(Image *),
-  ReadBlobLSBLong(Image *),
-  ReadBlobMSBLong(Image *);
-
-extern MagickExport unsigned short
-  ReadBlobShort(Image *),
-  ReadBlobLSBShort(Image *),
-  ReadBlobMSBShort(Image *);
-
-extern MagickExport void
-  AttachBlob(BlobInfo *,const void *,const size_t),
+extern MagickPrivate void
   GetBlobInfo(BlobInfo *),
-  MSBOrderLong(unsigned char *,const size_t),
-  MSBOrderShort(unsigned char *,const size_t);
+  SetBlobExempt(Image *,const MagickBooleanType);
 
 #if defined(__cplusplus) || defined(c_plusplus)
 }