from .......types.he import He
from ..... import Database
from .... import Tables
from ... import Table
from .. import Columns
from .....connection import Connection
from .....configs import Configs


class Column(He):
    def __init__(self, u: Columns, name: str): ...
    @property
    def __database__(self)-> Database: ...
    @property
    def __tables__(self)-> Tables: ...
    @property
    def __table__(self)-> Table: ...
    @property
    def __columns__(self)-> Columns: ...
    @property
    def __connection__(self)-> Connection: ...
    @property
    def __configs__(self)-> Configs: ...
    @property
    def name(self)-> str: ...

    def exists(self, name: str)-> bool: ...
    def create(self, datatype: str = None, length: int = 0, unique: bool = False, nullable: bool = False) -> bool: ...
    def delete(self, name: str)-> bool: ...

    def set_unique(self, name: str)-> bool: ...
