"""目録の集計（読み取りのみ）."""

import sqlite3


def count_kinds(conn: sqlite3.Connection) -> dict[str, int]:
    """種類の定義の件数を分類（`asset`・`annotation`）ごとに数える．

    Args:
        conn: 目録への接続（マイグレーション適用済み）．

    Returns:
        分類 → 件数．
    """
    rows = conn.execute("SELECT category, COUNT(*) FROM kinds GROUP BY category ORDER BY category")
    return {category: count for category, count in rows}
