from .condition import Condition

class Conditions(list):
    def __init__(self, logic: str=None, is_root: bool=True):
        self._logic: str = ...
        self._is_root: bool = ...

    @property
    def is_root(self) -> bool: ...
    @property
    def logic(self) -> str: ...
    @logic.setter
    def logic(self, value) -> None: ...
    def set_logic_and(self) -> None: ...
    def set_logic_or(self) -> None: ...
    def add(self, column:str, value: str | int | float, judge: str=None, logic:str=None, startwith:bool=None, endwith:bool=None) -> Condition: ...
    def add_and_equal(self, column:str, value: str | int | float) -> Condition: ...
    def add_or_equal(self, column:str, value: str | int | float) -> Condition: ...
    def add_and_not_equal(self, column:str, value: str | int | float) -> Condition: ...
    def add_and_more_than(self, column:str, value: str | int | float) -> Condition: ...
    def add_and_not_more_than(self, column:str, value: str | int | float) -> Condition: ...
    def add_and_less_than(self, column:str, value: str | int | float) -> Condition: ...
    def add_and_not_less_than(self, column:str, value: str | int | float) -> Condition: ...
    def add_and_like(self, column:str, value: str | int | float, startwith:bool=None, endwith:bool=None) -> Condition: ...
    def add_or_like(self, column:str, value: str | int | float, startwith:bool=None, endwith:bool=None) -> Condition: ...
    def add_conditions(self, logic:str=None) -> Conditions: ...
    def add_conditions_and(self) -> Conditions: ...
    def add_conditions_or(self) -> Conditions: ...
    def output(self, logic_bridge_requeried:bool=False) -> str: ...
