"""
discourse-toll — L402 micropayment middleware for discourse.

Trust-weighted, progressive pricing for forums and APIs.
"""

from .pricing import PricingEngine, PricingConfig, PriceResult
from .macaroon import create_macaroon, verify_macaroon, encode_macaroon, decode_macaroon
from .trust import TrustResolver, static_resolver, api_resolver
from .wallet import WalletProvider, MockWallet
from .middleware import create_toll, TollConfig
from .client import DiscourseClient, create_discourse_client

__version__ = "0.1.0"

__all__ = [
    # Main API
    "create_toll",
    "create_discourse_client",
    "TollConfig",
    "DiscourseClient",
    # Building blocks
    "PricingEngine",
    "PricingConfig",
    "PriceResult",
    "TrustResolver",
    "WalletProvider",
    "MockWallet",
    # Trust resolvers
    "static_resolver",
    "api_resolver",
    # Macaroon utilities
    "create_macaroon",
    "verify_macaroon",
    "encode_macaroon",
    "decode_macaroon",
]
