def filter_illumina_coverage(classification, min_coverage):
    """filters accessions that are not FSM,ISM,NIC to only include accessions where 
    the minimum coverage of all junctions is at least min_coverage. If illumina data is 
    not provided then returns original classification

    Args:
        classification (pandas DataFrame): sqanti classification file
        min_coverage (int): minimum coverage all junctions must meet if not FSM,ISM,NIC

    Returns:
        pandas DataFrame: filtered classification
    """
    structural_categories_to_not_filter = ['novel_in_catalog','incomplete-splice_match', 'full-splice_match', ]
    if classification['min_cov'].isnull().values.all():
        return classification
    else:
        classification = classification[
            (classification['structural_category'].isin(structural_categories_to_not_filter)) | 
            (classification['min_cov'] >= min_coverage)]

        return classification