"""``zerobit.gate`` — Official Python SDK for the 0Gate ramp API.

Example::

    from zerobit.gate import GateClient

    client = GateClient(api_key="sk_test_...")
    session = client.sessions.create({
        "amount": "100.00",
        "currency": "EUR",
        "return_url": "https://example.com/done",
    })
"""

from .client import GateClient
from .errors import (
    APIConnectionError,
    APIError,
    AuthenticationError,
    IdempotencyError,
    InvalidRequestError,
    PermissionError,
    GateError,
    RateLimitError,
    TimeoutError,
    WebhookSignatureError,
)
from .resources import EmbedResource, SessionsResource
from .webhooks import WebhooksResource

__version__ = "0.1.0"

__all__ = [
    "__version__",
    "GateClient",
    "SessionsResource",
    "EmbedResource",
    "WebhooksResource",
    # Errors
    "GateError",
    "AuthenticationError",
    "PermissionError",
    "InvalidRequestError",
    "IdempotencyError",
    "RateLimitError",
    "APIError",
    "APIConnectionError",
    "TimeoutError",
    "WebhookSignatureError",
]
