
    8fu#                     X    d dl mZ d dlmZ  G d d      Z G d d      Z G d d      Zy	)
    )abstractmethod)Sequencec                       e Zd Z	 ededefd       Zededefd       Zededefd       Zededefd       Z	edede
fd       Zedd	ed
edefd       Zed	edefd       Zededefd       Zededefd       Zy)ManagerModInterfaceversionreturnc                      	 y N selfr   s     wC:\Program Files (x86)\Steam\steamapps\common\Skyrim Special Edition\MO2\plugins\installer_wizard\lib\wizard\manager.pycompareGameVersionz&ManagerModInterface.compareGameVersion   s    		 	    c                      	 y r
   r   r   s     r   compareSEVersionz$ManagerModInterface.compareSEVersion       
	 	r   c                      	 y r
   r   r   s     r   compareGEVersionz$ManagerModInterface.compareGEVersion)   r   r   c                      	 y r
   r   r   s     r   compareWBVersionz$ManagerModInterface.compareWBVersion8   r   r   	filepathsc                      	 y r
   r   )r   r   s     r   dataFileExistsz"ManagerModInterface.dataFileExistsG   r   r   filenamefallbackc                      	 y r
   r   )r   r   r   s      r   getPluginLoadOrderz&ManagerModInterface.getPluginLoadOrderV   r   r   c                      	 y r
   r   )r   r   s     r   getPluginStatusz#ManagerModInterface.getPluginStatuse   s    	 	r   pathc                      	 y r
   r   r   r!   s     r   getFilenamezManagerModInterface.getFilenamev   r   r   c                      	 y r
   r   r#   s     r   	getFolderzManagerModInterface.getFolder   r   r   N))__name__
__module____qualname__r   strintr   r   r   r   boolr   r   r    r$   r&   r   r   r   r   r      s@    # #                   3 # s            c c  r   r   c                       e Zd Z	 ddedededz  fdZedefd       Zedefd       Zededz  fd	       Zd
e	de
fdZdefdZy)SelectOptionNnamedescimagec                 .    || _         || _        || _        y r
   )_name_desc_image)r   r0   r1   r2   s       r   __init__zSelectOption.__init__   s    

r   r   c                     	 | j                   S r
   )r4   r   s    r   r0   zSelectOption.name       	 zzr   c                     	 | j                   S r
   )r5   r9   s    r   descriptionzSelectOption.description   r:   r   c                     	 | j                   S r
   )r6   r9   s    r   r2   zSelectOption.image   s    	 {{r   otherc                     t        |t              sy| j                  | j                  | j                  f|j                  |j                  |j                  fk(  S )NF)
isinstancer/   r0   r<   r2   )r   r>   s     r   __eq__zSelectOption.__eq__   sM    %.		4++TZZ8JJKK=
 
 	
r   c                 V    d| j                    d| j                   d| j                   dS )NzSelectOption(z, ))r0   r<   r2   r9   s    r   __repr__zSelectOption.__repr__   s,    tyykD,<,<+=R

|1MMr   r
   )r(   r)   r*   r+   r7   propertyr0   r<   r2   objectr-   rA   rD   r   r   r   r/   r/      s    S  C$J 
 c   S   sTz  
F 
t 
N# Nr   r/   c                       e Zd Z	 defdZdefdZdefdZdefdZ	e
ded	ee   d
edefd       Ze
g fded	ee   d
ee   dee   fd       Ze
dededz  dedz  dedz  fd       Zy)ManagerUserInterfacetextc                      	 y r
   r   )r   rI   s     r   warningzManagerUserInterface.warning   s    	 	r   excc                     	 |r
   r   )r   rL   s     r   errorzManagerUserInterface.error   s    	 	r   r   c                      	 yNTr   r9   s    r   cancelzManagerUserInterface.cancel   s    	 r   c                      	 yrP   r   r9   s    r   completezManagerUserInterface.complete   s    	 r   r<   optionsdefaultc                      	 y r
   r   r   r<   rT   rU   s       r   	selectOnezManagerUserInterface.selectOne   s    
	 	r   c                      	 y r
   r   rW   s       r   
selectManyzManagerUserInterface.selectMany  s    
	 	r   game_version
se_versionN
ge_versionwrye_bash_versionc                      	 y r
   r   )r   r[   r\   r]   r^   s        r   requiresVersionsz%ManagerUserInterface.requiresVersions  s    	 	r   )r(   r)   r*   r+   rK   	ExceptionrN   r-   rQ   rS   r   r   r/   rX   rZ   r`   r   r   r   rH   rH      s   	C 	
 
 $  )1,)?JV	   
 +-	 ,' ,'	
 
,	 &  $J $J	
 : r   rH   N)abcr   collections.abcr   r   r/   rH   r   r   r   <module>rd      s1     $M M`,N ,N^n nr   