def METHOD_NAME(
    export_file: "ExportFile",
    scope: Dict[str, Union[str, dict]],
    export_info: Dict[str, list],
    file_type: str,
    delimiter: str = ",",
):
    from ...graphql.product.filters import ProductFilter
    file_name = get_filename("product", file_type)
    queryset = get_queryset(Product, ProductFilter, scope)
    (
        export_fields,
        file_headers,
        data_headers,
    ) = get_product_export_fields_and_headers_info(export_info)
    temporary_file = create_file_with_headers(file_headers, delimiter, file_type)
    export_products_in_batches(
        queryset,
        export_info,
        set(export_fields),
        data_headers,
        delimiter,
        temporary_file,
        file_type,
    )
    save_csv_file_in_export_file(export_file, temporary_file, file_name)
    temporary_file.close()
    send_export_download_link_notification(export_file, "products")
    manager = get_plugins_manager()
    manager.product_export_completed(export_file)