"""Thin psycopg 3 helpers. Every query on a tenant table must include tenant_id."""
import psycopg
from psycopg.rows import dict_row
from psycopg.types.json import Jsonb

from .settings import settings

__all__ = ["connect", "Jsonb"]


def connect(dsn: str | None = None, autocommit: bool = False) -> psycopg.Connection:
    return psycopg.connect(dsn or settings.database_url, row_factory=dict_row, autocommit=autocommit)
