from _typeshed import Incomplete
from nxs_analysis_tools import Scissors as Scissors, load_data as load_data
from nxs_analysis_tools.datareduction import load_transform as load_transform, reciprocal_lattice_params as reciprocal_lattice_params
from nxs_analysis_tools.fitting import LinecutModel as LinecutModel

class TempDependence:
    sample_directory: Incomplete
    xlabel: str
    datasets: Incomplete
    temperatures: Incomplete
    scissors: Incomplete
    linecuts: Incomplete
    linecutmodels: Incomplete
    def __init__(self, sample_directory=None) -> None: ...
    def set_temperatures(self, temperatures) -> None: ...
    def find_temperatures(self) -> None: ...
    def set_sample_directory(self, path) -> None: ...
    def initialize(self) -> None: ...
    def set_data(self, temperature, data) -> None: ...
    def load_transforms(self, temperatures_list=None, exclude_temperatures=None, print_tree: bool = True, use_nxlink: bool = False) -> None: ...
    def load_datasets(self, file_ending: str = 'hkli.nxs', temperatures_list=None, exclude_temperatures=None, print_tree: bool = True) -> None: ...
    def get_sample_directory(self): ...
    def clear_datasets(self) -> None: ...
    def set_lattice_params(self, lattice_params) -> None: ...
    def set_window(self, window, verbose: bool = False) -> None: ...
    def set_center(self, center) -> None: ...
    def cut_data(self, center=None, window=None, axis=None, verbose: bool = False): ...
    def plot_linecuts(self, ax=None, vertical_offset: int = 0, **kwargs) -> None: ...
    def plot_linecuts_heatmap(self, ax=None, **kwargs): ...
    def highlight_integration_window(self, temperature=None, **kwargs): ...
    def plot_integration_window(self, temperature=None, **kwargs): ...
    def set_model_components(self, model_components) -> None: ...
    def set_param_hint(self, *args, **kwargs) -> None: ...
    def params_set(self, name, **kwargs) -> None: ...
    def make_params(self) -> None: ...
    def guess(self) -> None: ...
    def print_initial_params(self) -> None: ...
    def plot_initial_guess(self) -> None: ...
    def fit(self, verbose: bool = False) -> None: ...
    def plot_fit(self, mdheadings: bool = False, **kwargs) -> None: ...
    def overlay_fits(self, numpoints=None, vertical_offset: int = 0, cmap: str = 'viridis', ax=None, data_kwargs=None, fit_kwargs=None) -> None: ...
    def fit_peak_simple(self) -> None: ...
    def plot_order_parameter(self, param_name: str = 'peakheight', ax=None, **kwargs): ...
    def print_fit_report(self) -> None: ...
