
    |~gs                         d dl mZmZmZmZ d dlZ ej                  dd       d dlmZ erd dl	m
Z
 d dlmZ  G d d	      Zy)
    )ListTupleUnionTYPE_CHECKINGNGtkz3.0)r   )Literal)BluemanServicesc                       e Zd ZU ee   ed<   g Zed    ed<   eeef   ed<   ddZddede	ddfd	Z
dee   fd
ZddZddZddZdee	df   fdZddZddZddZy)ServicePlugin_options	instances__plugin_info__c                 p    t         j                  j                  |        g | _        || _        |  d| _        y NF)r   r   appendr   parent_ServicePlugin__is_exposed)selfr   s     ?/usr/lib/python3/dist-packages/blueman/plugins/ServicePlugin.py__init__zServicePlugin.__init__   s/    &&t,!    	option_idstatereturnNc                     || j                   vr| j                   j                  |       n|r| j                   j                  |       | j                  j	                          y N)r   r   remover   option_changed)r   r   r   s      r   option_changed_notifyz#ServicePlugin.option_changed_notify   sE    DMM)MM  +$$Y/""$r   c                     | j                   S r   r   r   s    r   get_optionszServicePlugin.get_options&   s    }}r   c                     g | _         y r   r!   r"   s    r   clear_optionszServicePlugin.clear_options)   s	    r   c                      y r    r"   s    r   on_loadzServicePlugin.on_load,       r   c                      y r   r'   r"   s    r   	on_unloadzServicePlugin.on_unload/   r)   r   zLiteral[-1]c                      yr   r'   r"   s    r   on_query_apply_statez"ServicePlugin.on_query_apply_state3   s    r   c                      y r   r'   r"   s    r   on_applyzServicePlugin.on_apply6   r)   r   c                      y r   r'   r"   s    r   on_enterzServicePlugin.on_enter:   r)   r   c                      y r   r'   r"   s    r   on_leavezServicePlugin.on_leave>   r)   r   )r   r	   )T)r   N)__name__
__module____qualname__r   str__annotations__r   r   r   boolr   r#   r%   r(   r+   r   r-   r/   r1   r3   r'   r   r   r   r      s    3i')ItO$)38_$"%s %4 %4 %T#Y eD-,?&@ r   r   )typingr   r   r   r   girequire_versiongi.repositoryr   typing_extensionsr   blueman.main.Servicesr	   r   r'   r   r   <module>r@      s8    4 4 
   5%   )51 1r   