# (C) Copyright 2020-2023 Enthought, Inc., Austin, TX
# All rights reserved.
#
# This software is provided without warranty under the terms of the BSD
# license included in LICENSE.txt and may be redistributed only under
# the conditions described in the aforementioned license. The license
# is also available online at http://www.enthought.com/licenses/BSD.txt
#
# Thanks for using Enthought open source!

from . import ctraits as ctraits
from .constants import ComparisonMode as ComparisonMode, DefaultValue as DefaultValue, default_value_map as default_value_map
from .trait_base import SequenceTypes as SequenceTypes, Undefined as Undefined
from .trait_dict_object import TraitDictObject as TraitDictObject
from .trait_list_object import TraitListObject as TraitListObject
from .trait_set_object import TraitSetObject as TraitSetObject
from typing import Any

def __newobj__(cls, *args: Any): ...

class CTrait(ctraits.cTrait):
    def __call__(self, *args: Any, **metadata: Any): ...
    @property
    def default(self): ...
    @property
    def default_kind(self): ...
    @property
    def trait_type(self): ...
    @property
    def inner_traits(self): ...
    @property
    def comparison_mode(self): ...
    @comparison_mode.setter
    def comparison_mode(self, value: Any) -> None: ...
    def is_trait_type(self, trait_type: Any): ...
    editor: Any = ...
    def get_editor(self): ...
    def get_help(self, full: bool = ...): ...
    def full_info(self, object: Any, name: Any, value: Any): ...
    def info(self): ...
    def as_ctrait(self): ...
    def __reduce_ex__(self, protocol: Any): ...
