import pandas as pd
from _typeshed import Incomplete
from czsc.fsa.base import FeishuApiBase as FeishuApiBase, request as request

class SpreadSheets(FeishuApiBase):
    def __init__(self, app_id, app_secret, **kwargs) -> None: ...
    def create(self, folder_token, title): ...
    def check(self, token): ...
    def get_sheets(self, token): ...
    def get_sheet_meta(self, token, sheet_id): ...
    def update_values(self, token, data): ...
    def update_styles(self, token, data): ...
    def read_sheet(self, token, sheet_id): ...
    def delete_values(self, token, sheet_id) -> None: ...
    def dimension_range(self, token, data): ...
    def update_sheets(self, token, operates): ...
    def add_permissions_member(self, token, doctype, member_type, member_id, perm) -> None: ...
    def append(self, token, sheet_id, df: pd.DataFrame, batch_size: int = 2000, overwrite: bool = True): ...
    def get_sheet_cols(self, token, sheet_id, n: int = 1): ...
    def read_table(self, token, sheet_id): ...
    def get_condition_formats(self, token, sheet_id): ...
    def set_condition_formats(self, token, data): ...
    def set_styles_batch(self, token, data): ...

class SingleSheet(SpreadSheets):
    token: Incomplete
    sheet_id: Incomplete
    def __init__(self, app_id, app_secret, token, sheet_id) -> None: ...
    def get_meta(self): ...
    def get_cols(self, n: int = 1) -> None: ...
    def single_append(self, df: pd.DataFrame, batch_size: int = 2000, overwrite: bool = False): ...
    def single_read_table(self) -> None: ...
    def single_delete_values(self) -> None: ...
