* The HookObserver to attach. *

* @return void */ public function attach(HookObserverInterface $observer); /** * Detach an HookObserver * @link http://php.net/manual/en/splsubject.detach.php * @param \HookObserverInterface| $observer

* The HookObserver to detach. *

* @return void */ public function detach(HookObserverInterface $observer); /** * Return the singleton instance of Hook event. * @return static */ public static function create(); /** * Return an array containing all data needed by the hook observer to update * @return array */ public function getEventData(); /** * Set an array with data needed by hooks * @param array $data * @return $this */ public function setEventData(array $data); /** * Return the event name refer to where hook is used * @return string */ public function getEventName(); /** * Clear all hookObservers without detach them * @return mixed */ public function clearAttachments(); /** * Detach all hook observers * @return $this */ public function detachAll(); }