§
    %•j  ã                   ó  — d dl mZmZmZmZmZ d dlmZ  ed¦  «        Z G d„ de¦  «        Z	 G d„ deee         ¦  «        Z
 ede	¬	¦  «        Z ed
e
¬	¦  «        Z G d„ deeef         ¦  «        Z G d„ deeef         ¦  «        ZdS )é    )ÚTypeVarÚGenericÚAnyÚ	AwaitableÚProtocol)Ú	BaseModelÚTResultc                   ó   — e Zd ZdZdS )ÚICommandu‹   
    Marker cho táº¥t cáº£ cÃ¡c Command.
    Command biá»ƒu diá»…n má»™t Ã½ Ä‘á»‹nh lÃ m thay Ä‘á»•i tráº¡ng thÃ¡i cá»§a há»‡ thá»‘ng.
    N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    ú4C:\Projects\DSCons\app\core\module_framework\cqrs.pyr   r      ó   € € € € € ðð ð 	€Dr   r   c                   ó   — e Zd ZdZdS )ÚIQueryu”   
    Marker cho táº¥t cáº£ cÃ¡c Query.
    Query chá»‰ tráº£ vá»� dá»¯ liá»‡u vÃ  KHÃ”NG Ä�Æ¯á»¢C PHÃ‰P thay Ä‘á»•i tráº¡ng thÃ¡i há»‡ thá»‘ng.
    Nr   r   r   r   r   r      r   r   r   ÚTCommand)ÚboundÚTQueryc                   ó"   — e Zd ZdZdedefd„ZdS )ÚICommandHandleruB   
    Giao diá»‡n chuáº©n cho táº¥t cáº£ cÃ¡c Command Handler.
    ÚcommandÚreturnc                 ó   — t           ‚©N©ÚNotImplementedError)Úselfr   s     r   ÚhandlezICommandHandler.handle   ó   € Ý!Ð!r   N)r   r   r   r   r   r	   r#   r   r   r   r   r      s@   € € € € € ðð ð"˜hð "¨7ð "ð "ð "ð "ð "ð "r   r   c                   ó"   — e Zd ZdZdedefd„ZdS )ÚIQueryHandleru@   
    Giao diá»‡n chuáº©n cho táº¥t cáº£ cÃ¡c Query Handler.
    Úqueryr   c                 ó   — t           ‚r   r    )r"   r'   s     r   r#   zIQueryHandler.handle#   r$   r   N)r   r   r   r   r   r	   r#   r   r   r   r&   r&      s@   € € € € € ðð ð"˜Fð " wð "ð "ð "ð "ð "ð "r   r&   N)Útypingr   r   r   r   r   Úpydanticr   r	   r   r   r   r   r   r&   r   r   r   ú<module>r+      sH  ðØ =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ø Ð Ð Ð Ð Ð ð ˆ'�)Ñ
Ô
€ð	ð 	ð 	ð 	ð 	ˆyñ 	ô 	ð 	ð	ð 	ð 	ð 	ð 	ˆY˜ Ô(ñ 	ô 	ð 	ð ˆ7�: XÐ.Ñ.Ô.€Ø	ˆ� Ð	(Ñ	(Ô	(€ð"ð "ð "ð "ð "�g˜h¨Ð/Ô0ñ "ô "ð "ð"ð "ð "ð "ð "�G˜F G˜OÔ,ñ "ô "ð "ð "ð "r   