From c6844445614270684000fdbf7d84914cf6a2ebe6 Mon Sep 17 00:00:00 2001 From: Benedikt Bartscher Date: Thu, 7 Nov 2024 01:01:22 +0100 Subject: [PATCH] improve typing for serializer decorator --- reflex/utils/serializers.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/reflex/utils/serializers.py b/reflex/utils/serializers.py index d3dbb1d4c..aa84f49e3 100644 --- a/reflex/utils/serializers.py +++ b/reflex/utils/serializers.py @@ -39,10 +39,24 @@ SERIALIZERS: dict[Type, Serializer] = {} SERIALIZER_TYPES: dict[Type, Type] = {} +@overload +def serializer( + fn: None = None, + to: Any = None, +) -> Serializer: ... + + +@overload +def serializer( + fn: Serializer, + to: None = None, +) -> functools.partial[Serializer]: ... + + def serializer( fn: Serializer | None = None, - to: Type | None = None, -) -> Serializer: + to: Any = None, +) -> Serializer | functools.partial[Serializer]: """Decorator to add a serializer for a given type. Args: