Fleeexdocs

Types

Les types TypeScript exportés : options, réponses et utilitaires.

Tous les types sont exportés depuis la racine du paquet :

import type {
  FleeexClientOptions,
  BalanceResponse,
  ConnectionStatus,
  GetConnectionOptions,
  UsageSummary,
  FetchLike,
} from "@fleeex/sdk";

FleeexClientOptions

Options du constructeur. Voir le tableau des options et ses annotations.

interface FleeexClientOptions {
  apiKey: string;
  userId: string;
  baseURL?: string;
  onPaymentRequired?: (error: PaymentRequiredError) => void | Promise<void>;
  fetch?: FetchLike;
  maxRetries?: number;
  defaultHeaders?: Record<string, string>;
}

BalanceResponse

Renvoyé par getBalance().

interface BalanceResponse {
  balanceMicros: number; // micro-unités EUR : 1_000_000 = 1,00 €
  currency: "EUR";
}

ConnectionStatus

Renvoyé par getConnection().

interface ConnectionStatus {
  connected: boolean; // une correspondance (app, utilisateur) → portefeuille existe
  funded: boolean; // le portefeuille résolu a un solde positif
  connectUrl: string; // lien d'onboarding signé à ouvrir
}

GetConnectionOptions

Argument de getConnection().

interface GetConnectionOptions {
  // URL http(s) absolue vers laquelle renvoyer l'utilisateur une fois connecté et
  // approvisionné. Doit correspondre exactement à l'une des URI de redirection
  // enregistrées sur l'application, sinon l'appel échoue en 400.
  redirectUri?: string;
}

UsageSummary

Renvoyé par getUsageSummary(). La période est un intervalle semi-ouvert [periodStart, periodEnd) en UTC.

interface UsageSummary {
  spentMicros: number; // micro-unités EUR sur la période
  totalTokens: number;
  requestCount: number;
  currency: "EUR";
  periodStart: string; // ISO 8601, inclus
  periodEnd: string; // ISO 8601, exclu
}

FetchLike

La forme acceptée par l'option fetch.

type FetchLike = typeof fetch;