+
    i                    z    ^ RI Ht ^ RIHt ^RIHtHt ^RIHt ]'       d   ^RI	H
t
 ^RIHtHt  ! R R4      tR	# )
    )annotations)TYPE_CHECKING)
EventModelForecastPercentileHistory)DataFrameList)KalshiClient)MarketSeriesc                      ] tR t^tRtR R lt]R R l4       t]R R l4       t]R R	 l4       t	]R
 R l4       t
]R R l4       tR R ltR R ltR R R lltR R ltR R ltR R ltR R ltR R ltRtR# )!Eventa  Represents a Kalshi Event.

An event is a container for related markets (e.g., "Will X happen?" with
multiple outcome markets).

Key fields are exposed as typed properties for IDE support.
All other EventModel fields are accessible via attribute delegation.
c               $    V ^8  d   QhRRRRRR/# )   clientr   datar   returnNone )formats   "V/home/wkmabra/.openclaw/workspace/venv/lib/python3.14/site-packages/pykalshi/events.py__annotate__Event.__annotate__   s!      | : $     c                	    Wn         W n        R # N_clientr   )selfr   r   s   &&&r   __init__Event.__init__   s    	r   c                   V ^8  d   QhRR/# r   r   strr   )r   s   "r   r   r      s     & &c &r   c                	.    V P                   P                  # r   )r   event_tickerr   s   &r   r$   Event.event_ticker   s    yy%%%r   c                   V ^8  d   QhRR/# r!   r   )r   s   "r   r   r       s     ' 's 'r   c                	.    V P                   P                  # r   )r   series_tickerr%   s   &r   r)   Event.series_ticker   s    yy&&&r   c                   V ^8  d   QhRR/# r   r   z
str | Noner   )r   s   "r   r   r   $   s      z r   c                	.    V P                   P                  # r   )r   titler%   s   &r   r.   Event.title#   s    yyr   c                   V ^8  d   QhRR/# r,   r   )r   s   "r   r   r   (   s     " "* "r   c                	.    V P                   P                  # r   )r   categoryr%   s   &r   r2   Event.category'   s    yy!!!r   c                   V ^8  d   QhRR/# )r   r   boolr   )r   s   "r   r   r   ,   s     , ,D ,r   c                	.    V P                   P                  # r   )r   mutually_exclusiver%   s   &r   r7   Event.mutually_exclusive+   s    yy+++r   c                   V ^8  d   QhRR/# )r   r   zDataFrameList[Market]r   )r   s   "r   r   r   1   s     M M2 Mr   c                b    V P                   P                  V P                  P                  R7      # )zGet all markets for this event.)r$   )r   get_marketsr   r$   r%   s   &r   r;   Event.get_markets1   s$    ||''TYY5K5K'LLr   c                   V ^8  d   QhRR/# )r   r   r
   r   )r   s   "r   r   r   5   s     ; ;F ;r   c                L    V P                   P                  V P                  4      # )z%Get the parent Series for this event.)r   
get_seriesr)   r%   s   &r   r?   Event.get_series5   s    ||&&t'9'9::r   Nc                    V ^8  d   QhRRRR/# )r   percentileszlist[int] | Noner   r   r   )r   s   "r   r   r   9   s"     B B%B 
#Br   c                    RV P                    R2pV'       d#   VRRP                  R V 4       4       2,          pV P                  P                  V4      p\        P
                  ! V4      # )a  Get historical forecast data at various percentiles.

Args:
    percentiles: List of percentiles to fetch (e.g., [10, 25, 50, 75, 90]).
                If None, returns all available percentiles.

Returns:
    ForecastPercentileHistory with percentile -> history mapping.
z/events/z/forecast/percentile_historyz?percentiles=,c              3  8   "   T F  p\        V4      x  K  	  R # 5ir   )r"   ).0ps   & r   	<genexpr>8Event.get_forecast_percentile_history.<locals>.<genexpr>H   s     0MAQs   )r$   joinr   getr   model_validate)r   rB   endpointresponses   &&  r   get_forecast_percentile_history%Event.get_forecast_percentile_history9   sc     d//00LM-0M0M(M'NOOH<<##H-(77AAr   c                   V ^8  d   QhRR/# )r   namer"   r   )r   s   "r   r   r   L   s     ( ( (r   c                	.    \        V P                  V4      # r   )getattrr   )r   rR   s   &&r   __getattr__Event.__getattr__L   s    tyy$''r   c                    V ^8  d   QhRRRR/# )r   otherobjectr   r5   r   )r   s   "r   r   r   O   s     A AF At Ar   c                	    \        V\        4      '       g   \        # V P                  P                  VP                  P                  8H  # r   )
isinstancer   NotImplementedr   r$   )r   rX   s   &&r   __eq__Event.__eq__O   s4    %''!!yy%%)@)@@@r   c                   V ^8  d   QhRR/# )r   r   intr   )r   s   "r   r   r   T   s     , ,# ,r   c                	@    \        V P                  P                  4      # r   )hashr   r$   r%   s   &r   __hash__Event.__hash__T   s    DII**++r   c                   V ^8  d   QhRR/# r!   r   )r   s   "r   r   r   W   s     ' '# 'r   c                	    R V P                    2.pV P                  '       d   VP                  V P                  4       V P                  '       d   VP                  R4       RP	                  V4      R,           # )z<Event exclz | >)r$   r.   appendr7   rJ   )r   partss   & r   __repr__Event.__repr__W   s]    4,,-./:::LL$"""LL zz% 3&&r   c                   V ^8  d   QhRR/# r!   r   )r   s   "r   r   r   _   s        S  r   c                	    ^RI Hp V! V 4      # )   )
event_html)_reprrp   )r   rp   s   & r   _repr_html_Event._repr_html__   s    %$r   r   r   )__name__
__module____qualname____firstlineno____doc__r   propertyr$   r)   r.   r2   r7   r;   r?   rO   rU   r]   rc   rk   rr   __static_attributes__r   r   r   r   r      s     & & ' '   " " , ,
M;B&(A
,'   r   r   N)
__future__r   typingr   modelsr   r   	dataframer   r   r   marketsr	   r
   r   r   r   r   <module>r      s&    "   9 $$'V  V r   