- proc finalize_csi(c: CSI) {...}{.raises: [], tags: [].}
- 
- proc open(csi: var CSI; base_path: string): bool {...}{.raises: [], tags: [].}
- 
- proc new_csi(seq_col: int; start_col: int; end_col: int; one_based: bool;
            levels: int = 5; min_shift: int = 14): CSI {...}{.raises: [IOError],
    tags: [WriteIOEffect].}
- 
- proc add(c: CSI; tid: int; start: int; stop: int; offset: uint64): int {...}{.inline, raises: [],
    tags: [].}
- 
- proc finish(c: CSI; offset: uint64) {...}{.raises: [], tags: [].}
- 
- proc save(c: CSI; path: string) {...}{.raises: [], tags: [].}
- 
- proc idx_set_meta(csi: var CSI; idx: ptr hts_idx_t; tc: ptr tbx_conf_t;
                 chroms: seq[string]): int {...}{.raises: [], tags: [].}
- 
- proc set_meta(c: var CSI): int {...}{.raises: [], tags: [].}
-