o
    hh6                     @  sZ  U d dl mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d d	l
mZ d d
l
mZ d dl
mZ erd dlZd dlmZ d dlmZ d dlmZ d dlmZ d dlZd dlmZ d dlmZ d dlmZ d dlmZ d dlm Z  d dl!m"Z" G dd deZ#G dd de#eZ$G dd deee eZ%G dd deZ&G dd  d eZ'e	d!e(d"f Z)d#e*d$< 	 e	d% Z+d#e*d&< 	 dZ,d#e*d'< e	d( Z-d#e*d)< 	 e	d* Z.d#e*d+< 	 dZ/d#e*d,< 	 ed-d)d.Z0	 ed/d&d.Z1	 ed0d'd.Z2ed1d+d.Z3	 ed2d3d.Z4	 ed4d5d.Z5ed6d"d.Z6ed7d,d.Z7	 d8Z8d#e*d9< ed: Z9d#e*d;< ed< Z:d#e*d=< ed> Z;d#e*d?< 	 ed@ Z<d#e*dA< 	 edB Z=d#e*dC< 	 edD Z>d#e*dE< 	 edF Z?d#e*dG< 	 edH Z@d#e*dI< 	 edJ ZAd#e*dK< 	 edL ZBd#e*dM< 	 edN ZCd#e*dO< 	 edP ZDd#e*dQ< 	 edRdSd.ZEdTZFd#e*dU< dVZGd#e*dW< dXZHd#e*dY< dZZId#e*d[< d\ZJd#e*d]< d^ZKd#e*d_< 	 d`ZLd#e*da< dbZMd#e*dc< ddZNd#e*de< dfZOd#e*dg< edhZPdiZQd#e*dj< dkZRd#e*dl< eSZTd#e*dm< dnZUd#e*do< 	 dpZVd#e*dq< drZWd#e*ds< e(ZXd#e*dt< duZYd#e*dv< dwZZd#e*dx< dyZ[d#e*dz< d{Z\d#e*d|< d}Z]d#e*d~< G dd deZ^g dZ_dS )    )annotations)TYPE_CHECKING)Any)Literal)Protocol)Sequence)TypeVar)Union)CompliantDataFrame)CompliantLazyFrame)CompliantSeriesN)Decimal)
ModuleType)Iterable)Sized)	TypeAlias)dtypes)	DataFrame)	LazyFrame)Expr)Seriesc                   @  s$   e Zd Zed
ddZdddZd	S )NativeFramereturnr   c                 C     d S N selfr   r   C/var/www/vscode/kcb/lib/python3.10/site-packages/narwhals/typing.pycolumns#      zNativeFrame.columnsargskwargsc                 O  r   r   r   r   r!   r"   r   r   r   join&       zNativeFrame.joinN)r   r   r!   r   r"   r   r   r   )__name__
__module____qualname__propertyr   r$   r   r   r   r   r   "   s    r   c                   @     e Zd ZdddZdS )	NativeLazyFramer!   r   r"   r   c                 O  r   r   r   r#   r   r   r   explain)   r%   zNativeLazyFrame.explainNr&   )r'   r(   r)   r-   r   r   r   r   r,   (       r,   c                   @  r+   )	NativeSeriesr!   r   r"   r   c                 O  r   r   r   r#   r   r   r   filter,   r%   zNativeSeries.filterNr&   )r'   r(   r)   r0   r   r   r   r   r/   +   r.   r/   c                   @  r+   )	DataFrameLiker!   r   r"   r   c                 O  r   r   r   r#   r   r   r   __dataframe__/   r%   zDataFrameLike.__dataframe__Nr&   )r'   r(   r)   r2   r   r   r   r   r1   .   r.   r1   c                   @  s   e Zd ZdddZdS )SupportsNativeNamespacer   r   c                 C  r   r   r   r   r   r   r   __native_namespace__3   r%   z,SupportsNativeNamespace.__native_namespace__N)r   r   )r'   r(   r)   r4   r   r   r   r   r3   2   r.   r3   r   zSeries[Any]r   IntoExpr)r   r1   IntoDataFrameIntoLazyFrame)r6   r7   	IntoFrame)DataFrame[Any]LazyFrame[Any]Frame
IntoSeries
IntoFrameT)boundIntoDataFrameTIntoLazyFrameTFrameT
DataFrameTr9   
LazyFrameTr:   SeriesTIntoSeriesTz+Literal["pyarrow", "numpy_nullable"] | NoneDTypeBackend)
bkbmbgbtbbytes	kilobytes	megabytes	gigabytes	terabytesSizeUnit)nsusmssTimeUnit)backwardforwardnearestAsofJoinStrategy)leftrightnonebothClosedInterval)
horizontalverticaldiagonalConcatMethod)rX   rW   FillNullStrategy)innerr[   fullcrosssemiantiJoinStrategy)minmaxfirstlastsummeanmedianlenPivotAgg)averagerk   rl   denseordinal
RankMethod)rY   higherlowermidpointlinearRollingInterpolationMethod)anyrm   rn   r]   UniqueKeepStrategy)r}   r]   LazyUniqueKeepStrategy_ShapeTztuple[int, ...]znp.ndarray[_ShapeT, Any]_NDArrayz_NDArray[tuple[int]]_1DArrayz_NDArray[tuple[int, int]]_2DArrayz_NDArray[tuple[int, ...]]
_AnyDArrayznp.generic[Any]_NumpyScalarz_1DArray | _NumpyScalarInto1DArrayzint | float | DecimalNumericLiteralz.dt.date | dt.datetime | dt.time | dt.timedeltaTemporalLiteralz<NumericLiteral | TemporalLiteral | str | bool | bytes | NoneNonNestedLiteralz.NonNestedLiteral | list[Any] | tuple[Any, ...]PythonLiteral_TzAslice[_T, Any, Any] | slice[Any, _T, Any] | slice[None, None, _T]_Slicezslice[None, None, None]
_SliceNoneSingleIndexSelectorz_Slice[int] | _SliceNone_SliceIndexzSequence[int] | _T | _1DArraySizedMultiIndexSelectorz)_SliceIndex | SizedMultiIndexSelector[_T]MultiIndexSelectorSingleNameSelectorz_Slice[str] | _SliceNone
_SliceNamezSequence[str] | _T | _1DArraySizedMultiNameSelectorz'_SliceName | SizedMultiNameSelector[_T]MultiNameSelectorz(SingleIndexSelector | SingleNameSelectorSingleColSelectorz.MultiIndexSelector[_T] | MultiNameSelector[_T]MultiColSelectorc                   @  s  e Zd ZedWddZedXddZedYd	d
ZedZddZed[ddZed\ddZ	ed]ddZ
ed^ddZed_ddZed`ddZedad!d"Zedbd$d%Zedcd'd(Zeddd*d+Zeded-d.Zedfd0d1Zedgd3d4Zedhd6d7Zedid9d:Zedjd<d=Zedkd?d@ZedldBdCZedmdEdFZedndHdIZedodKdLZedpdNdOZedqdQdRZedrdTdUZdVS )sDTypesr   type[dtypes.Decimal]c                 C  r   r   r   r   r   r   r   r   O  r    zDTypes.Decimaltype[dtypes.Int128]c                 C  r   r   r   r   r   r   r   Int128Q  r    zDTypes.Int128type[dtypes.Int64]c                 C  r   r   r   r   r   r   r   Int64S  r    zDTypes.Int64type[dtypes.Int32]c                 C  r   r   r   r   r   r   r   Int32U  r    zDTypes.Int32type[dtypes.Int16]c                 C  r   r   r   r   r   r   r   Int16W  r    zDTypes.Int16type[dtypes.Int8]c                 C  r   r   r   r   r   r   r   Int8Y  r    zDTypes.Int8type[dtypes.UInt128]c                 C  r   r   r   r   r   r   r   UInt128[  r    zDTypes.UInt128type[dtypes.UInt64]c                 C  r   r   r   r   r   r   r   UInt64]  r    zDTypes.UInt64type[dtypes.UInt32]c                 C  r   r   r   r   r   r   r   UInt32_  r    zDTypes.UInt32type[dtypes.UInt16]c                 C  r   r   r   r   r   r   r   UInt16a  r    zDTypes.UInt16type[dtypes.UInt8]c                 C  r   r   r   r   r   r   r   UInt8c  r    zDTypes.UInt8type[dtypes.Float64]c                 C  r   r   r   r   r   r   r   Float64e  r    zDTypes.Float64type[dtypes.Float32]c                 C  r   r   r   r   r   r   r   Float32g  r    zDTypes.Float32type[dtypes.String]c                 C  r   r   r   r   r   r   r   Stringi  r    zDTypes.Stringtype[dtypes.Boolean]c                 C  r   r   r   r   r   r   r   Booleank  r    zDTypes.Booleantype[dtypes.Object]c                 C  r   r   r   r   r   r   r   Objectm  r    zDTypes.Objecttype[dtypes.Categorical]c                 C  r   r   r   r   r   r   r   Categoricalo  r    zDTypes.Categoricaltype[dtypes.Enum]c                 C  r   r   r   r   r   r   r   Enumq  r    zDTypes.Enumtype[dtypes.Datetime]c                 C  r   r   r   r   r   r   r   Datetimes  r    zDTypes.Datetimetype[dtypes.Duration]c                 C  r   r   r   r   r   r   r   Durationu  r    zDTypes.Durationtype[dtypes.Date]c                 C  r   r   r   r   r   r   r   Datew  r    zDTypes.Datetype[dtypes.Field]c                 C  r   r   r   r   r   r   r   Fieldy  r    zDTypes.Fieldtype[dtypes.Struct]c                 C  r   r   r   r   r   r   r   Struct{  r    zDTypes.Structtype[dtypes.List]c                 C  r   r   r   r   r   r   r   List}  r    zDTypes.Listtype[dtypes.Array]c                 C  r   r   r   r   r   r   r   Array  r    zDTypes.Arraytype[dtypes.Unknown]c                 C  r   r   r   r   r   r   r   Unknown  r    zDTypes.Unknowntype[dtypes.Time]c                 C  r   r   r   r   r   r   r   Time  r    zDTypes.Timetype[dtypes.Binary]c                 C  r   r   r   r   r   r   r   Binary  r    zDTypes.BinaryN)r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   ) r'   r(   r)   r*   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   N  sr    r   )r
   r   r   rB   r;   rA   r6   r?   r5   r8   r=   r<   rE   )`
__future__r   typingr   r   r   r   r   r   r	   narwhals._compliantr
   r   r   datetimedtdecimalr   typesr   r   r   numpynptyping_extensionsr   narwhalsr   narwhals.dataframer   r   narwhals.exprr   narwhals.seriesr   r   r,   r/   r1   r3   strr5   __annotations__r6   r7   r8   r;   r<   r=   r?   r@   rA   rB   rC   rD   rE   rF   rQ   rV   rZ   r_   rc   rd   rj   rs   rw   r|   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   intr   r   r   r   r   r   r   r   r   r   r   __all__r   r   r   r   <module>   s    
		
;