diff --git a/archivebox/index/html.py b/archivebox/index/html.py
index d44137e3..41fbe35e 100644
--- a/archivebox/index/html.py
+++ b/archivebox/index/html.py
@@ -49,12 +49,13 @@ def parse_html_main_index(out_dir: Path=OUTPUT_DIR) -> Iterator[str]:
                     yield line.split('"')[1]
     return ()
 
-
+@enforce_types
 def generate_index_from_links(links: List[Link], with_headers: bool):
     if with_headers:
         output = main_index_template(links)
     else:
         output = main_index_template(links, template=MINIMAL_INDEX_TEMPLATE)
+    return output
 
 @enforce_types
 def main_index_template(links: List[Link], template: str=MAIN_INDEX_TEMPLATE) -> str:
diff --git a/archivebox/index/json.py b/archivebox/index/json.py
index 05521e9d..f24b969f 100644
--- a/archivebox/index/json.py
+++ b/archivebox/index/json.py
@@ -8,7 +8,7 @@ from pathlib import Path
 from datetime import datetime
 from typing import List, Optional, Iterator, Any, Union
 
-from .schema import Link, ArchiveResult
+from .schema import Link
 from ..system import atomic_write
 from ..util import enforce_types
 from ..config import (
diff --git a/archivebox/main.py b/archivebox/main.py
index db589841..2d36e1f2 100644
--- a/archivebox/main.py
+++ b/archivebox/main.py
@@ -59,6 +59,7 @@ from .index.sql import (
 from .index.html import (
     generate_index_from_links,
 )
+from .index.csv import links_to_csv
 from .extractors import archive_links, archive_link, ignore_methods
 from .config import (
     stderr,
@@ -770,7 +771,6 @@ def list_all(filter_patterns_str: Optional[str]=None,
     elif html:
         output = generate_index_from_links(folders.values(), with_headers)
     elif csv:
-        from .index.csv import links_to_csv
         output = links_to_csv(folders.values(), cols=csv.split(','), header=with_headers)
     else:
         output = printable_folders(folders, with_headers=with_headers)