Counsel exportée depuis counsel.ts. Chaque méthode correspond à un seul endpoint de l’API publique de counsel. Toutes les méthodes sont asynchrones et lèvent une exception sur les réponses non 2xx. La méthode placeBet lève également une exception si le XRP Ledger renvoie un résultat autre que tesSUCCESS.
Interfaces
Les interfaces TypeScript suivantes sont exportées directement depuiscounsel.ts. Importez-les avec la classe pour accéder de façon typée aux valeurs de retour.
CounselOptions
BetIntent
Payment est le type de transaction non signée du paquet xrpl. tx est passé directement à client.autofill() et wallet.sign() à l’intérieur de placeBet.
constructor(opts: CounselOptions)
Instancie le client. Aucune connexion réseau n’est établie au moment de la construction.
URL de base du déploiement de counsel. Utilisez
https://api.counsel.markets pour l’instance hébergée.URL du noeud WebSocket XRPL utilisé par
placeBet lors de la connexion au ledger. Par défaut, le testnet XRPL (wss://s.altnet.rippletest.net:51233).markets()
MarketV1 incluent : id, question, family, phase, status ("open" | "resolved" | "void"), pool_account, fee_rate, bet_cutoff, resolution_time, total_xrp, total_drops, et un tableau outcomes.
Chaque issue dans outcomes porte : index, label, destination_tag, pool_drops, pool_xrp, bets, implied_prob, et payout_per_unit.
Retourne
Le SourceTag que counsel attend sur toutes les transactions Payment. Appliqué automatiquement par
placeBet.market(id: string)
L’objet marché brut. La forme correspond à une seule entrée du tableau de
markets().betIntent(id, account, outcome, amountXrp)
Votre adresse XRPL (par exemple
"rYourAddress..."). Utilisée comme champ Account dans le Payment non signé.Index (base zéro) de l’issue sur laquelle vous voulez parier. Correspond à
OutcomeV1.index dans le tableau outcomes du marché.positions(address: string)
Tableau d’objets position, un par pari placé par l’adresse. Chaque entrée inclut le marché, l’issue, la mise, et l’état de règlement.
leaderboard()
La charge utile du classement. Le schéma peut évoluer ; traitez-la comme un objet brut tant qu’une forme stable n’est pas publiée.
placeBet(seed, id, outcome, amountXrp)
Wallet.fromSeed(seed), complète automatiquement les champs de séquence du ledger via client.autofill(), signe avec wallet.sign(), soumet avec client.submitAndWait(), et vérifie tesSUCCESS avant de retourner. Ouvre une connexion WebSocket XRPL pour la durée de l’appel, puis se déconnecte. Le seed n’est jamais envoyé au serveur counsel.
Le seed du wallet XRPL du parieur. Passé à
Wallet.fromSeed() entièrement côté client. Seule l’adresse account dérivée est envoyée à l’API counsel.