
    g`                        % S r SSKJr  SSKrSSKrSSKJr  SSKJr  \	\
-  \R                  \	   -  \R                  \
   -  rS\S'   \\-  rS\S'   SS	 jrS
S.       SS jjrS
S.       SS jjrg)zFile system functions.    )annotationsN)	TypeAlias)HomeAssistantr   StrOrBytesPathFileDescriptorOrPathc                r   #    U R                  [        R                  R                  U5      I Sh  vN $  N7f)zTest whether a path exists.N)async_add_executor_jobospathexists)hassr   s     3/config/custom_components/hacs/utils/file_system.pyasync_existsr      s&     ,,RWW^^TBBBBs   .757F)
missing_okc                  #     U R                  [        R                  U5      I Sh  vN $  N! [         a    U(       a   ge f = f7f)zRemove a path.N)r	   r
   removeFileNotFoundErrorr   r   r   s      r   async_remover      s>     00DAAAA 0   A#. ,. A. AAAAc                  #     U R                  [        R                  U5      I Sh  vN $  N! [         a    U(       a   ge f = f7f)zRemove a directory.N)r	   shutilrmtreer   r   s      r   async_remove_directoryr   !   s>     00EEEE r   )r   r   r   r   returnbool)r   r   r   r   r   r   r   None)__doc__
__future__r   r
   r   typingr   homeassistant.corer   strbytesPathLiker   __annotations__intr   r   r   r        r   <module>r)      s     " 	   ,  %K"++c*::R[[=OO	 O"%"6 i 6C FK	
	-	>B			 FK	
	-	>B			r(   