def __init__(self,
                 exclude_types: List[type] = [],
                 exclude_patterns: List[str] = [],
                 exclude_empty_parent=True):
        """
        exclude_types - list of types to exclude 
        exclude_patterns - list of regex paterns to exclude
        exclude_empty_parent - drop whole parent object if all its childrens where excluded
        """
        self.exclude_types = tuple(exclude_types)
        self.exclude_empty_parent = exclude_empty_parent,
        # TODO: using jsonpath may simplify the way it works
        self.exclude_regxs = [re.compile(pattern) for pattern in exclude_patterns]

        exclude_types - list of types to exclude 
        exclude_patterns - list of regex paterns to exclude
        exclude_empty_parent - drop whole parent object if all its childrens where excluded
        
src/robusta/core/sinks/file/object_traverser.py