Type Definitions ================ .. module:: microscopic_gating.types This module defines type aliases and protocols used throughout the package. Type Aliases ------------ .. autodata:: ArrayLike :annotation: Protocols --------- .. autoclass:: Isotherm :members: :member-order: bysource .. autoclass:: ContactProbability :members: :member-order: bysource Data Classes ------------ .. autoclass:: SitePairCount :members: M, N_acc :exclude-members: N_pair :member-order: bysource :show-inheritance: Type Hierarchy -------------- The type system is designed for flexibility: - **ArrayLike** - Any array-like input (numpy arrays, lists, scalars) - **Isotherm** - Protocol for any object with a ``theta(phi)`` method - **ContactProbability** - Protocol for geometry factors This allows easy extension with custom isotherms or geometry models.