
    Lpj                       % S r SSKJr  SSKJr  SSKJrJrJr  SSK	J
r
  SSKJrJr  \(       a  SSKJr  \S   rS	\S
'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \S   rS	\S'   \\\\4   rS	\S'   \\\\4   rS	\S '   \\\4   rS	\S!'   \\\4   rS	\S"'   \\\\\4   rS	\S#'   \\\4   r S	\S$'   \\RB                     r"S	\S%'   \\RF                     r$S	\S&'   \\RJ                     r&S	\S''   \\RN                     r(S	\S('   \\RR                     r*S	\S)'   \\RV                     r,S	\S*'   \\RZ                     r.S	\S+'   \\R^                     r0S	\S,'   \\Rb                     r2S	\S-'   \\Rf                     r4S	\S.'   \\Rj                     r6S	\S/'   \\"\&\$4   r7S	\S0'   \\(\*\,4   r8S	\S1'   \\7\04   r9S	\S2'   \\9\.4   r:S	\S3'   \\8\2\4\64   r;S	\S4'   \\;\.4   r<S	\S5'   \\"\.\04   r=S	\S6'   \\\"4   r>S	\S7'   \\\&4   r?S	\S8'   \\\$4   r@S	\S9'   \\\(4   rAS	\S:'   \\\*4   rBS	\S;'   \\\,4   rCS	\S<'   \\\.4   rDS	\S='   \\\04   rES	\S>'   \\\24   rFS	\S?'   \\\44   rGS	\S@'   \\\64   rHS	\SA'   \\\74   rIS	\SB'   \\\84   rJS	\SC'   \\I\E4   rKS	\SD'   \\J\F\G\H4   rLS	\SE'   \\K\D4   rMS	\SF'    \\L\D4   rNS	\SG'    \\\ 4   rOS	\SH'   \\M\N4   rPS	\SI'    \" SJ\Q5      rR \
" SK\P\R-  SL9rS\S\-  rTS	\SM'    \T\P   rUS	\SN'   \T\M   rVS	\SO'   \T\N   rWS	\SP'   \\R                     rYS	\SQ'   gR)Sa%  Type aliases describing the backends Narwhals dispatches to.

Built-in backends are enumerated as `Literal` unions (`Backend`, `EagerAllowed`, `LazyAllowed`, ...).
Plugin backends are discovered at runtime and cannot join those unions, so `PluginName` uses a
[`NewType`](https://typing.python.org/en/latest/spec/aliases.html#newtype) instead:
type checkers treat it as a distinct subtype of `str`, therefore:

- an arbitrary `str` is still rejected where a `backend` is expected, and
- a value explicitly wrapped as `PluginName("...")` is accepted.
    )annotations)
ModuleType)TYPE_CHECKINGLiteralNewType)TypeVar)Implementation
_NoDefault)	TypeAliaspolarsr   _Polarspyarrow_Arrowdask_Daskduckdb_DuckDBpandas_Pandasmodin_Modincudf_CuDFpyspark_PySparksqlframe	_SQLFramezpyspark[connect]_PySparkConnectibis_Ibis_PandasLike
_SparkLike
_EagerOnly_EagerAllowed	_LazyOnly_LazyAllowed_PandasImpl
_ModinImpl	_CuDFImpl_PySparkImpl_SQLFrameImpl_PySparkConnectImpl_PolarsImpl
_ArrowImpl	_DaskImpl_DuckDBImpl	_IbisImpl_PandasLikeImpl_SparkLikeImpl_EagerOnlyImpl_EagerAllowedImpl_LazyOnlyImpl_LazyAllowedImpl_LazyFrameCollectImplPandasCuDFModinPySparkSQLFramePySparkConnectPolarsArrowDaskDuckDBIbis
PandasLike	SparkLike	EagerOnlyLazyOnlyEagerAllowedLazyAllowedBackendNameBackend
PluginNameBackendT)boundIntoBackendIntoBackendAnyIntoBackendEagerIntoBackendLazy	NoDefaultN)Z__doc__
__future__r   typesr   typingr   r   r   narwhals._typing_compatr   narwhals._utilsr	   r
   r   r   __annotations__r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   PANDASr'   MODINr(   CUDFr)   PYSPARKr*   SQLFRAMEr+   PYSPARK_CONNECTr,   POLARSr-   PYARROWr.   DASKr/   DUCKDBr0   IBISr1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   strrL   rM   rO   rP   rQ   rR   
no_defaultrS        L/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/narwhals/_typing.py<module>rk      s  	 #  2 2 + 6  X& &I&	 &6?y "X& &X& &G$	 $6?y "i() (z*	9 *$%78 86?y " %!78Y 8)_ DE
I EV 34
I 4"7J#67y 7z5'5@A	9 A!'9"45i 5 !!6!67Y 7 4 45
I 5~223	9 3!."8"89i 9">#:#:;y ;!()G)G!H Y H !6!67Y 7 6 67
I 7~223	9 3 !6!67Y 7~223	9 3$[)Z%GH H#L-AT$TU	 U#OZ$?@	 @&~{'BC 9 C">9k9#TUy U%m[&@A ) A
 $+;Z+O#P y P G[01	 1%*+i +6:-.y .X|34 4i67) 7#O5H$HI	 IG[01	 16:-.y .%*+i +G[01	 1%*+i +_ <=
I =z>9:	9 :z501	9 1ivt;<) <!)V"34i 4 !6!12Y 2 !!<=Y =\;67 7 \3'
 :Wz%9:!J.Y .8t (0	 0),7 ) 7(5 5z445	9 5ri   