"""Plug & Charge adapter for ISO 15118 PnC handshake flows.

This package provides a small abstraction around the Hubject sandbox APIs so
OCPP handlers can delegate Plug & Charge authorization logic without pulling in
Hubject-specific concerns.  The public entry point mirrors the PnC handshake
by exposing :meth:`PnCAdapter.pnc_authorize`, which accepts the contract
certificate payload from the wallbox and returns a lightweight
:class:`AuthorizationDecision`.

The implementation intentionally keeps its footprint small and avoids global
imports so the adapter can be dropped into or removed from deployments with
minimal side effects.
"""

from __future__ import annotations

from .adapter import AuthorizationDecision, PnCAdapter

__all__ = ["AuthorizationDecision", "PnCAdapter"]
