
    8j                     R    d Z ddlmZmZ ddlmZ ddlmZ ddlmZ  G d de      Z	y)	u   Interfaz común para cualquier fuente de tweets.

Cualquier proveedor nuevo (twikit, API oficial, twitterapi.io...) solo tiene que
heredar de TweetProvider e implementar `fetch_user_tweets`. El resto de la app
no necesita saber de dónde vienen los datos.
    )ABCabstractmethod)datetime)List)Tweetc                   B    e Zd Zeddedededee   fd       Z	defdZ
y)	TweetProviderhandlesincelimitreturnc                     t         )uO   Devuelve los tweets de `handle` publicados a partir de `since` (máx. `limit`).)NotImplementedError)selfr
   r   r   s       agent/providers/base.pyfetch_user_tweetszTweetProvider.fetch_user_tweets   s
     "!    c                 .    | j                   j                  S )N)	__class____name__)r   s    r   namezTweetProvider.name   s    ~~&&&r   N)2   )r   
__module____qualname__r   strr   intr   r   r   r    r   r   r	   r	      sC    " "H "S "RVW\R] " "'c 'r   r	   N)
__doc__abcr   r   r   typingr   agent.modelsr   r	   r   r   r   <module>r"      s$    $   'C 'r   