class_docstr: Provides scoped management of :class:`.AsyncSession` objects.
  
  See the section :ref:`asyncio_scoped_session` for usage details.
  
  .. versionadded:: 1.4.19
class_docstr_tok: ["Provides","scoped","management","of",":","class",":","`",".AsyncSession","`","objects",".","See","the","section",":","ref",":","`","asyncio_scoped_session","`","for","usage","details",".","..","versionadded",":",":","1.4.19"]
docstr: Return an :class:`_asyncio.AsyncSessionTransaction` object.
  
  .. container:: class_bases
  
      Proxied for the :class:`_asyncio.AsyncSession` class on
      behalf of the :class:`_asyncio.scoping.async_scoped_session` class.
  
  The underlying :class:`_orm.Session` will perform the
  "begin" action when the :class:`_asyncio.AsyncSessionTransaction`
  object is entered::
  
      async with async_session.begin():
          # .. ORM transaction is begun
  
  Note that database IO will not normally occur when the session-level
  transaction is begun, as database transactions begin on an
  on-demand basis.  However, the begin block is async to accommodate
  for a :meth:`_orm.SessionEvents.after_transaction_create`
  event hook that may perform IO.
  
  For a general description of ORM begin, see
  :meth:`_orm.Session.begin`.
code: def begin(self) -> AsyncSessionTransaction:
      r"""Return an :class:`_asyncio.AsyncSessionTransaction` object.
  
      .. container:: class_bases
  
          Proxied for the :class:`_asyncio.AsyncSession` class on
          behalf of the :class:`_asyncio.scoping.async_scoped_session` class.
  
      The underlying :class:`_orm.Session` will perform the
      "begin" action when the :class:`_asyncio.AsyncSessionTransaction`
      object is entered::
  
          async with async_session.begin():
              # .. ORM transaction is begun
  
      Note that database IO will not normally occur when the session-level
      transaction is begun, as database transactions begin on an
      on-demand basis.  However, the begin block is async to accommodate
      for a :meth:`_orm.SessionEvents.after_transaction_create`
      event hook that may perform IO.
  
      For a general description of ORM begin, see
      :meth:`_orm.Session.begin`.
  
  
      """  # noqa: E501
  
      return self._proxied.begin()
  
imports: from __future__ import annotations
  from typing import Any
  from typing import Callable
  from typing import Generic
  from typing import Iterable
  from typing import Iterator
  from typing import Optional
  from typing import overload
  from typing import Sequence
  from typing import Tuple
  from typing import Type
  from typing import TYPE_CHECKING
  from typing import TypeVar
  from typing import Union
  from .session import _AS
  from .session import async_sessionmaker
  from .session import AsyncSession
  from ...None import exc
  from ...None import util
  from ...orm.session import Session
  from ...util import create_proxy_methods
  from ...util import ScopedRegistry
  from ...util import warn
  from ...util import warn_deprecated
label_desc: Use image node_id 9 for calling the async_scoped_session obj's underlying member method code with example usage: obj.begin() and returns: self