diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,6 @@
+# 0.2.4
+* Now exporting KdMap.Static.TreeNode to facilitate advanced usage of the library.
+
 # 0.2.3
 * For internal priority queue implementation, use the heap library instead of pqueue library in order to build on ghc 7.10.
 
diff --git a/kdt.cabal b/kdt.cabal
--- a/kdt.cabal
+++ b/kdt.cabal
@@ -2,7 +2,7 @@
 -- see http://haskell.org/cabal/users-guide/
 
 name:                kdt
-version:             0.2.3
+version:             0.2.4
 synopsis:            Fast and flexible k-d trees for various types of point queries.
 description:         This package includes static and dynamic versions of k-d trees,
                      as well as \"Map\" variants that store data at each point in the
@@ -34,7 +34,7 @@
   -- other-modules:
   other-extensions:    DeriveGeneric, TemplateHaskell
   ghc-options:         -Wall -O3
-  ghc-prof-options:    -Wall -O3 -fprof-auto
+  -- ghc-prof-options:    -Wall -O3 -fprof-auto
   build-depends:       base >=4.6 && <5,
                        deepseq >=1.3,
                        heap >=1.0.0,
@@ -74,7 +74,7 @@
   other-modules:        Data.Point2d
   hs-source-dirs:       app-src
   ghc-options:          -Wall -O3
-  ghc-prof-options:     -Wall -O3 -fprof-auto
+  -- ghc-prof-options:     -Wall -O3 -fprof-auto
                         "-with-rtsopts=-p"
   build-depends:        base >=4.6 && <5,
                         kdt -any,
diff --git a/lib-src/Data/KdMap/Static.hs b/lib-src/Data/KdMap/Static.hs
--- a/lib-src/Data/KdMap/Static.hs
+++ b/lib-src/Data/KdMap/Static.hs
@@ -34,6 +34,8 @@
        , foldrWithKey
          -- ** Utilities
        , defaultSqrDist
+         -- ** Advanced
+       , TreeNode(..)
          -- ** Internal (for testing)
        , isValid
        ) where
@@ -85,6 +87,10 @@
 -- [Point3d {x = 0.0, y = 0.0, z = 0.0}, \"First\"]
 -- @
 
+-- | A node of a /k/-d tree structure that stores a point of type @p@
+-- with axis values of type @a@. Additionally, each point is
+-- associated with a value of type @v@. Note: users typically will not
+-- need to use this type, but we export it just in case.
 data TreeNode a p v = TreeNode { _treeLeft :: TreeNode a p v
                                , _treePoint :: (p, v)
                                , _axisValue :: a
