§
    Â“jÐ  ã                   óX   — d dl Z d dlmZmZmZmZ d dlmZ  G d„ de j        ¦  «        ZdS )é    N)ÚListÚDictÚAnyÚBinaryIO)Údatetimec            
       ó\   — e Zd ZdZej        dededee	ee
f                  fd„¦   «         ZdS )ÚBaseBankStatementParserz=
    Abstract base class for all bank statement parsers.
    Úfile_contentÚfilenameÚreturnc                 ó   — dS )a|  
        Parse the given file content and return a list of transaction dictionaries.
        Expected dictionary keys:
        - transaction_date: datetime
        - transaction_reference: str (optional)
        - description: str
        - debit_amount_vnd: float (default 0)
        - credit_amount_vnd: float (default 0)
        - running_balance_vnd: float (optional)
        N© )Úselfr
   r   s      úIC:\Projects\DSCons\app\modules\banking\application\parsers\base_parser.pyÚparsezBaseBankStatementParser.parse
   s	   € ð 	ˆó    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚabcÚabstractmethodr   Ústrr   r   r   r   r   r   r   r	   r	      sd   € € € € € ðð ð 	Ôð (ð °cð ¸dÀ4ÈÈSÈÄ>Ô>Rð ð ð ñ Ôðð ð r   r	   )	r   Útypingr   r   r   r   r   ÚABCr	   r   r   r   ú<module>r      sz   ðØ 
€
€
€
Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø Ð Ð Ð Ð Ð ðð ð ð ð ˜cœgñ ô ð ð ð r   