diff --git a/include/asterisk/stasis_internal.h b/include/asterisk/stasis_internal.h
index 01e5812422d8e2acb56d62ef8992277f14474148..bb7b6cc0a2afbeafeb097a22814f6417ab802ae1 100644
--- a/include/asterisk/stasis_internal.h
+++ b/include/asterisk/stasis_internal.h
@@ -16,9 +16,6 @@
  * at the top of the source tree.
  */
 
-#ifndef STASIS_INTERNAL_H_
-#define STASIS_INTERNAL_H_
-
 /*! \file
  *
  * \brief Internal Stasis APIs.
@@ -33,9 +30,10 @@
  * \author Matt Jordan <mjordan@digium.com>
  */
 
-struct stasis_topic;
-struct stasis_subscription;
-struct stasis_message;
+#include "asterisk/stasis.h"
+
+#ifndef STASIS_INTERNAL_H_
+#define STASIS_INTERNAL_H_
 
 /*!
  * \brief Create a subscription.
@@ -62,7 +60,7 @@ struct stasis_message;
  */
 struct stasis_subscription *internal_stasis_subscribe(
 	struct stasis_topic *topic,
-	void (*stasis_subscription_cb)(void *data, struct stasis_subscription *sub, struct stasis_message *message),
+	stasis_subscription_cb callback,
 	void *data,
 	int needs_mailbox);