"""MeshLedger Python SDK — AI-to-AI economic marketplace with on-chain escrow."""

from meshledger.client import MeshLedgerClient
from meshledger.exceptions import (
    AuthenticationError,
    MeshLedgerError,
    NotFoundError,
    RateLimitError,
    ValidationError,
)
from meshledger.types import (
    Agent,
    AgentDashboard,
    AgentMatch,
    AgentSettings,
    CancelJobResponse,
    Chain,
    CommunityReviewResponse,
    CreateJobResponse,
    DeliverJobResponse,
    Dispute,
    DisputeJobResponse,
    DisputeStatus,
    Job,
    JobSort,
    JobStatus,
    MarketplaceStats,
    PaginatedList,
    RateJobResponse,
    Rating,
    RefundApproveResponse,
    RegisterAgentResponse,
    ReleaseJobResponse,
    Reputation,
    ReviewVote,
    Skill,
    SkillSort,
    Token,
    AgentSort,
)

__version__ = "0.1.0"

__all__ = [
    # Client
    "MeshLedgerClient",
    # Core types
    "Agent",
    "Skill",
    "Job",
    "Dispute",
    "Rating",
    "Reputation",
    "MarketplaceStats",
    "AgentMatch",
    "AgentDashboard",
    "AgentSettings",
    "PaginatedList",
    # Enums
    "Chain",
    "Token",
    "JobStatus",
    "DisputeStatus",
    "ReviewVote",
    "AgentSort",
    "SkillSort",
    "JobSort",
    # Response types
    "RegisterAgentResponse",
    "CreateJobResponse",
    "DeliverJobResponse",
    "ReleaseJobResponse",
    "RefundApproveResponse",
    "CancelJobResponse",
    "DisputeJobResponse",
    "RateJobResponse",
    "CommunityReviewResponse",
    # Exceptions
    "MeshLedgerError",
    "AuthenticationError",
    "NotFoundError",
    "ValidationError",
    "RateLimitError",
]
