"""
Synor Bridge SDK for Python

Cross-chain asset transfers with lock-mint and burn-unlock patterns.

Example:
    >>> from synor_bridge import SynorBridge
    >>>
    >>> bridge = SynorBridge(api_key="your-api-key")
    >>>
    >>> # Bridge tokens from Synor to Ethereum
    >>> transfer = await bridge.bridge_to(
    ...     asset="SYNR",
    ...     amount="1000000000000000000",
    ...     target_chain="ethereum",
    ...     target_address="0x..."
    ... )
    >>> print(f"Transfer {transfer.id}: {transfer.status}")
"""

from .types import (
    BridgeConfig,
    Chain,
    ChainId,
    Asset,
    AssetType,
    WrappedAsset,
    Transfer,
    TransferStatus,
    TransferDirection,
    TransferFilter,
    LockReceipt,
    LockProof,
    LockOptions,
    BurnReceipt,
    BurnProof,
    BurnOptions,
    MintOptions,
    UnlockOptions,
    FeeEstimate,
    ExchangeRate,
    ValidatorSignature,
    SignedTransaction,
    BridgeError,
)
from .client import SynorBridge

__version__ = "0.1.0"
__all__ = [
    "SynorBridge",
    "BridgeConfig",
    "Chain",
    "ChainId",
    "Asset",
    "AssetType",
    "WrappedAsset",
    "Transfer",
    "TransferStatus",
    "TransferDirection",
    "TransferFilter",
    "LockReceipt",
    "LockProof",
    "LockOptions",
    "BurnReceipt",
    "BurnProof",
    "BurnOptions",
    "MintOptions",
    "UnlockOptions",
    "FeeEstimate",
    "ExchangeRate",
    "ValidatorSignature",
    "SignedTransaction",
    "BridgeError",
]
