def METHOD_NAME(
    self,
    include_props: bool = True,
    include_params: bool = True,
):
    data = {
        'hash': self.hash,
    }
    if include_props:
        # TODO [GA]: Auto collect props based on StructuredRunMixin:
        #  - Exclude created_at, updated_at, finalized_at auto-populated fields
        #  - Collect list of representations in case of ModelMappedCollection's
        data['name'] = self.name
        data['description'] = self.description
        data['archived'] = self.archived
        data['creation_time'] = self.creation_time
        data['end_time'] = self.end_time
        data['active'] = self.active
        data['duration'] = self.duration
    if include_params:
        from aim._core.storage import treeutils
        for path, val in treeutils.unfold_tree(self[...],
                                               unfold_array=False,
                                               depth=3):
            s = ''
            for key in path:
                if isinstance(key, str):
                    s += f'.{key}' if len(s) else f'{key}'
                else:
                    s += f'[{key}]'
            if isinstance(val, (tuple, list, dict)):
                val = json.dumps(val)
            if s not in data.keys():
                data[s] = val
    import pandas as pd
    df = pd.DataFrame(data, index=[0])
    return df