import enum
import np
from pathlib import Path
from typing import Any, Callable, ClassVar

ESTIMATION_EPS: float
ESTIMATION_MAXIT: int
IODE_DEFAULT_DATABASE_FILENAME: str
NA: float
NAN_REP: str
__test__: dict
allowed_keys: set
la: None

class AdjustmentMethod(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    ERROR_CORRECTION: ClassVar[AdjustmentMethod] = ...
    PARTIAL: ClassVar[AdjustmentMethod] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class BinaryOperation(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    OP_ADD: ClassVar[BinaryOperation] = ...
    OP_DIV: ClassVar[BinaryOperation] = ...
    OP_MUL: ClassVar[BinaryOperation] = ...
    OP_POW: ClassVar[BinaryOperation] = ...
    OP_SUB: ClassVar[BinaryOperation] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class Comments(CythonIodeDatabase):
    convert_file: ClassVar[method] = ...
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def copy_from(self, input_files: str, names: str = ...) -> Any:
        """copy_from(self, input_files: str, names: str = '*')"""
    def initialize_subset(self, cython_instance: Comments, pattern: str, copy: bool) -> Comments:
        """initialize_subset(self, cython_instance: Comments, pattern: str, copy: bool) -> Comments"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class ComputedTable:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def cell_value_to_str(self, row: int, column: int) -> str:
        """cell_value_to_str(self, row: int, column: int) -> str"""
    def get_columns(self) -> list[str]:
        """get_columns(self) -> List[str]"""
    def get_files(self) -> list[str]:
        """get_files(self) -> List[str]"""
    def get_graph_alignment(self) -> TableGraphAlign:
        """get_graph_alignment(self) -> TableGraphAlign"""
    def get_graph_axis(self) -> TableGraphAxis:
        """get_graph_axis(self) -> TableGraphAxis"""
    def get_gridx(self) -> TableGraphGrid:
        """get_gridx(self) -> TableGraphGrid"""
    def get_gridy(self) -> TableGraphGrid:
        """get_gridy(self) -> TableGraphGrid"""
    def get_lines(self) -> list[str]:
        """get_lines(self) -> List[str]"""
    def get_nb_columns(self) -> int:
        """get_nb_columns(self) -> int"""
    def get_nb_decimals(self) -> int:
        """get_nb_decimals(self) -> int"""
    def get_nb_files(self) -> int:
        """get_nb_files(self) -> int"""
    def get_nb_lines(self) -> int:
        """get_nb_lines(self) -> int"""
    def get_nb_operations_between_files(self) -> int:
        """get_nb_operations_between_files(self) -> int"""
    def get_nb_periods(self) -> int:
        """get_nb_periods(self) -> int"""
    def get_sample(self) -> Sample:
        """get_sample(self) -> Sample"""
    def get_title(self) -> str:
        """get_title(self) -> str"""
    def get_ymax(self) -> float:
        """get_ymax(self) -> float"""
    def get_ymin(self) -> float:
        """get_ymin(self) -> float"""
    def is_editable(self, row: int, column: int) -> bool:
        """is_editable(self, row: int, column: int) -> bool"""
    def plotting_series_name(self, row: int, op_files: int) -> str:
        """plotting_series_name(self, row: int, op_files: int) -> str"""
    def plotting_series_values(self, row: int, op_files: int) -> tuple[np.ndarray, np.ndarray]:
        """plotting_series_values(self, row: int, op_files: int) -> Tuple[np.ndarray, np.ndarray]"""
    def print_to_file(self, destination_file: str, format: str = ...) -> Any:
        """print_to_file(self, destination_file: str, format: str = None)"""
    def set_nb_decimals(self, value: int) -> Any:
        """set_nb_decimals(self, value: int)"""
    def to_numpy(self) -> np.ndarray:
        """to_numpy(self) -> np.ndarray"""
    def __del__(self, *args, **kwargs) -> None: ...
    def __reduce__(self):
        """__reduce_cython__(self)"""

class CythonCorrelationMatrix:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def get_names(self) -> list[str]:
        """get_names(self) -> List[str]"""
    def get_shape(self) -> tuple[int, int]:
        """get_shape(self) -> Tuple[int, int]"""
    def is_undefined(self) -> bool:
        """is_undefined(self) -> bool"""
    def name(self, index: int) -> str:
        """name(self, index: int) -> str"""
    def __getitem__(self, index):
        """Return self[key]."""
    def __len__(self) -> int:
        """Return len(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class CythonEditAndEstimateEquations:
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def estimate(self, maxit: int, epsilon: float) -> Any:
        """estimate(self, maxit: int, epsilon: float)"""
    def get_block(self) -> str:
        """get_block(self) -> str"""
    def get_correlation_matrix(self, corr_matrix: CythonCorrelationMatrix) -> CythonCorrelationMatrix:
        """get_correlation_matrix(self, corr_matrix: CythonCorrelationMatrix) -> CythonCorrelationMatrix"""
    def get_current_equation(self, eq: Equation) -> Equation:
        """get_current_equation(self, eq: Equation) -> Equation"""
    def get_equations_db(self, equations_db: Equations) -> Equations:
        """get_equations_db(self, equations_db: Equations) -> Equations"""
    def get_equations_list(self) -> list[str]:
        """get_equations_list(self) -> List[str]"""
    def get_fitted_values(self, name: str) -> list[float]:
        """get_fitted_values(self, name: str) -> List[float]"""
    def get_instruments(self) -> str | list[str]:
        """get_instruments(self) -> Union[str, List[str]]"""
    def get_is_done(self) -> bool:
        """get_is_done(self) -> bool"""
    def get_method(self) -> str:
        """get_method(self) -> str"""
    def get_next_equation(self, eq: Equation) -> Equation:
        """get_next_equation(self, eq: Equation) -> Equation"""
    def get_observed_values(self, name: str) -> list[float]:
        """get_observed_values(self, name: str) -> List[float]"""
    def get_residual_values(self, name: str) -> list[float]:
        """get_residual_values(self, name: str) -> List[float]"""
    def get_sample(self) -> Sample:
        """get_sample(self) -> Sample"""
    def get_scalars_db(self, scalars_db: Scalars) -> Scalars:
        """get_scalars_db(self, scalars_db: Scalars) -> Scalars"""
    def save(self, from_period: str, to_period: str) -> list[str]:
        """save(self, from_period: str, to_period: str) -> List[str]"""
    def set_block(self, block: str, current_eq_name: str) -> Any:
        """set_block(self, block: str, current_eq_name: str)"""
    def set_instruments(self, value: str) -> Any:
        """set_instruments(self, value: str)"""
    def set_method(self, value: int) -> Any:
        """set_method(self, value: int)"""
    def set_sample(self, from_period: str, to_period: str) -> Any:
        """set_sample(self, from_period: str, to_period: str)"""
    def update_current_equation(self, lec: str, comment: str) -> Any:
        """update_current_equation(self, lec: str, comment: str)"""
    def update_scalars(self) -> Any:
        """update_scalars(self)"""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class CythonIodeDatabase:
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def clear(self) -> Any:
        """clear(self)"""
    def compare(self, args: str, i_iode_type: int) -> Any:
        """compare(self, args: str, i_iode_type: int)"""
    def contains(self, item) -> bool:
        """contains(self, item) -> bool"""
    def count(self) -> int:
        """count(self) -> int"""
    def get_description(self) -> str:
        """get_description(self) -> str"""
    def get_filename(self) -> str:
        """get_filename(self) -> str"""
    def get_iode_type(self) -> IodeType:
        """get_iode_type(self) -> IodeType"""
    def get_is_detached(self) -> bool:
        """get_is_detached(self) -> bool"""
    def get_is_global_workspace(self) -> bool:
        """get_is_global_workspace(self) -> bool"""
    def get_name(self, pos: int) -> str:
        """get_name(self, pos: int) -> str"""
    def get_names(self, pattern: str, filepath: str = ...) -> str:
        """get_names(self, pattern: str, filepath: str = None) -> str"""
    def get_names_from_pattern(self, list_name: str, pattern: str, xdim: str, ydim: str) -> bool:
        """get_names_from_pattern(self, list_name: str, pattern: str, xdim: str, ydim: str) -> bool"""
    def get_position(self, name: str) -> int:
        """get_position(self, name: str) -> int"""
    def merge(self, cython_other: CythonIodeDatabase, overwrite: bool = ...) -> Any:
        """merge(self, cython_other: CythonIodeDatabase, overwrite: bool = True)"""
    def merge_from(self, input_file: str) -> Any:
        """merge_from(self, input_file: str)"""
    def print_to_file(self, filepath: str, names: str, format: str = ...) -> Any:
        """print_to_file(self, filepath: str, names: str, format: str = None)"""
    def property_names(self) -> list[str]:
        """property_names(self) -> List[str]"""
    def remove(self, names: list[str]) -> Any:
        """remove(self, names: List[str])"""
    def remove_entries(self, names: list[str]) -> Any:
        """remove_entries(self, names: List[str])"""
    def remove_objects(self, names: list[str]) -> Any:
        """remove_objects(self, names: List[str])"""
    def rename(self, old_name: str, new_name: str) -> int:
        """rename(self, old_name: str, new_name: str) -> int"""
    def save(self, filepath: str, compress: bool) -> Any:
        """save(self, filepath: str, compress: bool)"""
    def search(self, pattern: str, word: bool = ..., case_sensitive: bool = ..., in_name: bool = ..., in_formula: bool = ..., in_text: bool = ..., list_result: str = ...) -> list[str]:
        """search(self, pattern: str, word: bool = True, case_sensitive: bool = True, in_name: bool = True, in_formula: bool = True, in_text: bool = True, list_result: str = '_RES') -> List[str]"""
    def set_description(self, value: str) -> Any:
        """set_description(self, value: str)"""
    def set_filename(self, value: str) -> Any:
        """set_filename(self, value: str)"""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class EqMethod(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    GLS: ClassVar[EqMethod] = ...
    INSTRUMENTAL: ClassVar[EqMethod] = ...
    LSQ: ClassVar[EqMethod] = ...
    MAX_LIKELIHOOD: ClassVar[EqMethod] = ...
    ZELLNER: ClassVar[EqMethod] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class EqTest(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    CORR: ClassVar[EqTest] = ...
    DW: ClassVar[EqTest] = ...
    FSTAT: ClassVar[EqTest] = ...
    LOGLIK: ClassVar[EqTest] = ...
    MEANY: ClassVar[EqTest] = ...
    R2: ClassVar[EqTest] = ...
    R2ADJ: ClassVar[EqTest] = ...
    SSRES: ClassVar[EqTest] = ...
    STDERR: ClassVar[EqTest] = ...
    STDERRP: ClassVar[EqTest] = ...
    STDEV: ClassVar[EqTest] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class Equation:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def equal(self, other: Equation) -> bool:
        """equal(self, other: Equation) -> bool"""
    def estimate(self, from_period: str, to_period: str, maxit: int, epsilon: float) -> bool:
        """estimate(self, from_period: str, to_period: str, maxit: int, epsilon: float) -> bool"""
    def estimate_step_wise(self, from_period: str | None, to_period: str | None, lec_condition: str, test: str) -> bool:
        """estimate_step_wise(self, from_period: Union[str, None], to_period: Union[str, None], lec_condition: str, test: str) -> bool"""
    def get_block(self) -> str:
        """get_block(self) -> str"""
    def get_coefficients(self) -> list[str]:
        """get_coefficients(self) -> List[str]"""
    def get_comment(self) -> str:
        """get_comment(self) -> str"""
    def get_endogenous(self) -> str:
        """get_endogenous(self) -> str"""
    def get_formated_date(self, format: str = ...) -> str:
        """get_formated_date(self, format: str = 'dd-mm-yyyy') -> str"""
    def get_instruments(self) -> str | list[str]:
        """get_instruments(self) -> Union[str, List[str]]"""
    def get_lec(self) -> str:
        """get_lec(self) -> str"""
    def get_method(self) -> str:
        """get_method(self) -> str"""
    def get_sample(self) -> Sample:
        """get_sample(self) -> Sample"""
    def get_tests(self) -> dict[str, float]:
        """get_tests(self) -> Dict[str, float]"""
    def get_variables(self) -> list[str]:
        """get_variables(self) -> List[str]"""
    def set_block(self, value: str) -> Any:
        """set_block(self, value: str)"""
    def set_comment(self, value: str) -> Any:
        """set_comment(self, value: str)"""
    def set_instruments(self, value: str) -> Any:
        """set_instruments(self, value: str)"""
    def set_lec(self, value: str) -> Any:
        """set_lec(self, value: str)"""
    def set_method(self, value: int) -> Any:
        """set_method(self, value: int)"""
    def set_sample(self, from_period: str, to_period: str) -> Any:
        """set_sample(self, from_period: str, to_period: str)"""
    def split_equation(self) -> tuple[str, str]:
        """split_equation(self) -> Tuple[str, str]"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class Equations(CythonIodeDatabase):
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def copy_from(self, input_files: str, names: str = ...) -> Any:
        """copy_from(self, input_files: str, names: str = '*')"""
    def estimate(self, from_period: str | Period, to_period: str | Period, list_eqs: str | list[str], maxit: int, epsilon: float) -> bool:
        """estimate(self, from_period: Union[str, Period], to_period: Union[str, Period], list_eqs: Union[str, List[str]], maxit: int, epsilon: float) -> bool"""
    def get_lec(self, name: str) -> str:
        """get_lec(self, name: str) -> str"""
    def get_print_equations_as(self) -> int:
        """get_print_equations_as(self) -> int"""
    def get_print_equations_lec_as(self) -> int:
        """get_print_equations_lec_as(self) -> int"""
    def initialize_subset(self, cython_instance: Equations, pattern: str, copy: bool) -> Equations:
        """initialize_subset(self, cython_instance: Equations, pattern: str, copy: bool) -> Equations"""
    def set_print_equations_as(self, value: str) -> Any:
        """set_print_equations_as(self, value: str)"""
    def set_print_equations_lec_as(self, value: str) -> Any:
        """set_print_equations_lec_as(self, value: str)"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class ExportFormats(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    CSV: ClassVar[ExportFormats] = ...
    DIF: ClassVar[ExportFormats] = ...
    RCSV: ClassVar[ExportFormats] = ...
    TSP: ClassVar[ExportFormats] = ...
    WKS: ClassVar[ExportFormats] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class HighToLowType(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    LAST: ClassVar[HighToLowType] = ...
    MEAN: ClassVar[HighToLowType] = ...
    SUM: ClassVar[HighToLowType] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class Identities(CythonIodeDatabase):
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def copy_from(self, input_files: str, names: str = ...) -> Any:
        """copy_from(self, input_files: str, names: str = '*')"""
    def execute(self, identities: str | list[str] = ..., from_period: str | Period = ..., to_period: str | Period = ..., var_files: str | list[str] = ..., scalar_files: str | list[str] = ..., trace: bool = ...) -> Any:
        """execute(self, identities: Union[str, List[str]] = None, from_period: Union[str, Period] = None, to_period: Union[str, Period] = None, var_files: Union[str, List[str]] = None, scalar_files: Union[str, List[str]] = None, trace: bool = False)"""
    def initialize_subset(self, cython_instance: Identities, pattern: str, copy: bool) -> Identities:
        """initialize_subset(self, cython_instance: Identities, pattern: str, copy: bool) -> Identities"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class Identity:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def equal(self, other: Identity) -> bool:
        """equal(self, other: Identity) -> bool"""
    def get_coefficients(self) -> list[str]:
        """get_coefficients(self) -> List[str]"""
    def get_variables(self) -> list[str]:
        """get_variables(self) -> List[str]"""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class ImportFormats(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    ASCII: ClassVar[ImportFormats] = ...
    BISTEL: ClassVar[ImportFormats] = ...
    DIF: ClassVar[ImportFormats] = ...
    GEM: ClassVar[ImportFormats] = ...
    NIS: ClassVar[ImportFormats] = ...
    PRN: ClassVar[ImportFormats] = ...
    ROT_ASCII: ClassVar[ImportFormats] = ...
    TXT: ClassVar[ImportFormats] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class IodeFileType(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    DIRECTORY: ClassVar[IodeFileType] = ...
    FILE_A2M: ClassVar[IodeFileType] = ...
    FILE_AAS: ClassVar[IodeFileType] = ...
    FILE_AGL: ClassVar[IodeFileType] = ...
    FILE_ANY: ClassVar[IodeFileType] = ...
    FILE_COMMENTS: ClassVar[IodeFileType] = ...
    FILE_CSV: ClassVar[IodeFileType] = ...
    FILE_DIF: ClassVar[IodeFileType] = ...
    FILE_EQUATIONS: ClassVar[IodeFileType] = ...
    FILE_HTML: ClassVar[IodeFileType] = ...
    FILE_IDENTITIES: ClassVar[IodeFileType] = ...
    FILE_LISTS: ClassVar[IodeFileType] = ...
    FILE_LOG: ClassVar[IodeFileType] = ...
    FILE_MIF: ClassVar[IodeFileType] = ...
    FILE_PRF: ClassVar[IodeFileType] = ...
    FILE_PS: ClassVar[IodeFileType] = ...
    FILE_REF: ClassVar[IodeFileType] = ...
    FILE_REP: ClassVar[IodeFileType] = ...
    FILE_RTF: ClassVar[IodeFileType] = ...
    FILE_SCALARS: ClassVar[IodeFileType] = ...
    FILE_SETTINGS: ClassVar[IodeFileType] = ...
    FILE_TABLES: ClassVar[IodeFileType] = ...
    FILE_TXT: ClassVar[IodeFileType] = ...
    FILE_VARIABLES: ClassVar[IodeFileType] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class IodeType(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    COMMENTS: ClassVar[IodeType] = ...
    EQUATIONS: ClassVar[IodeType] = ...
    IDENTITIES: ClassVar[IodeType] = ...
    LISTS: ClassVar[IodeType] = ...
    SCALARS: ClassVar[IodeType] = ...
    TABLES: ClassVar[IodeType] = ...
    VARIABLES: ClassVar[IodeType] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class Lists(CythonIodeDatabase):
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def copy_from(self, input_files: str, names: str = ...) -> Any:
        """copy_from(self, input_files: str, names: str = '*')"""
    def initialize_subset(self, cython_instance: Lists, pattern: str, copy: bool) -> Lists:
        """initialize_subset(self, cython_instance: Lists, pattern: str, copy: bool) -> Lists"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class LowToHighMethod(enum.StrEnum):
    __new__: ClassVar[Callable] = ...
    CUBIC_SPLINES: ClassVar[LowToHighMethod] = ...
    LINEAR: ClassVar[LowToHighMethod] = ...
    STEP: ClassVar[LowToHighMethod] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[str]] = ...
    _new_member_: ClassVar[Callable] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str:
        """Return a formatted version of the string as described by format_spec."""

class LowToHighType(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    FLOW: ClassVar[LowToHighType] = ...
    STOCK: ClassVar[LowToHighType] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class Period:
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def difference(self, other: Period) -> int:
        """difference(self, other: Period) -> int"""
    def get_nb_periods_per_year(self) -> int:
        """get_nb_periods_per_year(self) -> int"""
    def get_periodicity(self) -> str:
        """get_periodicity(self) -> str"""
    def get_step(self) -> int:
        """get_step(self) -> int"""
    def get_year(self) -> int:
        """get_year(self) -> int"""
    def shift(self, nb_periods: int) -> Period:
        """shift(self, nb_periods: int) -> Period"""
    def __eq__(self, other: object) -> bool:
        """Return self==value."""
    def __float__(self) -> float:
        """float(self)"""
    def __ge__(self, other: object) -> bool:
        """Return self>=value."""
    def __gt__(self, other: object) -> bool:
        """Return self>value."""
    def __le__(self, other: object) -> bool:
        """Return self<=value."""
    def __lt__(self, other: object) -> bool:
        """Return self<value."""
    def __ne__(self, other: object) -> bool:
        """Return self!=value."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class Sample:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def get_end(self) -> Period:
        """get_end(self) -> Period"""
    def get_nb_periods(self) -> int:
        """get_nb_periods(self) -> int"""
    def get_period_list(self, astype: str) -> list[str] | list[float]:
        """get_period_list(self, astype: str) -> Union[List[str], List[float]]"""
    def get_start(self) -> Period:
        """get_start(self) -> Period"""
    def index(self, period: str) -> int:
        """index(self, period: str) -> int"""
    def intersection(self, other_sample: Sample) -> Sample:
        """intersection(self, other_sample: Sample) -> Sample"""
    def is_undefined(self) -> bool:
        """is_undefined(self) -> bool"""
    def __eq__(self, other: object) -> bool:
        """Return self==value."""
    def __ge__(self, other: object) -> bool:
        """Return self>=value."""
    def __gt__(self, other: object) -> bool:
        """Return self>value."""
    def __le__(self, other: object) -> bool:
        """Return self<=value."""
    def __len__(self) -> int:
        """Return len(self)."""
    def __lt__(self, other: object) -> bool:
        """Return self<value."""
    def __ne__(self, other: object) -> bool:
        """Return self!=value."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class Scalar:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def equal(self, other: Scalar) -> bool:
        """equal(self, other: Scalar) -> bool"""
    def get_relax(self) -> float:
        """get_relax(self) -> float"""
    def get_std(self) -> float:
        """get_std(self) -> float"""
    def get_value(self) -> float:
        """get_value(self) -> float"""
    def set_relax(self, value: float) -> Any:
        """set_relax(self, value: float)"""
    def set_value(self, value: float) -> Any:
        """set_value(self, value: float)"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class Scalars(CythonIodeDatabase):
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def copy_from(self, input_files: str, names: str = ...) -> Any:
        """copy_from(self, input_files: str, names: str = '*')"""
    def initialize_subset(self, cython_instance: Scalars, pattern: str, copy: bool) -> Scalars:
        """initialize_subset(self, cython_instance: Scalars, pattern: str, copy: bool) -> Scalars"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class Simulation:
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def get_convergence_threshold(self) -> float:
        """get_convergence_threshold(self) -> float"""
    def get_debug(self) -> bool:
        """get_debug(self) -> bool"""
    def get_debug_newton(self) -> bool:
        """get_debug_newton(self) -> bool"""
    def get_initialization_method(self) -> str:
        """get_initialization_method(self) -> str"""
    def get_initialization_method_long(self) -> str:
        """get_initialization_method_long(self) -> str"""
    def get_max_nb_iterations(self) -> int:
        """get_max_nb_iterations(self) -> int"""
    def get_max_nb_iterations_newton(self) -> int:
        """get_max_nb_iterations_newton(self) -> int"""
    def get_nb_iterations(self, period: str) -> int:
        """get_nb_iterations(self, period: str) -> int"""
    def get_nb_passes(self) -> int:
        """get_nb_passes(self) -> int"""
    def get_norm(self, period: str) -> float:
        """get_norm(self, period: str) -> float"""
    def get_relax(self) -> float:
        """get_relax(self) -> float"""
    def get_sort_algorithm(self) -> str:
        """get_sort_algorithm(self) -> str"""
    def get_sort_algorithm_long(self) -> str:
        """get_sort_algorithm_long(self) -> str"""
    def model_calculate_SCC(self, nb_iterations: int, pre_name: str, inter_name: str, post_name: str, list_eqs: str) -> Any:
        """model_calculate_SCC(self, nb_iterations: int, pre_name: str, inter_name: str, post_name: str, list_eqs: str)"""
    def model_compile(self, list_eqs: str) -> Any:
        """model_compile(self, list_eqs: str)"""
    def model_exchange(self, list_exo: str) -> Any:
        """model_exchange(self, list_exo: str)"""
    def model_simulate(self, from_period: str, to_period: str, list_eqs: str) -> Any:
        """model_simulate(self, from_period: str, to_period: str, list_eqs: str)"""
    def model_simulate_SCC(self, from_period: str, to_period: str, pre_name: str, inter_name: str, post_name: str) -> Any:
        """model_simulate_SCC(self, from_period: str, to_period: str, pre_name: str, inter_name: str, post_name: str)"""
    def save_nb_iterations(self, var_name: str) -> bool:
        """save_nb_iterations(self, var_name: str) -> bool"""
    def save_norms(self, var_name: str) -> bool:
        """save_norms(self, var_name: str) -> bool"""
    def set_convergence_threshold(self, value: float) -> Any:
        """set_convergence_threshold(self, value: float)"""
    def set_debug(self, value: bool) -> Any:
        """set_debug(self, value: bool)"""
    def set_debug_newton(self, value: bool) -> Any:
        """set_debug_newton(self, value: bool)"""
    def set_initialization_method(self, value: int) -> Any:
        """set_initialization_method(self, value: int)"""
    def set_max_nb_iterations(self, value: int) -> Any:
        """set_max_nb_iterations(self, value: int)"""
    def set_max_nb_iterations_newton(self, value: int) -> Any:
        """set_max_nb_iterations_newton(self, value: int)"""
    def set_nb_passes(self, value: int) -> Any:
        """set_nb_passes(self, value: int)"""
    def set_relax(self, value: float) -> Any:
        """set_relax(self, value: float)"""
    def set_sort_algorithm(self, value: int) -> Any:
        """set_sort_algorithm(self, value: int)"""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class SimulationInitialization(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    ASIS: ClassVar[SimulationInitialization] = ...
    EXTRA: ClassVar[SimulationInitialization] = ...
    EXTRA_A: ClassVar[SimulationInitialization] = ...
    EXTRA_NA: ClassVar[SimulationInitialization] = ...
    TM1: ClassVar[SimulationInitialization] = ...
    TM1_A: ClassVar[SimulationInitialization] = ...
    TM1_NA: ClassVar[SimulationInitialization] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class SimulationSort(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    BOTH: ClassVar[SimulationSort] = ...
    CONNEX: ClassVar[SimulationSort] = ...
    NONE: ClassVar[SimulationSort] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class Table:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Initialize self.  See help(type(self)) for accurate signature."""
    def compute(self, generalized_sample: str, nb_decimals: int = ...) -> ComputedTable:
        """compute(self, generalized_sample: str, nb_decimals: int = 2) -> ComputedTable"""
    def get_coefficients(self) -> list[str]:
        """get_coefficients(self) -> List[str]"""
    def get_divider(self, divider: TableLine) -> TableLine:
        """get_divider(self, divider: TableLine) -> TableLine"""
    def get_graph_alignment(self) -> str:
        """get_graph_alignment(self) -> str"""
    def get_graph_axis(self) -> str:
        """get_graph_axis(self) -> str"""
    def get_gridx(self) -> str:
        """get_gridx(self) -> str"""
    def get_gridy(self) -> str:
        """get_gridy(self) -> str"""
    def get_language(self) -> str:
        """get_language(self) -> str"""
    def get_nb_columns(self) -> int:
        """get_nb_columns(self) -> int"""
    def get_nb_lines(self) -> int:
        """get_nb_lines(self) -> int"""
    def get_title(self) -> str:
        """get_title(self) -> str"""
    def get_variables(self) -> list[str]:
        """get_variables(self) -> List[str]"""
    def index(self, key: str) -> int:
        """index(self, key: str) -> int"""
    def insert(self, row: int, value: str | list[str] | tuple[str] | TableLine | TableLineType) -> Any:
        """insert(self, row: int, value: Union[str, List[str], Tuple[str], TableLine, TableLineType])"""
    def set_divider(self, value: list[str] | tuple[str]) -> Any:
        """set_divider(self, value: Union[List[str], Tuple[str]])"""
    def set_graph_alignment(self, value: TableGraphAlign | str) -> Any:
        """set_graph_alignment(self, value: Union[TableGraphAlign, str])"""
    def set_graph_axis(self, value: TableGraphAxis | str) -> Any:
        """set_graph_axis(self, value: Union[TableGraphAxis, str])"""
    def set_gridx(self, value: TableGraphGrid | str) -> Any:
        """set_gridx(self, value: Union[TableGraphGrid, str])"""
    def set_gridy(self, value: TableGraphGrid | str) -> Any:
        """set_gridy(self, value: Union[TableGraphGrid, str])"""
    def set_language(self, value: TableLang | str) -> Any:
        """set_language(self, value: Union[TableLang, str])"""
    def set_title(self, value: str) -> Any:
        """set_title(self, value: str)"""
    def update_owner_database(self) -> Any:
        """update_owner_database(self)"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class TableCell:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def get_align(self) -> str:
        """get_align(self) -> str"""
    def get_bold(self) -> bool:
        """get_bold(self) -> bool"""
    def get_cell_type(self) -> str:
        """get_cell_type(self) -> str"""
    def get_coefficients(self) -> list[str]:
        """get_coefficients(self) -> List[str]"""
    def get_italic(self) -> bool:
        """get_italic(self) -> bool"""
    def get_nb_columns(self) -> int:
        """get_nb_columns(self) -> int"""
    def get_underline(self) -> bool:
        """get_underline(self) -> bool"""
    def get_variables(self) -> list[str]:
        """get_variables(self) -> List[str]"""
    def set_align(self, value: TableCellAlign | str) -> Any:
        """set_align(self, value: Union[TableCellAlign, str])"""
    def set_bold(self, value: bool) -> Any:
        """set_bold(self, value: bool)"""
    def set_italic(self, value: bool) -> Any:
        """set_italic(self, value: bool)"""
    def set_underline(self, value: bool) -> Any:
        """set_underline(self, value: bool)"""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class TableCellAlign(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    CENTER: ClassVar[TableCellAlign] = ...
    DECIMAL: ClassVar[TableCellAlign] = ...
    LEFT: ClassVar[TableCellAlign] = ...
    RIGHT: ClassVar[TableCellAlign] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableCellFont(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    BOLD: ClassVar[TableCellFont] = ...
    ITALIC: ClassVar[TableCellFont] = ...
    NORMAL: ClassVar[TableCellFont] = ...
    UNDERLINE: ClassVar[TableCellFont] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableCellType(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    LEC: ClassVar[TableCellType] = ...
    STRING: ClassVar[TableCellType] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableGraphAlign(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    CENTER: ClassVar[TableGraphAlign] = ...
    LEFT: ClassVar[TableGraphAlign] = ...
    RIGHT: ClassVar[TableGraphAlign] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableGraphAxis(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    LOG: ClassVar[TableGraphAxis] = ...
    PERCENT: ClassVar[TableGraphAxis] = ...
    SEMILOG: ClassVar[TableGraphAxis] = ...
    VALUES: ClassVar[TableGraphAxis] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableGraphGrid(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    MAJOR: ClassVar[TableGraphGrid] = ...
    MINOR: ClassVar[TableGraphGrid] = ...
    NONE: ClassVar[TableGraphGrid] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableGraphType(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    BAR: ClassVar[TableGraphType] = ...
    LINE: ClassVar[TableGraphType] = ...
    SCATTER: ClassVar[TableGraphType] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableLang(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    DUTCH: ClassVar[TableLang] = ...
    ENGLISH: ClassVar[TableLang] = ...
    FRENCH: ClassVar[TableLang] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class TableLine:
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def get_axis_left(self) -> bool:
        """get_axis_left(self) -> bool"""
    def get_graph_type(self) -> str:
        """get_graph_type(self) -> str"""
    def get_line_type(self) -> str:
        """get_line_type(self) -> str"""
    def set_axis_left(self, value: bool) -> Any:
        """set_axis_left(self, value: bool)"""
    def set_graph_type(self, value: int) -> Any:
        """set_graph_type(self, value: int)"""
    def size(self) -> int:
        """size(self) -> int"""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class TableLineType(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    CELL: ClassVar[TableLineType] = ...
    DATE: ClassVar[TableLineType] = ...
    FILES: ClassVar[TableLineType] = ...
    MODE: ClassVar[TableLineType] = ...
    SEP: ClassVar[TableLineType] = ...
    TITLE: ClassVar[TableLineType] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class Tables(CythonIodeDatabase):
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def copy_from(self, input_files: str, names: str = ...) -> Any:
        """copy_from(self, input_files: str, names: str = '*')"""
    def cpp_tables_print_to_file(self, filepath: str, names: list[str], format: str, generalized_sample: str, nb_decimals: int) -> Any:
        """cpp_tables_print_to_file(self, filepath: str, names: List[str], format: str, generalized_sample: str, nb_decimals: int)"""
    def get_print_tables_as(self) -> int:
        """get_print_tables_as(self) -> int"""
    def get_title(self, name: str) -> str:
        """get_title(self, name: str) -> str"""
    def initialize_subset(self, cython_instance: Tables, pattern: str, copy: bool) -> Tables:
        """initialize_subset(self, cython_instance: Tables, pattern: str, copy: bool) -> Tables"""
    def set_print_tables_as(self, value: int) -> Any:
        """set_print_tables_as(self, value: int)"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class Variables(CythonIodeDatabase):
    convert_file: ClassVar[method] = ...
    export_as_file: ClassVar[method] = ...
    __pyx_vtable__: ClassVar[PyCapsule] = ...
    def __init__(self, *args, **kwargs) -> None:
        """Create and return a new object.  See help(type) for accurate signature."""
    def binary_op_numpy(self, data: np.ndarray, op: BinaryOperation, names: list[str], nb_periods: int, copy_self: bool) -> Variables:
        """binary_op_numpy(self, data: np.ndarray, op: BinaryOperation, names: List[str], nb_periods: int, copy_self: bool) -> Variables"""
    def binary_op_scalar(self, other: float, op: BinaryOperation, copy_self: bool) -> Variables:
        """binary_op_scalar(self, other: float, op: BinaryOperation, copy_self: bool) -> Variables"""
    def binary_op_variables(self, cython_other: Variables, op: BinaryOperation, names: list[str], copy_self: bool) -> Variables:
        """binary_op_variables(self, cython_other: Variables, op: BinaryOperation, names: List[str], copy_self: bool) -> Variables"""
    def copy_from(self, input_files: str, from_period: str, to_period: str, names: str) -> Any:
        """copy_from(self, input_files: str, from_period: str, to_period: str, names: str)"""
    def execute_RAS(self, pattern: str, xdim: str, ydim: str, ref_period: str, sum_period: str, max_nb_iterations: int, epsilon: float) -> bool:
        """execute_RAS(self, pattern: str, xdim: str, ydim: str, ref_period: str, sum_period: str, max_nb_iterations: int, epsilon: float) -> bool"""
    def extrapolate(self, method: int, from_period: str, to_period: str, variables_list: str) -> Any:
        """extrapolate(self, method: int, from_period: str, to_period: str, variables_list: str)"""
    def from_numpy(self, data: np.ndarray, vars_names: list[str], new_vars: set[str], t_first_period: int, t_last_period: int) -> Any:
        """from_numpy(self, data: np.ndarray, vars_names: List[str], new_vars: Set[str], t_first_period: int, t_last_period: int)"""
    def get_first_period(self) -> Period:
        """get_first_period(self) -> Period"""
    def get_is_subset_over_periods(self) -> bool:
        """get_is_subset_over_periods(self) -> bool"""
    def get_last_period(self) -> Period:
        """get_last_period(self) -> Period"""
    def get_mode(self) -> str:
        """get_mode(self) -> str"""
    def get_sample(self) -> Sample:
        """get_sample(self) -> Sample"""
    def get_threshold(self) -> float:
        """get_threshold(self) -> float"""
    def high_to_low(self, type_of_series: int, filepath: str, var_list: str) -> Any:
        """high_to_low(self, type_of_series: int, filepath: str, var_list: str)"""
    def initialize_subset(self, cython_instance: Variables, pattern: str, copy: bool, first_period: Period | None, last_period: Period | None) -> Variables:
        """initialize_subset(self, cython_instance: Variables, pattern: str, copy: bool, first_period: Optional[Period], last_period: Optional[Period]) -> Variables"""
    def low_to_high(self, type_of_series: int, method: str, filepath: str, var_list: str) -> Any:
        """low_to_high(self, type_of_series: int, method: str, filepath: str, var_list: str)"""
    def periods_subset(self, from_period: str, to_period: str, as_float: bool) -> list[str | float]:
        """periods_subset(self, from_period: str, to_period: str, as_float: bool) -> List[Union[str, float]]"""
    def seasonal_adjustment(self, input_file: str, eps_test: float, series: str) -> Any:
        """seasonal_adjustment(self, input_file: str, eps_test: float, series: str)"""
    def set_mode(self, value: int) -> Any:
        """set_mode(self, value: int)"""
    def set_sample(self, from_period: str, to_period: str) -> Any:
        """set_sample(self, from_period: str, to_period: str)"""
    def set_threshold(self, value: float) -> bool:
        """set_threshold(self, value: float) -> bool"""
    def to_numpy(self) -> np.ndarray:
        """to_numpy(self) -> np.ndarray"""
    def trend_correction(self, input_file: str, lambda_: float, series: str, log: bool) -> Any:
        """trend_correction(self, input_file: str, lambda_: float, series: str, log: bool)"""
    def __hash__(self) -> int:
        """Return hash(self)."""
    def __reduce__(self):
        """__reduce_cython__(self)"""

class VarsMode(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    DIFF: ClassVar[VarsMode] = ...
    GROWTH_RATE: ClassVar[VarsMode] = ...
    LEVEL: ClassVar[VarsMode] = ...
    Y0Y_DIFF: ClassVar[VarsMode] = ...
    Y0Y_GROWTH_RATE: ClassVar[VarsMode] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

class WriteFileExt(enum.IntEnum):
    __new__: ClassVar[Callable] = ...
    A2M: ClassVar[WriteFileExt] = ...
    CSV: ClassVar[WriteFileExt] = ...
    DUMMY: ClassVar[WriteFileExt] = ...
    GDI: ClassVar[WriteFileExt] = ...
    HTML: ClassVar[WriteFileExt] = ...
    MIF: ClassVar[WriteFileExt] = ...
    RTF: ClassVar[WriteFileExt] = ...
    _generate_next_value_: ClassVar[Callable] = ...
    _member_map_: ClassVar[dict] = ...
    _member_names_: ClassVar[list] = ...
    _member_type_: ClassVar[type[int]] = ...
    _unhashable_values_: ClassVar[list] = ...
    _use_args_: ClassVar[bool] = ...
    _value2member_map_: ClassVar[dict] = ...
    def __format__(self, *args, **kwargs) -> str: ...

def __reduce_cython__(self) -> Any:
    """__reduce_cython__(self)"""
def __setstate_cython__(self, __pyx_state) -> Any:
    """__setstate_cython__(self, __pyx_state)"""
def alloc_doc_loop() -> Any:
    """alloc_doc_loop()"""
def always_continue(value: bool) -> Any:
    """always_continue(value: bool)"""
def c_api_error_as_exception(value: bool) -> Any:
    """c_api_error_as_exception(value: bool)"""
def cython_build_command_functions_list(group: int, gui: bool) -> list[str]:
    """cython_build_command_functions_list(group: int, gui: bool) -> List[str]"""
def cython_build_lec_functions_list() -> list[str]:
    """cython_build_lec_functions_list() -> List[str]"""
def cython_build_report_functions_list() -> list[str]:
    """cython_build_report_functions_list() -> List[str]"""
def cython_dickey_fuller_test(scalars_db: Scalars, lec: str, drift: bool, trend: bool, order: int) -> Scalars:
    """cython_dickey_fuller_test(scalars_db: Scalars, lec: str, drift: bool, trend: bool, order: int) -> Scalars"""
def cython_dynamic_adjustment(method: int, eqs: str, c1: str, c2: str) -> str:
    """cython_dynamic_adjustment(method: int, eqs: str, c1: str, c2: str) -> str"""
def cython_enable_msgs() -> Any:
    """cython_enable_msgs()"""
def cython_execute_command(command: str) -> Any:
    """cython_execute_command(command: str)"""
def cython_execute_lec(lec: str, period: str | int = ...) -> float | list[float]:
    """cython_execute_lec(lec: str, period: Union[str, int] = None) -> Union[float, List[float]]"""
def cython_execute_report(filepath: str, parameters: str) -> Any:
    """cython_execute_report(filepath: str, parameters: str)"""
def cython_increment_time(n: int) -> Any:
    """cython_increment_time(n: int)"""
def cython_is_NA(value: float) -> bool:
    """cython_is_NA(value: float) -> bool"""
def cython_load_extra_files(extra_files: str | Path | list[str | Path]) -> list[Path]:
    """cython_load_extra_files(extra_files: Union[str, Path, List[Union[str, Path]]]) -> List[Path]"""
def cython_reset_extra_files() -> Any:
    """cython_reset_extra_files()"""
def cython_set_time(period: str) -> Any:
    """cython_set_time(period: str)"""
def cython_suppress_msgs() -> Any:
    """cython_suppress_msgs()"""
def cython_write(txt: str) -> bool:
    """cython_write(txt: str) -> bool"""
def cython_write_close() -> Any:
    """cython_write_close()"""
def cython_write_code_block(level: int) -> Any:
    """cython_write_code_block(level: int)"""
def cython_write_destination(filename: str, file_type: int) -> Any:
    """cython_write_destination(filename: str, file_type: int)"""
def cython_write_enum(level: int) -> Any:
    """cython_write_enum(level: int)"""
def cython_write_flush() -> bool:
    """cython_write_flush() -> bool"""
def cython_write_page_footer(arg: str) -> Any:
    """cython_write_page_footer(arg: str)"""
def cython_write_page_header(arg: str) -> Any:
    """cython_write_page_header(arg: str)"""
def cython_write_paragraph(level: int) -> Any:
    """cython_write_paragraph(level: int)"""
def cython_write_title(level: int) -> Any:
    """cython_write_title(level: int)"""
def finish_cli() -> Any:
    """finish_cli()"""
def get_total_allocated_memory() -> int:
    """get_total_allocated_memory() -> int"""
def initialize_cli() -> Any:
    """initialize_cli()"""
def iode_confirm(message: str) -> Any:
    """iode_confirm(message: str)"""
def iode_error(message: str) -> Any:
    """iode_error(message: str)"""
def iode_msg(message: str) -> Any:
    """iode_msg(message: str)"""
def iode_msgbox(title: str, message: str) -> int:
    """iode_msgbox(title: str, message: str) -> int"""
def iode_panic() -> Any:
    """iode_panic()"""
def iode_pause() -> Any:
    """iode_pause()"""
def iode_warning(message: str) -> Any:
    """iode_warning(message: str)"""
def register_super_function(name) -> Any:
    """register_super_function(name)"""
def set_A2M_preferences(escape_char: str = ..., cell_separator: str = ..., define_char: str = ..., command_char: str = ..., append: bool = ..., preserve_spaces: bool = ..., preserve_linefeed: bool = ..., default_paragraph: str = ..., graph_width: int = ..., graph_height: int = ..., graph_background_color: str = ..., graph_background_brush: int = ..., graph_box: int = ...) -> Any:
    """set_A2M_preferences(escape_char: str = '\\\\', cell_separator: str = '@', define_char: str = '&', command_char: str = '.', append: bool = False, preserve_spaces: bool = False, preserve_linefeed: bool = False, default_paragraph: str = '', graph_width: int = 160, graph_height: int = 100, graph_background_color: str = 'b', graph_background_brush: int = 0, graph_box: int = 0)"""
def set_HTML_preferences(font_size: int = ..., font_family: str = ..., table_font_family: str = ..., font_incr: int = ..., table_font_size: int = ..., paragraph_numbers: bool = ..., table_border_width: bool = ..., table_use_color: bool = ..., generate_toc: bool = ..., body_tag: str = ..., title: str = ...) -> Any:
    """set_HTML_preferences(font_size: int = 10, font_family: str = 'H', table_font_family: str = 'H', font_incr: int = 2, table_font_size: int = 10, paragraph_numbers: bool = False, table_border_width: bool = False, table_use_color: bool = False, generate_toc: bool = False, body_tag: str = '', title: str = '')"""
def set_MIF_preferences(font_size: int = ..., font_incr: int = ..., font_family: str = ..., table_font_family: str = ..., table_font_size: int = ..., table_use_color: bool = ..., table_first_col_width: int = ..., table_other_col_width: int = ..., table_split: bool = ..., table_width: int = ..., table_outside_borders: bool = ..., table_horizontal_lines: bool = ..., table_vertical_lines: bool = ..., image_ref_in_text: bool = ...) -> Any:
    """set_MIF_preferences(font_size: int = 10, font_incr: int = 2, font_family: str = 'H', table_font_family: str = 'H', table_font_size: int = 10, table_use_color: bool = False, table_first_col_width: int = 60, table_other_col_width: int = 15, table_split: bool = False, table_width: int = 165, table_outside_borders: bool = False, table_horizontal_lines: bool = False, table_vertical_lines: bool = False, image_ref_in_text: bool = False)"""
def set_RTF_preferences(font_size: int = ..., font_incr: int = ..., font_family: str = ..., table_font_family: str = ..., table_font_size: int = ..., paragraph_numbers: bool = ..., table_use_color: bool = ..., table_first_col_width: int = ..., table_other_col_width: int = ..., table_width: int = ..., table_outside_borders: bool = ..., table_horizontal_lines: bool = ..., table_vertical_lines: bool = ..., table_split_tables: bool = ..., prepare_for_hcw: bool = ..., compress_help: bool = ..., generate_toc: bool = ..., help_title: str = ..., copyright: str = ...) -> Any:
    """set_RTF_preferences(font_size: int = 10, font_incr: int = 2, font_family: str = 'H', table_font_family: str = 'H', table_font_size: int = 10, paragraph_numbers: bool = False, table_use_color: bool = False, table_first_col_width: int = 60, table_other_col_width: int = 15, table_width: int = 165, table_outside_borders: bool = False, table_horizontal_lines: bool = False, table_vertical_lines: bool = False, table_split_tables: bool = False, prepare_for_hcw: bool = False, compress_help: bool = False, generate_toc: bool = False, help_title: str = '', copyright: str = '')"""
def set_log_file_cli(log_file: str) -> Any:
    """set_log_file_cli(log_file: str)"""
def set_printer_preferences(font_size: int = ..., font_family: str = ..., table_font_family: str = ..., font_incr: int = ..., table_font_size: int = ..., paragraph_numbers: bool = ..., left_margin: int = ..., right_margin: int = ..., top_margin: int = ..., bottom_margin: int = ..., black_and_white: bool = ..., table_border_width: int = ..., table_break: bool = ..., table_new_page: bool = ..., graph_new_page: bool = ..., table_shading: bool = ..., page_header: str = ..., page_footer: str = ..., ask_prompt: bool = ...) -> Any:
    """set_printer_preferences(font_size: int = 10, font_family: str = 'H', table_font_family: str = 'H', font_incr: int = 2, table_font_size: int = 10, paragraph_numbers: bool = False, left_margin: int = 10, right_margin: int = 10, top_margin: int = 10, bottom_margin: int = 10, black_and_white: bool = True, table_border_width: int = 0, table_break: bool = False, table_new_page: bool = False, graph_new_page: bool = False, table_shading: bool = False, page_header: str = '', page_footer: str = '', ask_prompt: bool = True)"""
def skip_msg_box(value: bool) -> Any:
    """skip_msg_box(value: bool)"""
def skip_pause(value: bool) -> Any:
    """skip_pause(value: bool)"""
