from typing import Any from openai.resources.chat.chat import Chat from openai.types.chat import ChatCompletion class WalletBalance: sol: float usdc: float def __init__(self, sol: float, usdc: float) -> None: ... class TopUpQuote: payment_address: str qr: str amount_sol: float amount_usdc: float def __init__( self, payment_address: str, qr: str, amount_sol: float, amount_usdc: float, ) -> None: ... class CostEstimate: model: str tokens: int lamports: int sol: float def __init__(self, model: str, tokens: int, lamports: int, sol: float) -> None: ... class RedundantRequestResult: redundancy: int majority_response: ChatCompletion responses: list[ChatCompletion] def __init__( self, redundancy: int, majority_response: ChatCompletion, responses: list[ChatCompletion], ) -> None: ... class _WalletClient: def balance(self) -> WalletBalance: ... def top_up(self, *, amount_sol: float = 0.0, amount_usdc: float = 0.0) -> TopUpQuote: ... class _ModelsClient: def available(self) -> list[dict[str, float | str]]: ... class Client: api_key: str base_url: str chat: Chat wallet: _WalletClient models: _ModelsClient def __init__(self, *, api_key: str, base_url: str = "https://api.meshnet.ai") -> None: ... def estimate_cost(self, *, model: str, tokens: int) -> CostEstimate: ... def request( self, *, model: str, messages: list[dict[str, Any]], redundancy: int = 1, **params: Any, ) -> RedundantRequestResult: ...