move the prototype for vApplicationIdleHook to task.h. (#600)

Co-authored-by: pluess <pluess@faulhorn.mw.iap.unibe.ch>
Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
diff --git a/include/task.h b/include/task.h
index a354829..b01551d 100644
--- a/include/task.h
+++ b/include/task.h
@@ -1649,6 +1649,24 @@
 
 #endif
 
+#if ( configUSE_IDLE_HOOK == 1 )
+
+/**
+ * task.h
+ * @code{c}
+ * void vApplicationIdleHook( void );
+ * @endcode
+ *
+ * The application idle hook is called by the idle task.
+ * This allows the application designer to add background functionality without
+ * the overhead of a separate task.
+ * NOTE: vApplicationIdleHook() MUST NOT, UNDER ANY CIRCUMSTANCES, CALL A FUNCTION THAT MIGHT BLOCK.
+ */
+    void vApplicationIdleHook( void );
+
+#endif
+
+
 #if  ( configUSE_TICK_HOOK > 0 )
 
 /**
diff --git a/tasks.c b/tasks.c
index c9cf459..d4d8fb0 100644
--- a/tasks.c
+++ b/tasks.c
@@ -3477,13 +3477,7 @@
 
         #if ( configUSE_IDLE_HOOK == 1 )
         {
-            extern void vApplicationIdleHook( void );
-
-            /* Call the user defined function from within the idle task.  This
-             * allows the application designer to add background functionality
-             * without the overhead of a separate task.
-             * NOTE: vApplicationIdleHook() MUST NOT, UNDER ANY CIRCUMSTANCES,
-             * CALL A FUNCTION THAT MIGHT BLOCK. */
+            /* Call the user defined function from within the idle task. */
             vApplicationIdleHook();
         }
         #endif /* configUSE_IDLE_HOOK */