
    wg3                     V    d dl mZ d dlmZmZ d dlmZmZmZm	Z	  G d de          Z
dS )    )Iterable)AnyProtocol)OfferInterfaceProductCategoryInterfaceProductInterfaceProductTypeInterfacec                   v   e Zd Zdededee         fdZdedeee	f         fdZ
dedee         fdZdedee         fdZdee         fd	Zd
edee         fdZdedefdZdededefdZddedz  dedz  dedz  fdZddededz  dee         fdZdedee         fdZd
edefdZdedee         fdZdS )ProductRepositoryInterfaceuser_idorganization_idreturnc                     t           NNotImplementedError)selfr   r   s      //var/www/html/cms/domain/products/repository.pyget_enabled_products_to_createz9ProductRepositoryInterface.get_enabled_products_to_create       !!    c                     t           r   r   r   r   s     r   get_enabled_organizationsz4ProductRepositoryInterface.get_enabled_organizations   r   r   block_idc                     t           r   r   r   r   s     r   get_product_types_for_catalogz8ProductRepositoryInterface.get_product_types_for_catalog   r   r   c                     t           r   r   r   s     r   (get_proudct_types_for_additional_catalogzCProductRepositoryInterface.get_proudct_types_for_additional_catalog   r   r   c                     t           r   r   )r   s    r   
get_offersz%ProductRepositoryInterface.get_offers   r   r   
product_idc                     t           r   r   r   r#   s     r   get_product_offersz-ProductRepositoryInterface.get_product_offers   r   r   slugc                     t           r   r   )r   r'   s     r   get_product_type_namez0ProductRepositoryInterface.get_product_type_name   r   r   product_type_slugproduct_indexc                     t           r   r   )r   r*   r+   s      r   get_product_name_from_catalogz8ProductRepositoryInterface.get_product_name_from_catalog"   r   r   Niduser_product_idc                     t           r   r   )r   r.   r/   s      r   getzProductRepositoryInterface.get%   r   r   products_slugprivatec                     t           r   r   )r   r2   r3   s      r   get_catalog_offersz-ProductRepositoryInterface.get_catalog_offers(   r   r   c                     t           r   r   r   s     r   get_product_categoriesz1ProductRepositoryInterface.get_product_categories+   r   r   c                     t           r   r   r%   s     r   get_product_for_popupz0ProductRepositoryInterface.get_product_for_popup.   r   r   product_type_idc                     t           r   r   )r   r:   s     r   get_published_offersz/ProductRepositoryInterface.get_published_offers1   r   r   )NNr   )__name__
__module____qualname__intr   r   r   dictstrr   r   r	   r   r    r   r"   r&   r)   r-   r1   boolr5   r   r7   r9   r<    r   r   r   r      s:       "c "C "T\]mTn " " " "" "c3h " " " ""c "hG[>\ " " " "" "RfIg " " " ""H^4 " " " ""S "Xn5M " " " ""# "# " " " ""s "SV "[^ " " " "" "cDj "#* "P`cgPg " " " "" " "dTk "U]^lUm " " " ""c "h?W6X " " " "" "8H " " " ""C "H^<T " " " " " "r   r   N)collections.abcr   typingr   r   domain.products.productr   r   r   r	   r   rD   r   r   <module>rH      s    $ $ $ $ $ $                           &" &" &" &" &" &" &" &" &" &"r   