+
    "i                    `    R t ^ RIHt ^ RIHt ^ RIHt ^ RIHtH	t	 ^ RI
Ht  ! R R]4      tR# )	z&Coordinator to trigger entity updates.)annotations)Callable)Any)CALLBACK_TYPEcallback)!BaseDataUpdateCoordinatorProtocolc                  V    ] tR t^tRtR R lt]R
R R ll4       t]R R l4       tR	t	R# )HacsUpdateCoordinatorz$Dispatch updates to update entities.c                   V ^8  d   QhRR/#    returnNone )formats   "-/config/custom_components/hacs/coordinator.py__annotate__"HacsUpdateCoordinator.__annotate__   s     W W$ W    c                    / V n         R# )zInitialize.N
_listeners)selfs   &r   __init__HacsUpdateCoordinator.__init__   s	    TVr   Nc               $    V ^8  d   QhRRRRRR/# )r   update_callbackr   contextr   r   zCallable[[], None]r   )r   s   "r   r   r      s$      ,7:	r   c                P   a a \         R VV 3R ll4       oW3S P                  S&   S# )zListen for data updates.c                   V ^8  d   QhRR/# r   r   )r   s   "r   r   >HacsUpdateCoordinator.async_add_listener.<locals>.__annotate__   s     	1 	1 	1r   c                 >   < SP                   P                  S 4       R# )zRemove update listener.N)r   pop)remove_listenerr   s   r   r#   AHacsUpdateCoordinator.async_add_listener.<locals>.remove_listener   s     OO0r   )r   r   )r   r   r   r#   s   f&&@r   async_add_listener(HacsUpdateCoordinator.async_add_listener   s5     
	1 	1 
	1 -<+E(r   c                   V ^8  d   QhRR/# r   r   )r   s   "r   r   r   #   s       r   c                l    \        V P                  P                  4       4       F  w  rV! 4        K  	  R# )z Update all registered listeners.N)listr   values)r   r   _s   &  r   async_update_listeners,HacsUpdateCoordinator.async_update_listeners"   s*     #'t'='='?"@O #Ar   r   )N)
__name__
__module____qualname____firstlineno____doc__r   r   r%   r,   __static_attributes__r   r   r   r	   r	      s3    .W    r   r	   N)r2   
__future__r   collections.abcr   typingr   homeassistant.corer   r   (homeassistant.helpers.update_coordinatorr   r	   r   r   r   <module>r9      s$    , " $  6 V= r   