def METHOD_NAME(self, **kwargs) -> WasIterator:
    """
    Export Web Application Scan Results based on filters applied.
    Args:
        single_filter (tuple):
            A single filter to apply to the scan configuration search. This is a tuple with three elements -
            field, operator, and value in that order.
        and_filter (list): An array of filters that must all be satisfied. This is a list of tuples with three elements -
            field, operator, and value in that order.
        or_filter (list): An array of filters where at least one must be satisfied. This is a list of tuples with three elements -
            field, operator, and value in that order.
    Returns:
        WasIterator
    Examples:
        Passing AND filter to the API
        >>> was_iterator = tio.was.export(
        ...     and_filter=[
        ...         ("scans_started_at", "gte", "2023/03/24"),
        ...         ("scans_status", "contains", ["completed"])
        ...     ]
        ... )
        ...
        ... for finding in was_iterator:
        ...     print(finding)
    """
    # Get scan configuration iterator.
    scan_config = self._search_scan_configurations(**kwargs)
    # Iterate through the scan configs and collect the parent scan IDs and the finalized_at param.
    # This finalized_at property belonging to the parent will be passed down to its children's findings.
    parent_scan_ids_with_finalized_at = [_parent_id_with_finalized_at(sc) for sc in scan_config if sc]
    # initialize parent_scan_ids_with_finalized_at if it's empty.
    if not parent_scan_ids_with_finalized_at:
        parent_scan_ids_with_finalized_at = []
    self._log.debug(f"We have {len(parent_scan_ids_with_finalized_at)} parent scan ID(s) to process.")
    # Fetch the target scans info for all the above parent scan IDs, and flatten it.
    # We need to flatten because, each parent ID will have multiple target scans.
    self._log.debug(f"Fetching Target scan IDs for {len(parent_scan_ids_with_finalized_at)} parent scan ID(s)")
    target_scans = [scan for p in parent_scan_ids_with_finalized_at for scan in
                    self._get_target_scan_ids_for_parent(p)]
    # Iterate through the target scans info and collect the target scan IDs.
    target_scan_ids_with_parent_finalized_at = [_target_id_with_parent_finalized_at(ts) for ts in target_scans if ts]
    self._log.debug(f"We have {len(target_scan_ids_with_parent_finalized_at)} target scan(s) to process.")
    return WasIterator(
        api=self._api.was,
        target_scan_ids=target_scan_ids_with_parent_finalized_at
    )