"""Stub file for reflex/components/recharts/cartesian.py"""

# ------------------- DO NOT EDIT ----------------------
# This file was generated by `reflex/utils/pyi_generator.py`!
# ------------------------------------------------------
from typing import Any, Dict, List, Literal, Optional, Union, overload

from reflex.constants.colors import Color
from reflex.event import BASE_STATE, EventType
from reflex.style import Style
from reflex.vars.base import Var

from .recharts import Recharts

class Axis(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        hide: Optional[Union[Var[bool], bool]] = None,
        width: Optional[Union[Var[Union[int, str]], int, str]] = None,
        height: Optional[Union[Var[Union[int, str]], int, str]] = None,
        type_: Optional[
            Union[Literal["category", "number"], Var[Literal["category", "number"]]]
        ] = None,
        interval: Optional[
            Union[
                Literal[
                    "equidistantPreserveStart",
                    "preserveEnd",
                    "preserveStart",
                    "preserveStartEnd",
                ],
                Var[
                    Union[
                        Literal[
                            "equidistantPreserveStart",
                            "preserveEnd",
                            "preserveStart",
                            "preserveStartEnd",
                        ],
                        int,
                    ]
                ],
                int,
            ]
        ] = None,
        allow_decimals: Optional[Union[Var[bool], bool]] = None,
        allow_data_overflow: Optional[Union[Var[bool], bool]] = None,
        allow_duplicated_category: Optional[Union[Var[bool], bool]] = None,
        domain: Optional[Union[List, Var[List]]] = None,
        axis_line: Optional[Union[Var[bool], bool]] = None,
        mirror: Optional[Union[Var[bool], bool]] = None,
        reversed: Optional[Union[Var[bool], bool]] = None,
        label: Optional[
            Union[Dict[str, Any], Var[Union[Dict[str, Any], int, str]], int, str]
        ] = None,
        scale: Optional[
            Union[
                Literal[
                    "auto",
                    "band",
                    "identity",
                    "linear",
                    "log",
                    "ordinal",
                    "point",
                    "pow",
                    "quantile",
                    "quantize",
                    "sequential",
                    "sqrt",
                    "threshold",
                    "time",
                    "utc",
                ],
                Var[
                    Literal[
                        "auto",
                        "band",
                        "identity",
                        "linear",
                        "log",
                        "ordinal",
                        "point",
                        "pow",
                        "quantile",
                        "quantize",
                        "sequential",
                        "sqrt",
                        "threshold",
                        "time",
                        "utc",
                    ]
                ],
            ]
        ] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        ticks: Optional[
            Union[List[Union[int, str]], Var[List[Union[int, str]]]]
        ] = None,
        tick: Optional[Union[Var[bool], bool]] = None,
        tick_count: Optional[Union[Var[int], int]] = None,
        tick_line: Optional[Union[Var[bool], bool]] = None,
        tick_size: Optional[Union[Var[int], int]] = None,
        min_tick_gap: Optional[Union[Var[int], int]] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        text_anchor: Optional[
            Union[
                Literal["end", "middle", "start"],
                Var[Literal["end", "middle", "start"]],
            ]
        ] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Axis":
        """Create the component.

        Args:
            *children: The children of the component.
            data_key: The key of data displayed in the axis.
            hide: If set true, the axis do not display in the chart. Default: False
            width: The width of axis which is usually calculated internally.
            height: The height of axis, which can be set by user.
            type_: The type of axis 'number' | 'category'
            interval: If set 0, all the ticks will be shown. If set preserveStart", "preserveEnd" or "preserveStartEnd", the ticks which is to be shown or hidden will be calculated automatically. Default: "preserveEnd"
            allow_decimals: Allow the ticks of Axis to be decimals or not. Default: True
            allow_data_overflow: When domain of the axis is specified and the type of the axis is 'number', if allowDataOverflow is set to be false, the domain will be adjusted when the minimum value of data is smaller than domain[0] or the maximum value of data is greater than domain[1] so that the axis displays all data values. If set to true, graphic elements (line, area, bars) will be clipped to conform to the specified domain. Default: False
            allow_duplicated_category: Allow the axis has duplicated categorys or not when the type of axis is "category". Default: True
            domain: The range of the axis. Work best in conjunction with allow_data_overflow. Default: [0, "auto"]
            axis_line: If set false, no axis line will be drawn. Default: True
            mirror: If set true, flips ticks around the axis line, displaying the labels inside the chart instead of outside. Default: False
            reversed: Reverse the ticks or not. Default: False
            label: The label of axis, which appears next to the axis.
            scale: If 'auto' set, the scale function is decided by the type of chart, and the props type. 'auto' | 'linear' | 'pow' | 'sqrt' | 'log' | 'identity' | 'time' | 'band' | 'point' | 'ordinal' | 'quantile' | 'quantize' | 'utc' | 'sequential' | 'threshold'. Default: "auto"
            unit: The unit of data displayed in the axis. This option will be used to represent an index unit in a scatter chart.
            name: The name of data displayed in the axis. This option will be used to represent an index in a scatter chart.
            ticks: Set the values of axis ticks manually.
            tick: If set false, no ticks will be drawn.
            tick_count: The count of axis ticks. Not used if 'type' is 'category'. Default: 5
            tick_line: If set false, no axis tick lines will be drawn. Default: True
            tick_size: The length of tick line. Default: 6
            min_tick_gap: The minimum gap between two adjacent labels. Default: 5
            stroke: The stroke color of axis. Default: rx.color("gray", 9)
            text_anchor: The text anchor of axis. Default: "middle"
            on_click: The customized event handler of click on the ticks of this axis
            on_mouse_down: The customized event handler of mousedown on the ticks of this axis
            on_mouse_up: The customized event handler of mouseup on the ticks of this axis
            on_mouse_move: The customized event handler of mousemove on the ticks of this axis
            on_mouse_out: The customized event handler of mouseout on the ticks of this axis
            on_mouse_enter: The customized event handler of mouseenter on the ticks of this axis
            on_mouse_leave: The customized event handler of mouseleave on the ticks of this axis
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class XAxis(Axis):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        orientation: Optional[
            Union[Literal["bottom", "top"], Var[Literal["bottom", "top"]]]
        ] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        include_hidden: Optional[Union[Var[bool], bool]] = None,
        angle: Optional[Union[Var[int], int]] = None,
        padding: Optional[Union[Dict[str, int], Var[Dict[str, int]]]] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        hide: Optional[Union[Var[bool], bool]] = None,
        width: Optional[Union[Var[Union[int, str]], int, str]] = None,
        height: Optional[Union[Var[Union[int, str]], int, str]] = None,
        type_: Optional[
            Union[Literal["category", "number"], Var[Literal["category", "number"]]]
        ] = None,
        interval: Optional[
            Union[
                Literal[
                    "equidistantPreserveStart",
                    "preserveEnd",
                    "preserveStart",
                    "preserveStartEnd",
                ],
                Var[
                    Union[
                        Literal[
                            "equidistantPreserveStart",
                            "preserveEnd",
                            "preserveStart",
                            "preserveStartEnd",
                        ],
                        int,
                    ]
                ],
                int,
            ]
        ] = None,
        allow_decimals: Optional[Union[Var[bool], bool]] = None,
        allow_data_overflow: Optional[Union[Var[bool], bool]] = None,
        allow_duplicated_category: Optional[Union[Var[bool], bool]] = None,
        domain: Optional[Union[List, Var[List]]] = None,
        axis_line: Optional[Union[Var[bool], bool]] = None,
        mirror: Optional[Union[Var[bool], bool]] = None,
        reversed: Optional[Union[Var[bool], bool]] = None,
        label: Optional[
            Union[Dict[str, Any], Var[Union[Dict[str, Any], int, str]], int, str]
        ] = None,
        scale: Optional[
            Union[
                Literal[
                    "auto",
                    "band",
                    "identity",
                    "linear",
                    "log",
                    "ordinal",
                    "point",
                    "pow",
                    "quantile",
                    "quantize",
                    "sequential",
                    "sqrt",
                    "threshold",
                    "time",
                    "utc",
                ],
                Var[
                    Literal[
                        "auto",
                        "band",
                        "identity",
                        "linear",
                        "log",
                        "ordinal",
                        "point",
                        "pow",
                        "quantile",
                        "quantize",
                        "sequential",
                        "sqrt",
                        "threshold",
                        "time",
                        "utc",
                    ]
                ],
            ]
        ] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        ticks: Optional[
            Union[List[Union[int, str]], Var[List[Union[int, str]]]]
        ] = None,
        tick: Optional[Union[Var[bool], bool]] = None,
        tick_count: Optional[Union[Var[int], int]] = None,
        tick_line: Optional[Union[Var[bool], bool]] = None,
        tick_size: Optional[Union[Var[int], int]] = None,
        min_tick_gap: Optional[Union[Var[int], int]] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        text_anchor: Optional[
            Union[
                Literal["end", "middle", "start"],
                Var[Literal["end", "middle", "start"]],
            ]
        ] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "XAxis":
        """Create the component.

        Args:
            *children: The children of the component.
            orientation: The orientation of axis 'top' | 'bottom'. Default: "bottom"
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            include_hidden: Ensures that all datapoints within a chart contribute to its domain calculation, even when they are hidden. Default: False
            angle: The angle of axis ticks. Default: 0
            padding: Specify the padding of x-axis. Default: {"left": 0, "right": 0}
            data_key: The key of data displayed in the axis.
            hide: If set true, the axis do not display in the chart. Default: False
            width: The width of axis which is usually calculated internally.
            height: The height of axis, which can be set by user.
            type_: The type of axis 'number' | 'category'
            interval: If set 0, all the ticks will be shown. If set preserveStart", "preserveEnd" or "preserveStartEnd", the ticks which is to be shown or hidden will be calculated automatically. Default: "preserveEnd"
            allow_decimals: Allow the ticks of Axis to be decimals or not. Default: True
            allow_data_overflow: When domain of the axis is specified and the type of the axis is 'number', if allowDataOverflow is set to be false, the domain will be adjusted when the minimum value of data is smaller than domain[0] or the maximum value of data is greater than domain[1] so that the axis displays all data values. If set to true, graphic elements (line, area, bars) will be clipped to conform to the specified domain. Default: False
            allow_duplicated_category: Allow the axis has duplicated categorys or not when the type of axis is "category". Default: True
            domain: The range of the axis. Work best in conjunction with allow_data_overflow. Default: [0, "auto"]
            axis_line: If set false, no axis line will be drawn. Default: True
            mirror: If set true, flips ticks around the axis line, displaying the labels inside the chart instead of outside. Default: False
            reversed: Reverse the ticks or not. Default: False
            label: The label of axis, which appears next to the axis.
            scale: If 'auto' set, the scale function is decided by the type of chart, and the props type. 'auto' | 'linear' | 'pow' | 'sqrt' | 'log' | 'identity' | 'time' | 'band' | 'point' | 'ordinal' | 'quantile' | 'quantize' | 'utc' | 'sequential' | 'threshold'. Default: "auto"
            unit: The unit of data displayed in the axis. This option will be used to represent an index unit in a scatter chart.
            name: The name of data displayed in the axis. This option will be used to represent an index in a scatter chart.
            ticks: Set the values of axis ticks manually.
            tick: If set false, no ticks will be drawn.
            tick_count: The count of axis ticks. Not used if 'type' is 'category'. Default: 5
            tick_line: If set false, no axis tick lines will be drawn. Default: True
            tick_size: The length of tick line. Default: 6
            min_tick_gap: The minimum gap between two adjacent labels. Default: 5
            stroke: The stroke color of axis. Default: rx.color("gray", 9)
            text_anchor: The text anchor of axis. Default: "middle"
            on_click: The customized event handler of click on the ticks of this axis
            on_mouse_down: The customized event handler of mousedown on the ticks of this axis
            on_mouse_up: The customized event handler of mouseup on the ticks of this axis
            on_mouse_move: The customized event handler of mousemove on the ticks of this axis
            on_mouse_out: The customized event handler of mouseout on the ticks of this axis
            on_mouse_enter: The customized event handler of mouseenter on the ticks of this axis
            on_mouse_leave: The customized event handler of mouseleave on the ticks of this axis
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class YAxis(Axis):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        orientation: Optional[
            Union[Literal["left", "right"], Var[Literal["left", "right"]]]
        ] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        padding: Optional[Union[Dict[str, int], Var[Dict[str, int]]]] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        hide: Optional[Union[Var[bool], bool]] = None,
        width: Optional[Union[Var[Union[int, str]], int, str]] = None,
        height: Optional[Union[Var[Union[int, str]], int, str]] = None,
        type_: Optional[
            Union[Literal["category", "number"], Var[Literal["category", "number"]]]
        ] = None,
        interval: Optional[
            Union[
                Literal[
                    "equidistantPreserveStart",
                    "preserveEnd",
                    "preserveStart",
                    "preserveStartEnd",
                ],
                Var[
                    Union[
                        Literal[
                            "equidistantPreserveStart",
                            "preserveEnd",
                            "preserveStart",
                            "preserveStartEnd",
                        ],
                        int,
                    ]
                ],
                int,
            ]
        ] = None,
        allow_decimals: Optional[Union[Var[bool], bool]] = None,
        allow_data_overflow: Optional[Union[Var[bool], bool]] = None,
        allow_duplicated_category: Optional[Union[Var[bool], bool]] = None,
        domain: Optional[Union[List, Var[List]]] = None,
        axis_line: Optional[Union[Var[bool], bool]] = None,
        mirror: Optional[Union[Var[bool], bool]] = None,
        reversed: Optional[Union[Var[bool], bool]] = None,
        label: Optional[
            Union[Dict[str, Any], Var[Union[Dict[str, Any], int, str]], int, str]
        ] = None,
        scale: Optional[
            Union[
                Literal[
                    "auto",
                    "band",
                    "identity",
                    "linear",
                    "log",
                    "ordinal",
                    "point",
                    "pow",
                    "quantile",
                    "quantize",
                    "sequential",
                    "sqrt",
                    "threshold",
                    "time",
                    "utc",
                ],
                Var[
                    Literal[
                        "auto",
                        "band",
                        "identity",
                        "linear",
                        "log",
                        "ordinal",
                        "point",
                        "pow",
                        "quantile",
                        "quantize",
                        "sequential",
                        "sqrt",
                        "threshold",
                        "time",
                        "utc",
                    ]
                ],
            ]
        ] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        ticks: Optional[
            Union[List[Union[int, str]], Var[List[Union[int, str]]]]
        ] = None,
        tick: Optional[Union[Var[bool], bool]] = None,
        tick_count: Optional[Union[Var[int], int]] = None,
        tick_line: Optional[Union[Var[bool], bool]] = None,
        tick_size: Optional[Union[Var[int], int]] = None,
        min_tick_gap: Optional[Union[Var[int], int]] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        text_anchor: Optional[
            Union[
                Literal["end", "middle", "start"],
                Var[Literal["end", "middle", "start"]],
            ]
        ] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "YAxis":
        """Create the component.

        Args:
            *children: The children of the component.
            orientation: The orientation of axis 'left' | 'right'. Default: "left"
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            padding: Specify the padding of y-axis. Default: {"top": 0, "bottom": 0}
            data_key: The key of data displayed in the axis.
            hide: If set true, the axis do not display in the chart. Default: False
            width: The width of axis which is usually calculated internally.
            height: The height of axis, which can be set by user.
            type_: The type of axis 'number' | 'category'
            interval: If set 0, all the ticks will be shown. If set preserveStart", "preserveEnd" or "preserveStartEnd", the ticks which is to be shown or hidden will be calculated automatically. Default: "preserveEnd"
            allow_decimals: Allow the ticks of Axis to be decimals or not. Default: True
            allow_data_overflow: When domain of the axis is specified and the type of the axis is 'number', if allowDataOverflow is set to be false, the domain will be adjusted when the minimum value of data is smaller than domain[0] or the maximum value of data is greater than domain[1] so that the axis displays all data values. If set to true, graphic elements (line, area, bars) will be clipped to conform to the specified domain. Default: False
            allow_duplicated_category: Allow the axis has duplicated categorys or not when the type of axis is "category". Default: True
            domain: The range of the axis. Work best in conjunction with allow_data_overflow. Default: [0, "auto"]
            axis_line: If set false, no axis line will be drawn. Default: True
            mirror: If set true, flips ticks around the axis line, displaying the labels inside the chart instead of outside. Default: False
            reversed: Reverse the ticks or not. Default: False
            label: The label of axis, which appears next to the axis.
            scale: If 'auto' set, the scale function is decided by the type of chart, and the props type. 'auto' | 'linear' | 'pow' | 'sqrt' | 'log' | 'identity' | 'time' | 'band' | 'point' | 'ordinal' | 'quantile' | 'quantize' | 'utc' | 'sequential' | 'threshold'. Default: "auto"
            unit: The unit of data displayed in the axis. This option will be used to represent an index unit in a scatter chart.
            name: The name of data displayed in the axis. This option will be used to represent an index in a scatter chart.
            ticks: Set the values of axis ticks manually.
            tick: If set false, no ticks will be drawn.
            tick_count: The count of axis ticks. Not used if 'type' is 'category'. Default: 5
            tick_line: If set false, no axis tick lines will be drawn. Default: True
            tick_size: The length of tick line. Default: 6
            min_tick_gap: The minimum gap between two adjacent labels. Default: 5
            stroke: The stroke color of axis. Default: rx.color("gray", 9)
            text_anchor: The text anchor of axis. Default: "middle"
            on_click: The customized event handler of click on the ticks of this axis
            on_mouse_down: The customized event handler of mousedown on the ticks of this axis
            on_mouse_up: The customized event handler of mouseup on the ticks of this axis
            on_mouse_move: The customized event handler of mousemove on the ticks of this axis
            on_mouse_out: The customized event handler of mouseout on the ticks of this axis
            on_mouse_enter: The customized event handler of mouseenter on the ticks of this axis
            on_mouse_leave: The customized event handler of mouseleave on the ticks of this axis
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class ZAxis(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        z_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        range: Optional[Union[List[int], Var[List[int]]]] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        scale: Optional[
            Union[
                Literal[
                    "auto",
                    "band",
                    "identity",
                    "linear",
                    "log",
                    "ordinal",
                    "point",
                    "pow",
                    "quantile",
                    "quantize",
                    "sequential",
                    "sqrt",
                    "threshold",
                    "time",
                    "utc",
                ],
                Var[
                    Literal[
                        "auto",
                        "band",
                        "identity",
                        "linear",
                        "log",
                        "ordinal",
                        "point",
                        "pow",
                        "quantile",
                        "quantize",
                        "sequential",
                        "sqrt",
                        "threshold",
                        "time",
                        "utc",
                    ]
                ],
            ]
        ] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "ZAxis":
        """Create the component.

        Args:
            *children: The children of the component.
            data_key: The key of data displayed in the axis.
            z_axis_id: The unique id of z-axis. Default: 0
            range: The range of axis. Default: [10, 10]
            unit: The unit of data displayed in the axis. This option will be used to represent an index unit in a scatter chart.
            name: The name of data displayed in the axis. This option will be used to represent an index in a scatter chart.
            scale: If 'auto' set, the scale function is decided by the type of chart, and the props type. Default: "auto"
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Brush(Recharts):
    def get_event_triggers(self) -> dict[str, Union[Var, Any]]: ...
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        fill: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        x: Optional[Union[Var[int], int]] = None,
        y: Optional[Union[Var[int], int]] = None,
        width: Optional[Union[Var[int], int]] = None,
        height: Optional[Union[Var[int], int]] = None,
        data: Optional[Union[List[Any], Var[List[Any]]]] = None,
        traveller_width: Optional[Union[Var[int], int]] = None,
        gap: Optional[Union[Var[int], int]] = None,
        start_index: Optional[Union[Var[int], int]] = None,
        end_index: Optional[Union[Var[int], int]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_change: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Brush":
        """Create the component.

        Args:
            *children: The children of the component.
            stroke: The stroke color of brush
            fill: The fill color of brush
            data_key: The key of data displayed in the axis.
            x: The x-coordinate of brush. Default: 0
            y: The y-coordinate of brush. Default: 0
            width: The width of brush. Default: 0
            height: The height of brush. Default: 40
            data: The original data of a LineChart, a BarChart or an AreaChart.
            traveller_width: The width of each traveller. Default: 5
            gap: The data with gap of refreshing chart. If the option is not set, the chart will be refreshed every time. Default: 1
            start_index: The default start index of brush. If the option is not set, the start index will be 0. Default: 0
            end_index: The default end index of brush. If the option is not set, the end index will be calculated by the length of data.
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Cartesian(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        layout: Optional[
            Union[
                Literal["horizontal", "vertical"],
                Var[Literal["horizontal", "vertical"]],
            ]
        ] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        legend_type: Optional[
            Union[
                Literal[
                    "circle",
                    "cross",
                    "diamond",
                    "line",
                    "none",
                    "plainline",
                    "rect",
                    "square",
                    "star",
                    "triangle",
                    "wye",
                ],
                Var[
                    Literal[
                        "circle",
                        "cross",
                        "diamond",
                        "line",
                        "none",
                        "plainline",
                        "rect",
                        "square",
                        "star",
                        "triangle",
                        "wye",
                    ]
                ],
            ]
        ] = None,
        is_animation_active: Optional[Union[Var[bool], bool]] = None,
        animation_begin: Optional[Union[Var[int], int]] = None,
        animation_duration: Optional[Union[Var[int], int]] = None,
        animation_easing: Optional[
            Union[
                Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"],
                Var[Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"]],
            ]
        ] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_animation_end: Optional[EventType[[], BASE_STATE]] = None,
        on_animation_start: Optional[EventType[[], BASE_STATE]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Cartesian":
        """Create the component.

        Args:
            *children: The children of the component.
            layout: The layout of bar in the chart, usually inherited from parent. 'horizontal' | 'vertical'
            data_key: The key of a group of data which should be unique in an area chart.
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            legend_type: The type of icon in legend. If set to 'none', no legend item will be rendered. 'line' | 'plainline' | 'square' | 'rect'| 'circle' | 'cross' | 'diamond' | 'star' | 'triangle' | 'wye' | 'none' optional
            is_animation_active: If set false, animation of bar will be disabled. Default: True
            animation_begin: Specifies when the animation should begin, the unit of this option is ms. Default: 0
            animation_duration: Specifies the duration of animation, the unit of this option is ms. Default: 1500
            animation_easing: The type of easing function. Default: "ease"
            unit: The unit of data. This option will be used in tooltip.
            name: The name of data. This option will be used in tooltip and legend to represent the component. If no value was set to this option, the value of dataKey will be used alternatively.
            on_animation_start: The customized event handler of animation start
            on_animation_end: The customized event handler of animation end
            on_click: The customized event handler of click on the component in this group
            on_mouse_down: The customized event handler of mousedown on the component in this group
            on_mouse_up: The customized event handler of mouseup on the component in this group
            on_mouse_move: The customized event handler of mousemove on the component in this group
            on_mouse_over: The customized event handler of mouseover on the component in this group
            on_mouse_out: The customized event handler of mouseout on the component in this group
            on_mouse_enter: The customized event handler of mouseenter on the component in this group
            on_mouse_leave: The customized event handler of mouseleave on the component in this group
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Area(Cartesian):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        stroke_width: Optional[Union[Var[int], int]] = None,
        fill: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        type_: Optional[
            Union[
                Literal[
                    "basis",
                    "basisClosed",
                    "basisOpen",
                    "bump",
                    "bumpX",
                    "bumpY",
                    "linear",
                    "linearClosed",
                    "monotone",
                    "monotoneX",
                    "monotoneY",
                    "natural",
                    "step",
                    "stepAfter",
                    "stepBefore",
                ],
                Var[
                    Literal[
                        "basis",
                        "basisClosed",
                        "basisOpen",
                        "bump",
                        "bumpX",
                        "bumpY",
                        "linear",
                        "linearClosed",
                        "monotone",
                        "monotoneX",
                        "monotoneY",
                        "natural",
                        "step",
                        "stepAfter",
                        "stepBefore",
                    ]
                ],
            ]
        ] = None,
        dot: Optional[
            Union[Dict[str, Any], Var[Union[Dict[str, Any], bool]], bool]
        ] = None,
        active_dot: Optional[
            Union[Dict[str, Any], Var[Union[Dict[str, Any], bool]], bool]
        ] = None,
        label: Optional[Union[Var[bool], bool]] = None,
        base_line: Optional[
            Union[List[Dict[str, Any]], Var[Union[List[Dict[str, Any]], str]], str]
        ] = None,
        points: Optional[Union[List[Dict[str, Any]], Var[List[Dict[str, Any]]]]] = None,
        stack_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        connect_nulls: Optional[Union[Var[bool], bool]] = None,
        layout: Optional[
            Union[
                Literal["horizontal", "vertical"],
                Var[Literal["horizontal", "vertical"]],
            ]
        ] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        legend_type: Optional[
            Union[
                Literal[
                    "circle",
                    "cross",
                    "diamond",
                    "line",
                    "none",
                    "plainline",
                    "rect",
                    "square",
                    "star",
                    "triangle",
                    "wye",
                ],
                Var[
                    Literal[
                        "circle",
                        "cross",
                        "diamond",
                        "line",
                        "none",
                        "plainline",
                        "rect",
                        "square",
                        "star",
                        "triangle",
                        "wye",
                    ]
                ],
            ]
        ] = None,
        is_animation_active: Optional[Union[Var[bool], bool]] = None,
        animation_begin: Optional[Union[Var[int], int]] = None,
        animation_duration: Optional[Union[Var[int], int]] = None,
        animation_easing: Optional[
            Union[
                Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"],
                Var[Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"]],
            ]
        ] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_animation_end: Optional[EventType[[], BASE_STATE]] = None,
        on_animation_start: Optional[EventType[[], BASE_STATE]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Area":
        """Create the component.

        Args:
            *children: The children of the component.
            stroke: The color of the line stroke. Default: rx.color("accent", 9)
            stroke_width: The width of the line stroke. Default: 1
            fill: The color of the area fill. Default: rx.color("accent", 5)
            type_: The interpolation type of area. And customized interpolation function can be set to type. 'basis' | 'basisClosed' | 'basisOpen' | 'bumpX' | 'bumpY' | 'bump' | 'linear' | 'linearClosed' | 'natural' | 'monotoneX' | 'monotoneY' | 'monotone' | 'step' | 'stepBefore' | 'stepAfter'. Default: "monotone"
            dot: If false set, dots will not be drawn. If true set, dots will be drawn which have the props calculated internally. Default: False
            active_dot: The dot is shown when user enter an area chart and this chart has tooltip. If false set, no active dot will not be drawn. If true set, active dot will be drawn which have the props calculated internally. Default: {stroke: rx.color("accent", 2), fill: rx.color("accent", 10)}
            label: If set false, labels will not be drawn. If set true, labels will be drawn which have the props calculated internally. Default: False
            base_line: The value which can describle the line, usually calculated internally.
            points: The coordinates of all the points in the area, usually calculated internally.
            stack_id: The stack id of area, when two areas have the same value axis and same stack_id, then the two areas are stacked in order.
            connect_nulls: Whether to connect a graph area across null points. Default: False
            layout: The layout of bar in the chart, usually inherited from parent. 'horizontal' | 'vertical'
            data_key: The key of a group of data which should be unique in an area chart.
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            legend_type: The type of icon in legend. If set to 'none', no legend item will be rendered. 'line' | 'plainline' | 'square' | 'rect'| 'circle' | 'cross' | 'diamond' | 'star' | 'triangle' | 'wye' | 'none' optional
            is_animation_active: If set false, animation of bar will be disabled. Default: True
            animation_begin: Specifies when the animation should begin, the unit of this option is ms. Default: 0
            animation_duration: Specifies the duration of animation, the unit of this option is ms. Default: 1500
            animation_easing: The type of easing function. Default: "ease"
            unit: The unit of data. This option will be used in tooltip.
            name: The name of data. This option will be used in tooltip and legend to represent the component. If no value was set to this option, the value of dataKey will be used alternatively.
            on_animation_start: The customized event handler of animation start
            on_animation_end: The customized event handler of animation end
            on_click: The customized event handler of click on the component in this group
            on_mouse_down: The customized event handler of mousedown on the component in this group
            on_mouse_up: The customized event handler of mouseup on the component in this group
            on_mouse_move: The customized event handler of mousemove on the component in this group
            on_mouse_over: The customized event handler of mouseover on the component in this group
            on_mouse_out: The customized event handler of mouseout on the component in this group
            on_mouse_enter: The customized event handler of mouseenter on the component in this group
            on_mouse_leave: The customized event handler of mouseleave on the component in this group
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Bar(Cartesian):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        stroke_width: Optional[Union[Var[int], int]] = None,
        fill: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        background: Optional[Union[Var[bool], bool]] = None,
        label: Optional[Union[Var[bool], bool]] = None,
        stack_id: Optional[Union[Var[str], str]] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        min_point_size: Optional[Union[Var[int], int]] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        bar_size: Optional[Union[Var[int], int]] = None,
        max_bar_size: Optional[Union[Var[int], int]] = None,
        radius: Optional[Union[List[int], Var[Union[List[int], int]], int]] = None,
        layout: Optional[
            Union[
                Literal["horizontal", "vertical"],
                Var[Literal["horizontal", "vertical"]],
            ]
        ] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        legend_type: Optional[
            Union[
                Literal[
                    "circle",
                    "cross",
                    "diamond",
                    "line",
                    "none",
                    "plainline",
                    "rect",
                    "square",
                    "star",
                    "triangle",
                    "wye",
                ],
                Var[
                    Literal[
                        "circle",
                        "cross",
                        "diamond",
                        "line",
                        "none",
                        "plainline",
                        "rect",
                        "square",
                        "star",
                        "triangle",
                        "wye",
                    ]
                ],
            ]
        ] = None,
        is_animation_active: Optional[Union[Var[bool], bool]] = None,
        animation_begin: Optional[Union[Var[int], int]] = None,
        animation_duration: Optional[Union[Var[int], int]] = None,
        animation_easing: Optional[
            Union[
                Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"],
                Var[Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"]],
            ]
        ] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_animation_end: Optional[EventType[[], BASE_STATE]] = None,
        on_animation_start: Optional[EventType[[], BASE_STATE]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Bar":
        """Create the component.

        Args:
            *children: The children of the component.
            stroke: The color of the line stroke.
            stroke_width: The width of the line stroke.
            fill: The width of the line stroke. Default: Color("accent", 9)
            background: If false set, background of bars will not be drawn. If true set, background of bars will be drawn which have the props calculated internally. Default: False
            label: If false set, labels will not be drawn. If true set, labels will be drawn which have the props calculated internally. Default: False
            stack_id: The stack id of bar, when two bars have the same value axis and same stack_id, then the two bars are stacked in order.
            unit: The unit of data. This option will be used in tooltip.
            min_point_size: The minimal height of a bar in a horizontal BarChart, or the minimal width of a bar in a vertical BarChart. By default, 0 values are not shown. To visualize a 0 (or close to zero) point, set the minimal point size to a pixel value like 3. In stacked bar charts, minPointSize might not be respected for tightly packed values. So we strongly recommend not using this prop in stacked BarCharts.
            name: The name of data. This option will be used in tooltip and legend to represent the component. If no value was set to this option, the value of dataKey will be used alternatively.
            bar_size: Size of the bar (if one bar_size is set then a bar_size must be set for all bars)
            max_bar_size: Max size of the bar
            radius: If set a value, the option is the radius of all the rounded corners. If set a array, the option are in turn the radiuses of top-left corner, top-right corner, bottom-right corner, bottom-left corner. Default: 0
            layout: The layout of bar in the chart, usually inherited from parent. 'horizontal' | 'vertical'
            data_key: The key of a group of data which should be unique in an area chart.
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            legend_type: The type of icon in legend. If set to 'none', no legend item will be rendered. 'line' | 'plainline' | 'square' | 'rect'| 'circle' | 'cross' | 'diamond' | 'star' | 'triangle' | 'wye' | 'none' optional
            is_animation_active: If set false, animation of bar will be disabled. Default: True
            animation_begin: Specifies when the animation should begin, the unit of this option is ms. Default: 0
            animation_duration: Specifies the duration of animation, the unit of this option is ms. Default: 1500
            animation_easing: The type of easing function. Default: "ease"
            on_animation_start: The customized event handler of animation start
            on_animation_end: The customized event handler of animation end
            on_click: The customized event handler of click on the component in this group
            on_mouse_down: The customized event handler of mousedown on the component in this group
            on_mouse_up: The customized event handler of mouseup on the component in this group
            on_mouse_move: The customized event handler of mousemove on the component in this group
            on_mouse_over: The customized event handler of mouseover on the component in this group
            on_mouse_out: The customized event handler of mouseout on the component in this group
            on_mouse_enter: The customized event handler of mouseenter on the component in this group
            on_mouse_leave: The customized event handler of mouseleave on the component in this group
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Line(Cartesian):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        type_: Optional[
            Union[
                Literal[
                    "basis",
                    "basisClosed",
                    "basisOpen",
                    "bump",
                    "bumpX",
                    "bumpY",
                    "linear",
                    "linearClosed",
                    "monotone",
                    "monotoneX",
                    "monotoneY",
                    "natural",
                    "step",
                    "stepAfter",
                    "stepBefore",
                ],
                Var[
                    Literal[
                        "basis",
                        "basisClosed",
                        "basisOpen",
                        "bump",
                        "bumpX",
                        "bumpY",
                        "linear",
                        "linearClosed",
                        "monotone",
                        "monotoneX",
                        "monotoneY",
                        "natural",
                        "step",
                        "stepAfter",
                        "stepBefore",
                    ]
                ],
            ]
        ] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        stroke_width: Optional[Union[Var[int], int]] = None,
        dot: Optional[
            Union[Dict[str, Any], Var[Union[Dict[str, Any], bool]], bool]
        ] = None,
        active_dot: Optional[
            Union[Dict[str, Any], Var[Union[Dict[str, Any], bool]], bool]
        ] = None,
        label: Optional[Union[Var[bool], bool]] = None,
        hide: Optional[Union[Var[bool], bool]] = None,
        connect_nulls: Optional[Union[Var[bool], bool]] = None,
        unit: Optional[Union[Var[Union[int, str]], int, str]] = None,
        points: Optional[Union[List[Dict[str, Any]], Var[List[Dict[str, Any]]]]] = None,
        stroke_dasharray: Optional[Union[Var[str], str]] = None,
        layout: Optional[
            Union[
                Literal["horizontal", "vertical"],
                Var[Literal["horizontal", "vertical"]],
            ]
        ] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        legend_type: Optional[
            Union[
                Literal[
                    "circle",
                    "cross",
                    "diamond",
                    "line",
                    "none",
                    "plainline",
                    "rect",
                    "square",
                    "star",
                    "triangle",
                    "wye",
                ],
                Var[
                    Literal[
                        "circle",
                        "cross",
                        "diamond",
                        "line",
                        "none",
                        "plainline",
                        "rect",
                        "square",
                        "star",
                        "triangle",
                        "wye",
                    ]
                ],
            ]
        ] = None,
        is_animation_active: Optional[Union[Var[bool], bool]] = None,
        animation_begin: Optional[Union[Var[int], int]] = None,
        animation_duration: Optional[Union[Var[int], int]] = None,
        animation_easing: Optional[
            Union[
                Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"],
                Var[Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"]],
            ]
        ] = None,
        name: Optional[Union[Var[Union[int, str]], int, str]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_animation_end: Optional[EventType[[], BASE_STATE]] = None,
        on_animation_start: Optional[EventType[[], BASE_STATE]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Line":
        """Create the component.

        Args:
            *children: The children of the component.
            type_: The interpolation type of line. And customized interpolation function can be set to type. It's the same as type in Area.
            stroke: The color of the line stroke. Default: rx.color("accent", 9)
            stroke_width: The width of the line stroke. Default: 1
            dot: The dot is shown when mouse enter a line chart and this chart has tooltip. If false set, no active dot will not be drawn. If true set, active dot will be drawn which have the props calculated internally. Default: {"stroke": rx.color("accent", 10), "fill": rx.color("accent", 4)}
            active_dot: The dot is shown when user enter an area chart and this chart has tooltip. If false set, no active dot will not be drawn. If true set, active dot will be drawn which have the props calculated internally. Default: {"stroke": rx.color("accent", 2), "fill": rx.color("accent", 10)}
            label: If false set, labels will not be drawn. If true set, labels will be drawn which have the props calculated internally. Default: False
            hide: Hides the line when true, useful when toggling visibility state via legend. Default: False
            connect_nulls: Whether to connect a graph line across null points.
            unit: The unit of data. This option will be used in tooltip.
            points: The coordinates of all the points in the line, usually calculated internally.
            stroke_dasharray: The pattern of dashes and gaps used to paint the line.
            layout: The layout of bar in the chart, usually inherited from parent. 'horizontal' | 'vertical'
            data_key: The key of a group of data which should be unique in an area chart.
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            legend_type: The type of icon in legend. If set to 'none', no legend item will be rendered. 'line' | 'plainline' | 'square' | 'rect'| 'circle' | 'cross' | 'diamond' | 'star' | 'triangle' | 'wye' | 'none' optional
            is_animation_active: If set false, animation of bar will be disabled. Default: True
            animation_begin: Specifies when the animation should begin, the unit of this option is ms. Default: 0
            animation_duration: Specifies the duration of animation, the unit of this option is ms. Default: 1500
            animation_easing: The type of easing function. Default: "ease"
            name: The name of data. This option will be used in tooltip and legend to represent the component. If no value was set to this option, the value of dataKey will be used alternatively.
            on_animation_start: The customized event handler of animation start
            on_animation_end: The customized event handler of animation end
            on_click: The customized event handler of click on the component in this group
            on_mouse_down: The customized event handler of mousedown on the component in this group
            on_mouse_up: The customized event handler of mouseup on the component in this group
            on_mouse_move: The customized event handler of mousemove on the component in this group
            on_mouse_over: The customized event handler of mouseover on the component in this group
            on_mouse_out: The customized event handler of mouseout on the component in this group
            on_mouse_enter: The customized event handler of mouseenter on the component in this group
            on_mouse_leave: The customized event handler of mouseleave on the component in this group
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Scatter(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        data: Optional[Union[List[Dict[str, Any]], Var[List[Dict[str, Any]]]]] = None,
        legend_type: Optional[
            Union[
                Literal[
                    "circle",
                    "cross",
                    "diamond",
                    "line",
                    "none",
                    "plainline",
                    "rect",
                    "square",
                    "star",
                    "triangle",
                    "wye",
                ],
                Var[
                    Literal[
                        "circle",
                        "cross",
                        "diamond",
                        "line",
                        "none",
                        "plainline",
                        "rect",
                        "square",
                        "star",
                        "triangle",
                        "wye",
                    ]
                ],
            ]
        ] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        z_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        line: Optional[Union[Var[bool], bool]] = None,
        shape: Optional[
            Union[
                Literal[
                    "circle", "cross", "diamond", "square", "star", "triangle", "wye"
                ],
                Var[
                    Literal[
                        "circle",
                        "cross",
                        "diamond",
                        "square",
                        "star",
                        "triangle",
                        "wye",
                    ]
                ],
            ]
        ] = None,
        line_type: Optional[
            Union[Literal["fitting", "joint"], Var[Literal["fitting", "joint"]]]
        ] = None,
        fill: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        is_animation_active: Optional[Union[Var[bool], bool]] = None,
        animation_begin: Optional[Union[Var[int], int]] = None,
        animation_duration: Optional[Union[Var[int], int]] = None,
        animation_easing: Optional[
            Union[
                Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"],
                Var[Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"]],
            ]
        ] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Scatter":
        """Create the component.

        Args:
            *children: The children of the component.
            data: The source data, in which each element is an object.
            legend_type: The type of icon in legend. If set to 'none', no legend item will be rendered. 'line' | 'plainline' | 'square' | 'rect'| 'circle' | 'cross' | 'diamond' | 'square' | 'star' | 'triangle' | 'wye' | 'none'. Default: "circle"
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            z_axis_id: The id of z-axis which is corresponding to the data. Default: 0
            line: If false set, line will not be drawn. If true set, line will be drawn which have the props calculated internally. Default: False
            shape: If a string set, specified symbol will be used to show scatter item. 'circle' | 'cross' | 'diamond' | 'square' | 'star' | 'triangle' | 'wye'. Default: "circle"
            line_type: If 'joint' set, line will generated by just jointing all the points. If 'fitting' set, line will be generated by fitting algorithm. 'joint' | 'fitting'. Default: "joint"
            fill: The fill color of the scatter. Default: rx.color("accent", 9)
            is_animation_active: If set false, animation of bar will be disabled. Default: True in CSR, False in SSR
            animation_begin: Specifies when the animation should begin, the unit of this option is ms. Default: 0
            animation_duration: Specifies the duration of animation, the unit of this option is ms. Default: 1500
            animation_easing: The type of easing function. Default: "ease"
            on_click: The customized event handler of click on the component in this group
            on_mouse_down: The customized event handler of mousedown on the component in this group
            on_mouse_up: The customized event handler of mouseup on the component in this group
            on_mouse_move: The customized event handler of mousemove on the component in this group
            on_mouse_over: The customized event handler of mouseover on the component in this group
            on_mouse_out: The customized event handler of mouseout on the component in this group
            on_mouse_enter: The customized event handler of mouseenter on the component in this group
            on_mouse_leave: The customized event handler of mouseleave on the component in this group
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Funnel(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        data: Optional[Union[List[Dict[str, Any]], Var[List[Dict[str, Any]]]]] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        name_key: Optional[Union[Var[str], str]] = None,
        legend_type: Optional[
            Union[
                Literal[
                    "circle",
                    "cross",
                    "diamond",
                    "line",
                    "none",
                    "plainline",
                    "rect",
                    "square",
                    "star",
                    "triangle",
                    "wye",
                ],
                Var[
                    Literal[
                        "circle",
                        "cross",
                        "diamond",
                        "line",
                        "none",
                        "plainline",
                        "rect",
                        "square",
                        "star",
                        "triangle",
                        "wye",
                    ]
                ],
            ]
        ] = None,
        is_animation_active: Optional[Union[Var[bool], bool]] = None,
        animation_begin: Optional[Union[Var[int], int]] = None,
        animation_duration: Optional[Union[Var[int], int]] = None,
        animation_easing: Optional[
            Union[
                Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"],
                Var[Literal["ease", "ease-in", "ease-in-out", "ease-out", "linear"]],
            ]
        ] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        trapezoids: Optional[
            Union[List[Dict[str, Any]], Var[List[Dict[str, Any]]]]
        ] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_animation_end: Optional[EventType[[], BASE_STATE]] = None,
        on_animation_start: Optional[EventType[[], BASE_STATE]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Funnel":
        """Create the component.

        Args:
            *children: The children of the component.
            data: The source data, in which each element is an object.
            data_key: The key or getter of a group of data which should be unique in a FunnelChart.
            name_key: The key of each sector's name. Default: "name"
            legend_type: The type of icon in legend. If set to 'none', no legend item will be rendered. Default: "line"
            is_animation_active: If set false, animation of line will be disabled. Default: True
            animation_begin: Specifies when the animation should begin, the unit of this option is ms. Default: 0
            animation_duration: Specifies the duration of animation, the unit of this option is ms. Default: 1500
            animation_easing: The type of easing function. 'ease' | 'ease-in' | 'ease-out' | 'ease-in-out' | 'linear'. Default "ease"
            stroke: Stroke color. Default: rx.color("gray", 3)
            trapezoids: The coordinates of all the trapezoids in the funnel, usually calculated internally.
            on_animation_start: The customized event handler of animation start
            on_animation_end: The customized event handler of animation end
            on_click: The customized event handler of click on the component in this group
            on_mouse_down: The customized event handler of mousedown on the component in this group
            on_mouse_up: The customized event handler of mouseup on the component in this group
            on_mouse_move: The customized event handler of mousemove on the component in this group
            on_mouse_over: The customized event handler of mouseover on the component in this group
            on_mouse_out: The customized event handler of mouseout on the component in this group
            on_mouse_enter: The customized event handler of mouseenter on the component in this group
            on_mouse_leave: The customized event handler of mouseleave on the component in this group
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class ErrorBar(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        direction: Optional[Union[Literal["x", "y"], Var[Literal["x", "y"]]]] = None,
        data_key: Optional[Union[Var[Union[int, str]], int, str]] = None,
        width: Optional[Union[Var[int], int]] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        stroke_width: Optional[Union[Var[Union[float, int]], float, int]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "ErrorBar":
        """Create the component.

        Args:
            *children: The children of the component.
            direction: Only used for ScatterChart with error bars in two directions. Only accepts a value of "x" or "y" and makes the error bars lie in that direction.
            data_key: The key of a group of data which should be unique in an area chart.
            width: The width of the error bar ends. Default: 5
            stroke: The stroke color of error bar. Default: rx.color("gray", 8)
            stroke_width: The stroke width of error bar. Default: 1.5
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Reference(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        if_overflow: Optional[
            Union[
                Literal["discard", "extendDomain", "hidden", "visible"],
                Var[Literal["discard", "extendDomain", "hidden", "visible"]],
            ]
        ] = None,
        label: Optional[Union[Var[Union[int, str]], int, str]] = None,
        is_front: Optional[Union[Var[bool], bool]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Reference":
        """Create the component.

        Args:
            *children: The children of the component.
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            if_overflow: Defines how to draw the reference line if it falls partly outside the canvas. If set to 'discard', the reference line will not be drawn at all. If set to 'hidden', the reference line will be clipped to the canvas. If set to 'visible', the reference line will be drawn completely. If set to 'extendDomain', the domain of the overflown axis will be extended such that the reference line fits into the canvas. Default: "discard"
            label: If set a string or a number, default label will be drawn, and the option is content.
            is_front: If set true, the line will be rendered in front of bars in BarChart, etc. Default: False
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class ReferenceLine(Reference):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        x: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y: Optional[Union[Var[Union[int, str]], int, str]] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        stroke_width: Optional[Union[Var[Union[int, str]], int, str]] = None,
        segment: Optional[List[Any]] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        if_overflow: Optional[
            Union[
                Literal["discard", "extendDomain", "hidden", "visible"],
                Var[Literal["discard", "extendDomain", "hidden", "visible"]],
            ]
        ] = None,
        label: Optional[Union[Var[Union[int, str]], int, str]] = None,
        is_front: Optional[Union[Var[bool], bool]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "ReferenceLine":
        """Create the component.

        Args:
            *children: The children of the component.
            x: If set a string or a number, a vertical line perpendicular to the x-axis specified by xAxisId will be drawn. If the specified x-axis is a number axis, the type of x must be Number. If the specified x-axis is a category axis, the value of x must be one of the categorys, otherwise no line will be drawn.
            y: If set a string or a number, a horizontal line perpendicular to the y-axis specified by yAxisId will be drawn. If the specified y-axis is a number axis, the type of y must be Number. If the specified y-axis is a category axis, the value of y must be one of the categorys, otherwise no line will be drawn.
            stroke: The color of the reference line.
            stroke_width: The width of the stroke. Default: 1
            segment: Array of endpoints in { x, y } format. These endpoints would be used to draw the ReferenceLine.
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            if_overflow: Defines how to draw the reference line if it falls partly outside the canvas. If set to 'discard', the reference line will not be drawn at all. If set to 'hidden', the reference line will be clipped to the canvas. If set to 'visible', the reference line will be drawn completely. If set to 'extendDomain', the domain of the overflown axis will be extended such that the reference line fits into the canvas. Default: "discard"
            label: If set a string or a number, default label will be drawn, and the option is content.
            is_front: If set true, the line will be rendered in front of bars in BarChart, etc. Default: False
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class ReferenceDot(Reference):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        x: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y: Optional[Union[Var[Union[int, str]], int, str]] = None,
        r: Optional[Union[Var[int], int]] = None,
        fill: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        if_overflow: Optional[
            Union[
                Literal["discard", "extendDomain", "hidden", "visible"],
                Var[Literal["discard", "extendDomain", "hidden", "visible"]],
            ]
        ] = None,
        label: Optional[Union[Var[Union[int, str]], int, str]] = None,
        is_front: Optional[Union[Var[bool], bool]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "ReferenceDot":
        """Create the component.

        Args:
            *children: The children of the component.
            x: If set a string or a number, a vertical line perpendicular to the x-axis specified by xAxisId will be drawn. If the specified x-axis is a number axis, the type of x must be Number. If the specified x-axis is a category axis, the value of x must be one of the categorys, otherwise no line will be drawn.
            y: If set a string or a number, a horizontal line perpendicular to the y-axis specified by yAxisId will be drawn. If the specified y-axis is a number axis, the type of y must be Number. If the specified y-axis is a category axis, the value of y must be one of the categorys, otherwise no line will be drawn.
            r: The radius of dot.
            fill: The color of the area fill.
            stroke: The color of the line stroke.
            on_click: The customized event handler of click on the component in this chart
            on_mouse_down: The customized event handler of mousedown on the component in this chart
            on_mouse_up: The customized event handler of mouseup on the component in this chart
            on_mouse_over: The customized event handler of mouseover on the component in this chart
            on_mouse_out: The customized event handler of mouseout on the component in this chart
            on_mouse_enter: The customized event handler of mouseenter on the component in this chart
            on_mouse_move: The customized event handler of mousemove on the component in this chart
            on_mouse_leave: The customized event handler of mouseleave on the component in this chart
            x_axis_id: The id of x-axis which is corresponding to the data. Default: 0
            y_axis_id: The id of y-axis which is corresponding to the data. Default: 0
            if_overflow: Defines how to draw the reference line if it falls partly outside the canvas. If set to 'discard', the reference line will not be drawn at all. If set to 'hidden', the reference line will be clipped to the canvas. If set to 'visible', the reference line will be drawn completely. If set to 'extendDomain', the domain of the overflown axis will be extended such that the reference line fits into the canvas. Default: "discard"
            label: If set a string or a number, default label will be drawn, and the option is content.
            is_front: If set true, the line will be rendered in front of bars in BarChart, etc. Default: False
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class ReferenceArea(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        fill: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        fill_opacity: Optional[Union[Var[float], float]] = None,
        x_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y_axis_id: Optional[Union[Var[Union[int, str]], int, str]] = None,
        x1: Optional[Union[Var[Union[int, str]], int, str]] = None,
        x2: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y1: Optional[Union[Var[Union[int, str]], int, str]] = None,
        y2: Optional[Union[Var[Union[int, str]], int, str]] = None,
        if_overflow: Optional[
            Union[
                Literal["discard", "extendDomain", "hidden", "visible"],
                Var[Literal["discard", "extendDomain", "hidden", "visible"]],
            ]
        ] = None,
        is_front: Optional[Union[Var[bool], bool]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "ReferenceArea":
        """Create the component.

        Args:
            *children: The children of the component.
            stroke: Stroke color
            fill: Fill color
            fill_opacity: The opacity of area.
            x_axis_id: The id of x-axis which is corresponding to the data.
            y_axis_id: The id of y-axis which is corresponding to the data.
            x1: A boundary value of the area. If the specified x-axis is a number axis, the type of x must be Number. If the specified x-axis is a category axis, the value of x must be one of the categorys. If one of x1 or x2 is invalidate, the area will cover along x-axis.
            x2: A boundary value of the area. If the specified x-axis is a number axis, the type of x must be Number. If the specified x-axis is a category axis, the value of x must be one of the categorys. If one of x1 or x2 is invalidate, the area will cover along x-axis.
            y1: A boundary value of the area. If the specified y-axis is a number axis, the type of y must be Number. If the specified y-axis is a category axis, the value of y must be one of the categorys. If one of y1 or y2 is invalidate, the area will cover along y-axis.
            y2: A boundary value of the area. If the specified y-axis is a number axis, the type of y must be Number. If the specified y-axis is a category axis, the value of y must be one of the categorys. If one of y1 or y2 is invalidate, the area will cover along y-axis.
            if_overflow: Defines how to draw the reference line if it falls partly outside the canvas. If set to 'discard', the reference line will not be drawn at all. If set to 'hidden', the reference line will be clipped to the canvas. If set to 'visible', the reference line will be drawn completely. If set to 'extendDomain', the domain of the overflown axis will be extended such that the reference line fits into the canvas. Default: "discard"
            is_front: If set true, the line will be rendered in front of bars in BarChart, etc. Default: False
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class Grid(Recharts):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        x: Optional[Union[Var[int], int]] = None,
        y: Optional[Union[Var[int], int]] = None,
        width: Optional[Union[Var[int], int]] = None,
        height: Optional[Union[Var[int], int]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "Grid":
        """Create the component.

        Args:
            *children: The children of the component.
            x: The x-coordinate of grid. Default: 0
            y: The y-coordinate of grid. Default: 0
            width: The width of grid. Default: 0
            height: The height of grid. Default: 0
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class CartesianGrid(Grid):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        horizontal: Optional[Union[Var[bool], bool]] = None,
        vertical: Optional[Union[Var[bool], bool]] = None,
        vertical_points: Optional[
            Union[List[Union[int, str]], Var[List[Union[int, str]]]]
        ] = None,
        horizontal_points: Optional[
            Union[List[Union[int, str]], Var[List[Union[int, str]]]]
        ] = None,
        fill: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        fill_opacity: Optional[Union[Var[float], float]] = None,
        stroke_dasharray: Optional[Union[Var[str], str]] = None,
        stroke: Optional[Union[Color, Var[Union[Color, str]], str]] = None,
        x: Optional[Union[Var[int], int]] = None,
        y: Optional[Union[Var[int], int]] = None,
        width: Optional[Union[Var[int], int]] = None,
        height: Optional[Union[Var[int], int]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "CartesianGrid":
        """Create the component.

        Args:
            *children: The children of the component.
            horizontal: The horizontal line configuration. Default: True
            vertical: The vertical line configuration. Default: True
            vertical_points: The x-coordinates in pixel values of all vertical lines. Default: []
            horizontal_points: The x-coordinates in pixel values of all vertical lines. Default: []
            fill: The background of grid.
            fill_opacity: The opacity of the background used to fill the space between grid lines.
            stroke_dasharray: The pattern of dashes and gaps used to paint the lines of the grid.
            stroke: the stroke color of grid. Default: rx.color("gray", 7)
            x: The x-coordinate of grid. Default: 0
            y: The y-coordinate of grid. Default: 0
            width: The width of grid. Default: 0
            height: The height of grid. Default: 0
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

class CartesianAxis(Grid):
    @overload
    @classmethod
    def create(  # type: ignore
        cls,
        *children,
        orientation: Optional[
            Union[
                Literal["bottom", "left", "right", "top"],
                Var[Literal["bottom", "left", "right", "top"]],
            ]
        ] = None,
        view_box: Optional[Union[Dict[str, Any], Var[Dict[str, Any]]]] = None,
        axis_line: Optional[Union[Var[bool], bool]] = None,
        tick: Optional[Union[Var[bool], bool]] = None,
        tick_line: Optional[Union[Var[bool], bool]] = None,
        tick_size: Optional[Union[Var[int], int]] = None,
        interval: Optional[
            Union[
                Literal["preserveEnd", "preserveStart", "preserveStartEnd"],
                Var[Literal["preserveEnd", "preserveStart", "preserveStartEnd"]],
            ]
        ] = None,
        label: Optional[Union[Var[Union[int, str]], int, str]] = None,
        mirror: Optional[Union[Var[bool], bool]] = None,
        tick_margin: Optional[Union[Var[int], int]] = None,
        x: Optional[Union[Var[int], int]] = None,
        y: Optional[Union[Var[int], int]] = None,
        width: Optional[Union[Var[int], int]] = None,
        height: Optional[Union[Var[int], int]] = None,
        style: Optional[Style] = None,
        key: Optional[Any] = None,
        id: Optional[Any] = None,
        class_name: Optional[Any] = None,
        autofocus: Optional[bool] = None,
        custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
        on_blur: Optional[EventType[[], BASE_STATE]] = None,
        on_click: Optional[EventType[[], BASE_STATE]] = None,
        on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
        on_double_click: Optional[EventType[[], BASE_STATE]] = None,
        on_focus: Optional[EventType[[], BASE_STATE]] = None,
        on_mount: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
        on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
        on_scroll: Optional[EventType[[], BASE_STATE]] = None,
        on_unmount: Optional[EventType[[], BASE_STATE]] = None,
        **props,
    ) -> "CartesianAxis":
        """Create the component.

        Args:
            *children: The children of the component.
            orientation: The orientation of axis 'top' | 'bottom' | 'left' | 'right'. Default: "bottom"
            view_box: The box of viewing area. Default: {"x": 0, "y": 0, "width": 0, "height": 0}
            axis_line: If set false, no axis line will be drawn. If set a object, the option is the configuration of axis line. Default: True
            tick: If set false, no ticks will be drawn.
            tick_line: If set false, no axis tick lines will be drawn. If set a object, the option is the configuration of tick lines. Default: True
            tick_size: The length of tick line. Default: 6
            interval: If set 0, all the ticks will be shown. If set preserveStart", "preserveEnd" or "preserveStartEnd", the ticks which is to be shown or hidden will be calculated automatically. Default: "preserveEnd"
            label: If set a string or a number, default label will be drawn, and the option is content.
            mirror: If set true, flips ticks around the axis line, displaying the labels inside the chart instead of outside. Default: False
            tick_margin: The margin between tick line and tick.
            x: The x-coordinate of grid. Default: 0
            y: The y-coordinate of grid. Default: 0
            width: The width of grid. Default: 0
            height: The height of grid. Default: 0
            style: The style of the component.
            key: A unique key for the component.
            id: The id for the component.
            class_name: The class name for the component.
            autofocus: Whether the component should take the focus once the page is loaded
            custom_attrs: custom attribute
            **props: The props of the component.

        Returns:
            The component.
        """
        ...

area = Area.create
bar = Bar.create
line = Line.create
scatter = Scatter.create
x_axis = XAxis.create
y_axis = YAxis.create
z_axis = ZAxis.create
brush = Brush.create
cartesian_axis = CartesianAxis.create
cartesian_grid = CartesianGrid.create
reference_line = ReferenceLine.create
reference_dot = ReferenceDot.create
reference_area = ReferenceArea.create
error_bar = ErrorBar.create
funnel = Funnel.create
