@coinlist-co/react 0.12.2-rc.eea3be6 → 0.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,24 +1,23 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode, MouseEventHandler } from 'react';
3
- import { A as AuthorizationCode, C as CodeVerifier, W as WalletError, E as EthereumChain, a as AssetSymbol, O as OfferVaultContract, b as EvmContractAddress, B as BlockchainAmount, c as CentrifugeVaultBuyTransaction, d as CentrifugeClaimDirection, e as CentrifugeNamespace, f as CoinListTokenSaleOfferDetail, g as OfferOptionId, S as StablecoinSymbol, P as Participation, h as CoinListTokenSaleNamespace, i as OfferSwapContract, j as OndoBuyTransaction, k as OndoSellTransaction, l as OndoNamespace, m as OndoSwapTransactionCore, n as OrderBookSide, o as OfferId, p as SwapQuote, q as Bps, r as EvmWalletAddress, s as SuperstateSwapNamespace, R as RequirementsNamespace, t as Requirement, u as WalletChallengeType, v as OfferOptionAddress, w as WalletsNamespace, x as Config, y as OAuthAccessToken, z as OffersNamespace, D as Erc20Namespace, T as TokensNamespace, F as Offer, G as TokenMetadata, H as OfferDetail, I as Erc20Asset, J as CentrifugeVaultLegId, K as CentrifugeVaultOfferDetail, L as Seconds, M as AsyncOfferDetail, N as RequirementStatusInfo, Q as KycLevelName, U as RequirementType, V as RequirementStatusValue, X as RequirementId, Y as PinoLoggerOptions, Z as Logger, _ as CentrifugeVaultStatus, $ as CentrifugeVaultRef, a0 as BuildOndoBuyParams, a1 as OndoSwapOfferDetail, a2 as BuildOndoSellParams, a3 as OndoQuote, a4 as OndoQuoteSize, a5 as OndoTradingStatus, a6 as AssetDecimals, a7 as SuperstateSwapOfferDetail, a8 as CentrifugeVaultLeg, a9 as CentrifugeVault, aa as OfferOptionAddressId, ab as DocumentSubmission, ac as TokenIdentifier } from '../time-qZW4aYYp.js';
3
+ import { A as AuthorizationGrant, W as WalletError, E as EthereumChain, a as AssetSymbol, O as OfferVaultContract, b as EvmContractAddress, B as BlockchainAmount, C as CentrifugeVaultBuyTransaction, c as CentrifugeClaimDirection, d as CentrifugeNamespace, e as CoinListTokenSaleOfferDetail, f as OfferOptionId, S as StablecoinSymbol, P as Participation, g as CoinListTokenSaleNamespace, h as OfferSwapContract, i as OndoBuyTransaction, j as OndoSellTransaction, k as OndoNamespace, l as OndoSwapTransactionCore, m as OrderBookSide, n as OfferId, o as SwapQuote, p as Bps, q as EvmWalletAddress, r as SuperstateSwapNamespace, R as RequirementsNamespace, s as Requirement, t as WalletChallengeType, u as OfferOptionAddress, v as WalletsNamespace, w as Config, x as OAuthAccessToken, y as OffersNamespace, z as Erc20Namespace, T as TokensNamespace, D as Offer, F as TokenMetadata, G as OfferDetail, H as Erc20Asset, I as CentrifugeVaultLegId, J as CentrifugeVaultOfferDetail, K as Seconds, L as AsyncOfferDetail, M as RequirementStatusInfo, N as KycLevelName, Q as RequirementType, U as RequirementStatusValue, V as RequirementId, X as PinoLoggerOptions, Y as Logger, Z as AuthorizationCode, _ as CodeVerifier, $ as CentrifugeVaultStatus, a0 as CentrifugeVaultRef, a1 as BuildOndoBuyParams, a2 as OndoSwapOfferDetail, a3 as BuildOndoSellParams, a4 as OndoQuote, a5 as OndoQuoteSize, a6 as OndoTradingStatus, a7 as AssetDecimals, a8 as SuperstateSwapOfferDetail, a9 as CentrifugeVaultLeg, aa as CentrifugeVault, ab as ParticipationId, ac as ParticipationStatus, ad as EpochMillis, ae as OfferOptionAddressId, af as DocumentSubmission, ag as TokenIdentifier } from '../time-ChSGmKZe.js';
4
4
  import { Hash } from 'viem';
5
- import { E as EvmWallet, C as ConnectWallet, W as WalletSelection, F as FormattedAmountAssetUi, T as TxExplorerUrl, A as AssetIconUrl, a as WalletLabelResolver, S as ShortenedWalletAddress, b as FormattedPercentUi, N as NonEmptyArray, c as TokenRegistrySnapshot } from '../token-registry-snapshot-CMrhSBun.js';
5
+ import { E as EvmWallet, C as ConnectWallet, W as WalletSelection, F as FormattedAmountAssetUi, T as TxExplorerUrl, A as AssetIconUrl, a as WalletLabelResolver, S as ShortenedWalletAddress, b as FormattedPercentUi, N as NonEmptyArray, c as TokenRegistrySnapshot } from '../token-registry-snapshot-DMubXr2c.js';
6
6
 
7
7
  type AuthState = 'unknown' | 'logged-in' | 'logged-out';
8
8
  /** Discriminated error reasons from {@link CoinListClient.completeOAuth}. */
9
9
  type OAuthClientErrorReason = 'user_canceled' | 'missing_state' | 'invalid_state' | 'missing_code' | 'missing_code_verifier';
10
- type OAuthClientResult = {
10
+ type OAuthClientResult = ({
11
11
  type: 'ok';
12
- code: AuthorizationCode;
13
- codeVerifier: CodeVerifier;
14
- } | {
12
+ } & AuthorizationGrant) | {
15
13
  type: 'error';
16
14
  reason: OAuthClientErrorReason;
17
15
  };
18
16
 
19
17
  /**
20
18
  * Everything the browser half of the SDK knows about the current user's
21
- * session, and the OAuth 2.0 + PKCE flow that establishes one.
19
+ * session, and the OAuth 2.0 + PKCE flow that establishes one - e.g.
20
+ * `coinlist.auth.getState()` or `coinlist.auth.startOAuth()`.
22
21
  *
23
22
  * The SDK never holds a client secret in the browser: {@link startOAuth}
24
23
  * redirects the user to CoinList, and {@link completeOAuth} only parses and
@@ -311,8 +310,8 @@ type ClaimCentrifugeVaultParams = {
311
310
  * broadcast. The two halves stay beside it. The checkout runs them itself so
312
311
  * it can drop a build that finishes after the user has left, and a host that
313
312
  * wants to show the calldata before broadcasting can do the same. The amount
314
- * step calls neither. The request settles later. Broadcasting it does not
315
- * buy shares.
313
+ * step calls neither, and like the builders they wrap they are not free to
314
+ * poll. The request settles later. Broadcasting it does not buy shares.
316
315
  *
317
316
  * @alpha
318
317
  */
@@ -424,8 +423,9 @@ type ExecuteTokenSaleParams = {
424
423
  /**
425
424
  * The client-side token-sale namespace: everything the shared
426
425
  * {@link CoinListTokenSaleNamespace} reads/writes over the API, plus the
427
- * on-chain flow that drives a wallet (`execute`). The flow takes the wallet
428
- * and addresses per call; the namespace supplies the participation writes and
426
+ * on-chain flow that drives a caller-supplied `EvmWallet` (`execute`) -
427
+ * e.g. `coinlist.tokenSale.execute({ ... })`. The flow takes the wallet and
428
+ * addresses per call; the namespace supplies the participation writes and
429
429
  * (via the ERC-20 namespace) the allowance read it depends on.
430
430
  */
431
431
  interface ClientCoinListTokenSaleNamespace extends CoinListTokenSaleNamespace {
@@ -564,7 +564,12 @@ type ExecuteOndoSwapParams<T> = {
564
564
 
565
565
  /**
566
566
  * The Ondo namespace plus the halves of placing an order that need a wallet,
567
- * and so cannot live on the shared namespace.
567
+ * and so cannot live on the shared namespace: `prepareBuy` / `prepareSell`
568
+ * (approve, then commit a firm quote) and `executeSwap` (broadcast it).
569
+ *
570
+ * Like the builders they wrap, the prepare methods spend an attestation, so
571
+ * unlike the reads they are not free to poll: call one when the user commits
572
+ * to an amount, never on a timer.
568
573
  *
569
574
  * Preparing and executing are two calls rather than one because the flow is
570
575
  * two user decisions: the trader commits to an amount (approving the spend),
@@ -733,7 +738,8 @@ type AuthorizeWalletParams = {
733
738
  /**
734
739
  * The client-side swap namespace: everything the shared
735
740
  * {@link SuperstateSwapNamespace} reads/writes over the API, plus the on-chain flows
736
- * that drive a wallet (`execute`, `authorizeWallet`). The flows take the
741
+ * that drive a caller-supplied wallet (`execute`, `authorizeWallet`) and
742
+ * return a step-tagged result rather than throwing. The flows take the
737
743
  * wallet and addresses per call; the namespace itself supplies the API reads
738
744
  * they depend on.
739
745
  */
@@ -774,7 +780,7 @@ interface ClientRequirementsNamespace extends RequirementsNamespace {
774
780
  }
775
781
 
776
782
  /**
777
- * Getting the user to a human at CoinList.
783
+ * Getting the user to a human at CoinList - `coinlist.support.contact()`.
778
784
  *
779
785
  * This namespace is client-only: it opens a browser tab and has no
780
786
  * `CoinListServer` counterpart. No method here requires authentication.
@@ -835,7 +841,8 @@ type ConnectWalletParams = {
835
841
 
836
842
  /**
837
843
  * The wallets namespace plus the one operation that needs the host's wallet:
838
- * proving ownership of it and binding it to an offer option, in one call.
844
+ * proving ownership of it and binding it to an offer option, in one call -
845
+ * `coinlist.wallets.connect({ wallet, offerId, offerOptionId })`.
839
846
  *
840
847
  * The shared {@link WalletsNamespace} already has both halves -
841
848
  * `createOwnershipChallenge` and `connectExternal` - but a signature has to
@@ -894,96 +901,27 @@ interface ClientConfig extends Config {
894
901
  * when the user is not authenticated.
895
902
  */
896
903
  interface CoinListClient {
897
- /**
898
- * Authentication: the current {@link AuthState}, and the browser half of the
899
- * OAuth 2.0 + PKCE flow — e.g. `coinlist.auth.startOAuth()`.
900
- */
904
+ /** Auth state and the browser half of OAuth - see {@link ClientAuthNamespace}. */
901
905
  readonly auth: ClientAuthNamespace;
902
- /**
903
- * The offer catalogue: listing offers and reading one in full — e.g.
904
- * `coinlist.offers.get(offerId)`.
905
- */
906
+ /** The offer catalogue, e.g. `coinlist.offers.get(offerId)` - see {@link OffersNamespace}. */
906
907
  readonly offers: OffersNamespace;
907
- /**
908
- * What the user must satisfy before participating in an offer: the
909
- * checklist and its statuses, identity verification (KYC), and tax-document
910
- * signing — e.g. `coinlist.requirements.statuses(offerId)`.
911
- *
912
- * Also exposes `handle(requirement)`, which sends the user to the CoinList
913
- * page that satisfies a requirement.
914
- */
908
+ /** What a user must satisfy to participate - see {@link ClientRequirementsNamespace}. */
915
909
  readonly requirements: ClientRequirementsNamespace;
916
- /**
917
- * The user's external wallets: proving ownership, binding a wallet to an
918
- * offer option, and managing those bindings — e.g.
919
- * `coinlist.wallets.connect({ wallet, offerId, offerOptionId })`.
920
- */
910
+ /** Wallet ownership proofs and offer-option bindings - see {@link ClientWalletsNamespace}. */
921
911
  readonly wallets: ClientWalletsNamespace;
922
- /**
923
- * Generic ERC-20 reads (token allowance and balance) shared across the
924
- * on-chain flows — e.g. `coinlist.erc20.getBalance({ ... })`.
925
- */
912
+ /** Generic ERC-20 allowance and balance reads - see {@link Erc20Namespace}. */
926
913
  readonly erc20: Erc20Namespace;
927
- /**
928
- * Token-sale operations: listing/reading/recording participations, plus the
929
- * on-chain `execute` flow that submits the ERC-20 approval and records the
930
- * participation over a caller-supplied {@link EvmWallet} — e.g.
931
- * `coinlist.tokenSale.execute({ ... })`.
932
- *
933
- * `execute` drives a caller-supplied wallet and returns a step-tagged result
934
- * rather than throwing.
935
- */
914
+ /** Token-sale participations and the on-chain purchase - see {@link ClientCoinListTokenSaleNamespace}. */
936
915
  readonly tokenSale: ClientCoinListTokenSaleNamespace;
937
- /**
938
- * On-chain swap operations: quoting a swap, reading swap-contract state, and
939
- * allow-listing a proven wallet — e.g.
940
- * `coinlist.superstate.getOutputToken({ contractAddress, chain })`.
941
- *
942
- * The on-chain flows (`execute`, `authorizeWallet`) additionally drive a
943
- * caller-supplied wallet.
944
- */
916
+ /** Superstate swaps - see {@link ClientSuperstateSwapNamespace}. */
945
917
  readonly superstate: ClientSuperstateSwapNamespace;
946
- /**
947
- * Ondo swaps: whether an asset is tradable right now and what it costs - e.g.
948
- * `coinlist.ondo.getQuote({ ... })` - plus placing an order, in the two
949
- * halves the flow actually has: `prepareBuy` / `prepareSell` (approve, then
950
- * commit a firm quote) and `executeSwap` (broadcast it).
951
- *
952
- * Preparing is two methods because the directions approve different tokens -
953
- * the funding coin on a purchase, the asset on a sale - and commit to
954
- * different terms; broadcasting is one, because it reads calldata and a
955
- * deadline and knows about neither.
956
- *
957
- * The reads are free to poll while the user edits an order. Preparing is
958
- * not: committing a quote spends an attestation.
959
- *
960
- * No CoinList fee is applied to a read quote; see
961
- * {@link ClientOndoNamespace}.
962
- */
918
+ /** Ondo swap quotes and orders - see {@link ClientOndoNamespace}. */
963
919
  readonly ondo: ClientOndoNamespace;
964
- /**
965
- * Centrifuge vault deposits and claims: the vault-wide ordering gate, each
966
- * wallet's position, the two halves of placing a request, and the claim
967
- * that settles a filled one.
968
- *
969
- * The reads are free to poll. `prepareBuy` and `placeRequest` are not.
970
- * Broadcasting places a request. It does not buy shares.
971
- */
920
+ /** Centrifuge vault requests and claims - see {@link ClientCentrifugeNamespace}. */
972
921
  readonly centrifuge: ClientCentrifugeNamespace;
973
- /**
974
- * Token display metadata (name, symbol, decimals, logos) from CoinList's
975
- * public token registry, keyed by chain + contract address — e.g.
976
- * `coinlist.tokens.get({ chain, address })` for an entry of
977
- * `Offer.tokens`, or `coinlist.tokens.list()` for the whole
978
- * catalogue in one request.
979
- *
980
- * Public and unauthenticated: unlike the other namespaces, its methods never
981
- * require a logged-in user.
982
- */
922
+ /** Public token display metadata - see {@link TokensNamespace}. */
983
923
  readonly tokens: TokensNamespace;
984
- /**
985
- * Contacting CoinList support — `coinlist.support.contact()`.
986
- */
924
+ /** Contacting CoinList support - see {@link ClientSupportNamespace}. */
987
925
  readonly support: ClientSupportNamespace;
988
926
  /**
989
927
  * Calls the provided {@link ClientConfig.getAccessToken} lambda to determine
@@ -1319,8 +1257,9 @@ type CentrifugeOrderPlaced = {
1319
1257
  * participation is recorded.
1320
1258
  *
1321
1259
  * It is a commitment, not a purchase. The sale pulls the payment through the
1322
- * approval and allocates tokens when it settles, so `participation.status`
1323
- * starts out pending.
1260
+ * approval shortly after and holds it, and allocates tokens - refunding what
1261
+ * they do not use - when it settles. So `participation.status` starts out
1262
+ * pending; `ClaimContainer` follows it from there.
1324
1263
  *
1325
1264
  * @alpha
1326
1265
  */
@@ -1931,6 +1870,9 @@ declare function useCentrifugeVaultClaimViewModel({ offer, wallets, walletLabel,
1931
1870
  * `CheckoutConfig`: a provider with nothing the host must decide asks for
1932
1871
  * nothing. Per-integration, not per-offer: a host builds it once.
1933
1872
  *
1873
+ * `coinlist::token_sale` has no entry: its card only follows participations,
1874
+ * so there is nothing for a host to decide or to hear about.
1875
+ *
1934
1876
  * @alpha
1935
1877
  */
1936
1878
  type ClaimConfig = {
@@ -1949,14 +1891,15 @@ type CentrifugeVaultClaimConfig = {
1949
1891
  /** @alpha */
1950
1892
  interface ClaimContainerProps {
1951
1893
  /**
1952
- * The async offer whose positions to show. Its `type` decides which
1894
+ * The async offer whose second leg to show. Its `type` decides which
1953
1895
  * provider renders. Narrow an `OfferDetail` with `AsyncOfferDetail.is`.
1954
1896
  */
1955
1897
  offer: AsyncOfferDetail;
1956
1898
  /**
1957
1899
  * The wallets to read positions for and claim from, and the host's
1958
1900
  * external-wallet connector. Pass `externalAdapter: null` to hide the
1959
- * connect affordance.
1901
+ * connect affordance. A token sale's participations are listed for the
1902
+ * whole account, whichever wallet paid, so it reads none of these.
1960
1903
  */
1961
1904
  wallets: WalletSelection;
1962
1905
  /**
@@ -1978,13 +1921,20 @@ interface ClaimContainerProps {
1978
1921
  }
1979
1922
  /**
1980
1923
  * The plug-and-play claim card: hand it an async offer and it renders the
1981
- * right provider's positions - what is pending, what is claimable - and the
1982
- * claim that collects them.
1924
+ * right provider's second leg.
1983
1925
  *
1984
1926
  * The second leg of an async trade. The user placed a request earlier, the
1985
- * fund fills it on its own schedule, and they come back - days or weeks later
1986
- * - to claim. So the card is its own entry on the offer page rather than a
1987
- * checkout step.
1927
+ * other side fills it on its own schedule, and they come back - days or
1928
+ * weeks later - to see how it went. So the card is its own entry on the offer
1929
+ * page rather than a checkout step. What it shows is the provider's:
1930
+ *
1931
+ * - `centrifuge::vault`: each wallet's pending and claimable positions, and
1932
+ * the claim that collects a filled one.
1933
+ * - `coinlist::token_sale`: the user's participations and where each one
1934
+ * stands. Nothing is claimed - the sale pushes the tokens it allocates
1935
+ * once it settles, and refunds what it does not use - and the list is
1936
+ * polled, so an order placed in `CheckoutContainer` on the same page shows
1937
+ * up on its own.
1988
1938
  *
1989
1939
  * Only the matching provider's container is mounted, so its viewmodel is the
1990
1940
  * only one that runs. The `switch` is exhaustive against
@@ -2653,6 +2603,70 @@ interface UseCentrifugeVaultStatusResult {
2653
2603
  */
2654
2604
  declare function useCentrifugeVaultStatus(options: UseCentrifugeVaultStatusOptions): UseCentrifugeVaultStatusResult;
2655
2605
 
2606
+ /**
2607
+ * The state of the participations read.
2608
+ *
2609
+ * Stale-preserving: a failed poll with a list in hand keeps it, so a flaky
2610
+ * tick never empties the user's orders. `ERROR` therefore means nothing has
2611
+ * answered yet - or the session ended, which drops the list rather than
2612
+ * leaving a signed-out user looking at it. `DISABLED` means the hook was
2613
+ * switched off before an answer arrived, so nothing is in flight.
2614
+ */
2615
+ type LoadCoinListTokenSaleParticipationsState = {
2616
+ type: 'DISABLED';
2617
+ } | {
2618
+ type: 'LOADING';
2619
+ } | {
2620
+ type: 'ERROR';
2621
+ reason: LoadErrorReason;
2622
+ } | {
2623
+ type: 'CONTENT';
2624
+ participations: Participation[];
2625
+ };
2626
+ interface UseCoinListTokenSaleParticipationsOptions {
2627
+ /**
2628
+ * Participations pre-fetched on the server (e.g. via
2629
+ * `CoinListServer#tokenSale.list()`). When provided, the hook opens on them
2630
+ * and skips the first client-side read; the poll and
2631
+ * {@link UseCoinListTokenSaleParticipationsResult.refetch} still read.
2632
+ */
2633
+ data?: Participation[];
2634
+ /**
2635
+ * When `false`, the hook sends no request and holds no timer. A seeded or
2636
+ * already-fetched `CONTENT` survives; otherwise the hook reports
2637
+ * `DISABLED`. Defaults to `true`.
2638
+ */
2639
+ enabled?: boolean;
2640
+ /** How often to read again while the page is visible. Defaults to 15s. */
2641
+ pollInterval?: Seconds;
2642
+ }
2643
+ interface UseCoinListTokenSaleParticipationsResult {
2644
+ participationsState: LoadCoinListTokenSaleParticipationsState;
2645
+ /**
2646
+ * Reads again now: the recovery path after an `ERROR`, and the way past a
2647
+ * server seed. No-op while disabled.
2648
+ */
2649
+ refetch: () => void;
2650
+ }
2651
+ /**
2652
+ * Loads, and keeps reading, the current user's CoinList token-sale
2653
+ * participations, optionally for one offer.
2654
+ *
2655
+ * A participation moves on the backend's clock - its approval is verified,
2656
+ * its payment committed in a batch, any excess refunded after the sale
2657
+ * settles - and none of it is announced, so the list is polled while the page
2658
+ * is visible and read once more when it becomes visible again. The poll is
2659
+ * also how an order placed through `CheckoutContainer` on the same page shows
2660
+ * up here, with nothing for the host to wire.
2661
+ *
2662
+ * Returns `LOADING` while CoinList is initializing or the first read is in
2663
+ * flight, and `CONTENT` once a read has answered - an empty list included.
2664
+ * Returns `ERROR` with:
2665
+ * - `not-authenticated` when the user has to sign in first
2666
+ * - `generic-error` for any other failure before a list was in hand
2667
+ */
2668
+ declare function useCoinListTokenSaleParticipations(offerId?: OfferId, options?: UseCoinListTokenSaleParticipationsOptions): UseCoinListTokenSaleParticipationsResult;
2669
+
2656
2670
  /**
2657
2671
  * UI models every checkout provider needs. Provider-specific models stay in
2658
2672
  * that provider's `use{X}ViewModel.types`; these live here because Ondo and
@@ -3242,68 +3256,14 @@ interface UseCentrifugeBuyCheckoutViewModelResult {
3242
3256
  */
3243
3257
  declare function useCentrifugeBuyCheckoutViewModel({ offer, chain, wallets, enabled, onOrderPlaced, }: UseCentrifugeBuyCheckoutViewModelOptions): UseCentrifugeBuyCheckoutViewModelResult;
3244
3258
 
3245
- type LoadParticipationsReason = LoadErrorReason;
3246
- /**
3247
- * The state of the participations read. `DISABLED` means the hook was
3248
- * switched off before an answer arrived, so nothing is in flight.
3249
- */
3250
- type LoadParticipationsState = {
3251
- type: 'DISABLED';
3252
- } | {
3253
- type: 'LOADING';
3254
- } | {
3255
- type: 'ERROR';
3256
- reason: LoadParticipationsReason;
3257
- } | {
3258
- type: 'CONTENT';
3259
- participations: Participation[];
3260
- };
3261
- interface UseParticipationsOptions {
3262
- /**
3263
- * Participations pre-fetched on the server (e.g. via `CoinListServer#tokenSale.list()`).
3264
- * When provided, the hook uses this data as-is and skips the initial
3265
- * client-side fetch; {@link UseParticipationsResult.refetch} still fetches.
3266
- */
3267
- data?: Participation[];
3268
- /**
3269
- * When `false`, the hook sends no request. A seeded or already-fetched
3270
- * `CONTENT` survives; otherwise the hook reports `DISABLED`. Defaults to
3271
- * `true`.
3272
- */
3273
- enabled?: boolean;
3274
- }
3275
- interface UseParticipationsResult {
3276
- participationsState: LoadParticipationsState;
3277
- /**
3278
- * Fetches again: the recovery path after an `ERROR`, and the way past a
3279
- * server seed (`data`), which only the first fetch honours. No-op while
3280
- * disabled.
3281
- */
3282
- refetch: () => void;
3283
- }
3284
- /**
3285
- * Loads all CoinList participations for the current user and exposes a UI-friendly state.
3286
- * Optionally filters by offer when `offerId` is provided.
3287
- *
3288
- * Pass `data` (pre-fetched server-side) to open on it and skip the initial
3289
- * client-side fetch. Pass `enabled: false` to skip the fetch when the hook
3290
- * must be called but the data is not needed yet.
3291
- *
3292
- * Returns `LOADING` while CoinList is initializing or while participations are being fetched.
3293
- * Returns `CONTENT` with all participations when the read succeeds.
3294
- * Returns `ERROR` with:
3295
- * - `not-authenticated` when the user has to sign in first
3296
- * - `generic-error` for any other failure
3297
- */
3298
- declare function useParticipations(offerId?: OfferId, options?: UseParticipationsOptions): UseParticipationsResult;
3299
-
3300
3259
  /**
3301
3260
  * The last step of the token-sale checkout: confirming the commitment and
3302
3261
  * placing it.
3303
3262
  *
3304
3263
  * Placing approves the payment to the sale's funding contract and records the
3305
- * participation. Nothing is spent yet: the sale pulls the payment and
3306
- * allocates the tokens when it settles, so the quantity shown is an estimate.
3264
+ * participation. The sale pulls the payment shortly after and holds it, and
3265
+ * allocates the tokens only when it settles, so the quantity shown is an
3266
+ * estimate.
3307
3267
  *
3308
3268
  * @alpha
3309
3269
  */
@@ -3402,8 +3362,8 @@ type CoinListTokenSaleCheckoutUiEvent = CheckoutWalletSelectUiEvent | CheckoutAm
3402
3362
  /**
3403
3363
  * The dialog that closes the checkout once the order is recorded.
3404
3364
  *
3405
- * It reports a commitment, not a purchase: the sale allocates the tokens and
3406
- * pulls the payment when it settles. The explorer link is the approval's,
3365
+ * It reports a commitment, not a purchase: the sale takes and holds the
3366
+ * payment, and allocates the tokens only when it settles. The explorer link is the approval's,
3407
3367
  * the one transaction the order sent.
3408
3368
  *
3409
3369
  * @alpha
@@ -5094,6 +5054,133 @@ interface UseCentrifugeClaimPositionsResult {
5094
5054
  */
5095
5055
  declare function useCentrifugeClaimPositions(options: UseCentrifugeClaimPositionsOptions): UseCentrifugeClaimPositionsResult;
5096
5056
 
5057
+ /**
5058
+ * The token-sale claim card.
5059
+ *
5060
+ * `HIDDEN` renders nothing: the card is switched off, or the user is signed
5061
+ * out and the host decides whether to ask them in. `CONTENT` with no rows is
5062
+ * a real answer - nothing placed yet - and renders as such.
5063
+ *
5064
+ * @alpha
5065
+ */
5066
+ type CoinListTokenSaleClaimUiState = {
5067
+ type: 'HIDDEN';
5068
+ } | {
5069
+ type: 'LOADING';
5070
+ } | {
5071
+ type: 'ERROR';
5072
+ } | {
5073
+ type: 'CONTENT';
5074
+ rows: ParticipationRowUi[];
5075
+ };
5076
+ /** @alpha */
5077
+ type CoinListTokenSaleClaimUiEvent = {
5078
+ type: 'ON_RETRY_LOAD';
5079
+ };
5080
+ /**
5081
+ * Where a participation stands, in the steps a user can tell apart.
5082
+ *
5083
+ * - `processing`: the approval is being verified, or the payment is being
5084
+ * committed to the sale's contract.
5085
+ * - `committed`: the payment is held by the sale until it settles.
5086
+ * - `failed`: the approval or the commit failed, so nothing was taken.
5087
+ * - `refunding`: a refund is on its way back to the wallet that paid.
5088
+ * - `refunded`: the refund arrived. It may be the whole payment or only what
5089
+ * the allocation did not use; the API does not say which.
5090
+ * - `refund-failed`: the refund transaction failed, and support has to step
5091
+ * in.
5092
+ *
5093
+ * @alpha
5094
+ */
5095
+ type ParticipationStatusUi = 'processing' | 'committed' | 'failed' | 'refunding' | 'refunded' | 'refund-failed';
5096
+ /** @alpha */
5097
+ declare const ParticipationStatusUi: {
5098
+ /**
5099
+ * Folds the backend's eight steps into the six a user can act on. The
5100
+ * three before the payment is held - approval unverified, queued for a
5101
+ * commit batch, commit broadcast - are one wait to the user.
5102
+ */
5103
+ fromDomain: (status: ParticipationStatus) => ParticipationStatusUi;
5104
+ };
5105
+ /**
5106
+ * How a row reads its dates: the current instant, and the wall clock to read
5107
+ * them on (`undefined` for the runtime's own).
5108
+ *
5109
+ * @alpha
5110
+ */
5111
+ type ParticipationClockUi = {
5112
+ now: EpochMillis;
5113
+ timeZone: string | undefined;
5114
+ };
5115
+ /**
5116
+ * One participation as a row of the card.
5117
+ *
5118
+ * @alpha
5119
+ */
5120
+ type ParticipationRowUi = {
5121
+ key: ParticipationId;
5122
+ /** The coin it was paid in: its name for the icon's alt text, and its icon. */
5123
+ asset: {
5124
+ name: string;
5125
+ iconUrl: AssetIconUrl | null;
5126
+ };
5127
+ /** What was paid, e.g. `1,000.00 USDC`. */
5128
+ amount: FormattedAmountAssetUi;
5129
+ status: ParticipationStatusUi;
5130
+ /** The wallet that paid, by label or shortened address; `null` if unknown. */
5131
+ wallet: string | null;
5132
+ /**
5133
+ * When it was placed, on the user's clock and without the year when it is
5134
+ * this one - `Oct 15, 10:14 AM`; `null` if the API did not say.
5135
+ */
5136
+ placedAt: string | null;
5137
+ };
5138
+ /** @alpha */
5139
+ declare const ParticipationRowUi: {
5140
+ fromDomain: (participation: Participation, { walletLabel, locale, clock, }: {
5141
+ walletLabel: WalletLabelResolver | undefined;
5142
+ locale: string;
5143
+ clock: ParticipationClockUi;
5144
+ }) => ParticipationRowUi;
5145
+ };
5146
+
5147
+ /** @alpha */
5148
+ interface UseCoinListTokenSaleClaimViewModelOptions {
5149
+ offer: CoinListTokenSaleOfferDetail;
5150
+ /** Names the wallet that paid; unnamed ones show a shortened address. */
5151
+ walletLabel?: WalletLabelResolver;
5152
+ /**
5153
+ * The offer's participations pre-fetched on the server, so the card opens
5154
+ * on them. The poll still reads. Dates render in UTC on the server and
5155
+ * through hydration, so the markup matches on any clock, then on the
5156
+ * user's own clock from the render straight after.
5157
+ */
5158
+ data?: Participation[];
5159
+ /** How often to read the participations again while the page is visible. */
5160
+ pollInterval?: Seconds;
5161
+ /** Default `true`. `false` turns off every request and timer. */
5162
+ enabled?: boolean;
5163
+ }
5164
+ /** @alpha */
5165
+ interface UseCoinListTokenSaleClaimViewModelResult {
5166
+ state: CoinListTokenSaleClaimUiState;
5167
+ onEvent: (event: CoinListTokenSaleClaimUiEvent) => void;
5168
+ }
5169
+ /**
5170
+ * The token-sale claim card: every participation the user has placed in an
5171
+ * offer, across its options and whichever wallet paid, and where each one
5172
+ * stands.
5173
+ *
5174
+ * Nothing here is claimed. A token sale pushes the tokens it allocates once
5175
+ * it settles and refunds what it does not use, so the card follows each
5176
+ * participation through those steps and the user has nothing to press but a
5177
+ * retry. The list is account-wide rather than read per wallet, so it needs
5178
+ * none of the host's wallets.
5179
+ *
5180
+ * @alpha
5181
+ */
5182
+ declare function useCoinListTokenSaleClaimViewModel({ offer, walletLabel, data, pollInterval, enabled, }: UseCoinListTokenSaleClaimViewModelOptions): UseCoinListTokenSaleClaimViewModelResult;
5183
+
5097
5184
  /**
5098
5185
  * A display-ready connect-wallet error: the core flow's machine-readable code
5099
5186
  * and `retryable` flag, plus copy for the UI.
@@ -5646,4 +5733,4 @@ declare class CoinListClientInitializationError extends Error {
5646
5733
  constructor(message?: string);
5647
5734
  }
5648
5735
 
5649
- export { type ApproveThenBuildError, type ApproveThenBuildPhase, type ApproveThenBuildResult, type AuthState, type AuthorizeWalletParams, type BuyCentrifugeParams, type CentrifugeBuyCheckoutUiEvent, type CentrifugeBuyCheckoutUiState, type CentrifugeBuyError, type CentrifugeBuyPhase, type CentrifugeBuyPlacementError, type CentrifugeBuyPlacementPhase, type CentrifugeBuyPlacementResult, type CentrifugeBuyPreparationError, type CentrifugeBuyPreparationPhase, type CentrifugeBuyPreparationResult, type CentrifugeBuyResult, type CentrifugeBuyReviewUiEvent, type CentrifugeBuyReviewUiState, type CentrifugeCheckoutErrorReason, type CentrifugeClaimActionUi, type CentrifugeClaimBlockedReasonUi, type CentrifugeClaimDialogUi, type CentrifugeClaimError, type CentrifugeClaimFailureUi, type CentrifugeClaimParams, type CentrifugeClaimPhase, type CentrifugeClaimProgressUi, type CentrifugeClaimResult, type CentrifugeClaimRowUi, type CentrifugeClaimState, type CentrifugeClaimStepUi, type CentrifugeLoadErrorReason, type CentrifugeOrderPlaced, type CentrifugeOrderPlacedUiEvent, type CentrifugeOrderPlacedUiState, type CentrifugeSidebarMinimumUi, type CentrifugeSidebarUiState, type CentrifugeVaultCheckoutConfig, type CentrifugeVaultClaimConfig, type CentrifugeVaultClaimUiEvent, type CentrifugeVaultClaimUiState, type CentrifugeVaultClaimed, ChecklistStatus, type CheckoutAmountAdornmentUi, type CheckoutAmountUiEvent, type CheckoutAmountUiState, CheckoutAssetUi, type CheckoutBlockedReason, type CheckoutConfig, type CheckoutConfirmedWalletUi, CheckoutContainer, type CheckoutContainerProps, type CheckoutCtaUi, type CheckoutEmbeddedWalletUi, CheckoutExternalWalletUi, type CheckoutNetworkUi, type CheckoutReceiptUi, type CheckoutSelectableInputAssetUi, type CheckoutStatusUi, type CheckoutWalletSelectUiEvent, type CheckoutWalletSelectUiState, type CheckoutWalletSelection, type CheckoutWalletTypeUi, type CheckoutWalletUi, type ClaimCentrifugeVaultParams, type ClaimConfig, ClaimContainer, type ClaimContainerProps, type ClaimExternalWalletUi, type ClientAuthNamespace, type ClientCentrifugeNamespace, type ClientCoinListTokenSaleNamespace, type ClientConfig, type ClientOndoNamespace, type ClientRequirementsNamespace, type ClientSuperstateSwapNamespace, type ClientSupportNamespace, type ClientWalletsNamespace, type CoinListClient, CoinListClientInitializationError, CoinListProvider, type CoinListProviderProps, CoinListSignInButton, type CoinListSignInButtonProps, CoinListSignInCardContainer, type CoinListSignInCardContainerProps, type CoinListSignInCardUiEvent, type CoinListSignInCardUiState, CoinListStyleScope, type CoinListStyleScopeProps, type CoinListTokenSaleCheckoutConfig, type CoinListTokenSaleCheckoutUiEvent, type CoinListTokenSaleCheckoutUiState, type CompleteOAuthFailureReason, type ConnectWalletError, type ConnectWalletErrorCode, type ConnectWalletFlowError, type ConnectWalletFlowResult, type ConnectWalletParams, type ConnectWalletPhase, type ConnectWalletSignState, type ConnectWalletState, type ConnectedWalletUi, type Erc20AllowanceError, type Erc20AllowancePhase, type Erc20ApprovalError, type ExecuteOndoSwapParams, type ExecuteSwapParams, type ExecuteTokenSaleParams, type ExternalWalletRequestUi, type KycTokenErrorReason, type KycTokenState, type LoadCentrifugeClaimPositionsState, type LoadCentrifugeVaultStatusState, type LoadErc20BalanceState, type LoadErc20TokenBalancesState, type LoadErrorReason, type LoadFirmTransactionState, type LoadOfferDetailsReason, type LoadOfferDetailsState, type LoadOffersReason, type LoadOffersState, type LoadOndoBuyTransactionState, type LoadOndoPriceState, type LoadOndoSellTransactionState, type LoadOndoTradingStatusState, type LoadOptionAddressesReason, type LoadOptionAddressesState, type LoadParticipationsReason, type LoadParticipationsState, type LoadRequirementsReason, type LoadRequirementsState, type LoadSwapOutputTokenState, type LoadSwapQuoteState, type LoadTokenMetadataState, type LoadTokenRegistryState, type LogoImageUi, type OAuthClientErrorReason, type OAuthClientResult, OfferAssetCard, type OfferAssetCardProps, OfferAssetCardUi, OfferLogoUi, OfferSaleCard, type OfferSaleCardProps, OfferSaleCardUi, OffersGridContainer, type OffersGridContainerProps, type OffersGridData, type OndoBuyAmountUiEvent, type OndoBuyAmountUiState, type OndoBuyCheckoutUiEvent, type OndoBuyCheckoutUiState, type OndoBuyOrderPlaced, type OndoBuyOrderTerms, type OndoBuyPreparationResult, type OndoBuyReviewUiEvent, type OndoBuyReviewUiState, type OndoCheckoutConfig, type OndoCheckoutErrorReason, type OndoLoadErrorReason, type OndoOrderConfirmedUiEvent, type OndoOrderConfirmedUiState, type OndoOrderPlaced, type OndoOrderPlacedCore, type OndoQuoteStatusUi, type OndoSellAmountUiEvent, type OndoSellAmountUiState, type OndoSellBalanceUi, type OndoSellCheckoutUiEvent, type OndoSellCheckoutUiState, type OndoSellOrderConfirmedUiEvent, type OndoSellOrderConfirmedUiState, type OndoSellOrderPlaced, type OndoSellOrderTerms, type OndoSellOutcomeUi, type OndoSellPreparationResult, type OndoSellReviewUiEvent, type OndoSellReviewUiState, type OndoSellSourceWalletUi, type OndoSidebarPriceUi, type OndoSidebarUiState, type OndoSwapExecutionError, type OndoSwapExecutionPhase, type OndoSwapExecutionResult, type OndoSwapPreparationError, type OndoSwapPreparationPhase, type OndoSwapPreparationResult, type PlaceCentrifugeRequestParams, type PrepareCentrifugeBuyParams, type PrepareOndoBuyParams, type PrepareOndoSellParams, type PrepareOndoSwapParamsCore, RequirementItemUi, RequirementStatus, RequirementVariant, RequirementsChecklistContainer, type RequirementsChecklistContainerProps, type RequirementsChecklistItemUi, type RequirementsChecklistUiEvent, type RequirementsChecklistUiState, RequirementsChecklistView, type RequirementsChecklistViewProps, type RequirementsData, type RequirementsVerificationUi, type ResetThenApprovePhase, type SignState, type SuperstateCheckoutConfig, type SuperstateOrderConfirmedUiEvent, type SuperstateOrderConfirmedUiState, type SuperstateOrderPlaced, type SuperstateReviewUiEvent, type SuperstateReviewUiState, type SuperstateSidebarPriceUi, type SuperstateSidebarUiState, type SuperstateSlippageOptionUi, type SuperstateSlippageUi, type SuperstateSwapCheckoutRetryUiEvent, type SuperstateSwapCheckoutUiEvent, type SuperstateSwapCheckoutUiState, type SuperstateSwapLoadErrorReason, type SuperstateWalletUiEvent, type SuperstateWalletUiState, type SwapExecutionError, type SwapExecutionPhase, type SwapExecutionResult, type TaxDocumentAddressParts, type TaxDocumentFields, type TaxDocumentState, type TokenSaleApproval, type TokenSaleCheckoutErrorReason, type TokenSaleExecutionError, type TokenSaleExecutionPhase, type TokenSaleExecutionResult, type TokenSaleOrderPlaced, type TokenSaleOrderPlacedUiEvent, type TokenSaleOrderPlacedUiState, type TokenSaleReviewUiEvent, type TokenSaleReviewUiState, type TokenSaleSidebarUiState, type UseCentrifugeBuyCheckoutViewModelOptions, type UseCentrifugeBuyCheckoutViewModelResult, type UseCentrifugeClaimPositionsOptions, type UseCentrifugeClaimPositionsResult, type UseCentrifugeClaimResult, type UseCentrifugeVaultClaimViewModelOptions, type UseCentrifugeVaultClaimViewModelResult, type UseCentrifugeVaultStatusOptions, type UseCentrifugeVaultStatusResult, type UseCentrifugeVaultStatusesOptions, type UseCentrifugeVaultStatusesResult, type UseCoinListResult, type UseCoinListSignInCardViewModelOptions, type UseCoinListSignInCardViewModelResult, type UseCoinListTokenSaleCheckoutViewModelOptions, type UseCoinListTokenSaleCheckoutViewModelResult, type UseCompleteOAuthOptions, type UseConnectWalletOptions, type UseConnectWalletResult, type UseErc20BalanceOptions, type UseErc20BalanceResult, type UseErc20TokenBalancesOptions, type UseErc20TokenBalancesResult, type UseKycTokenResult, type UseOfferDetailsOptions, type UseOfferDetailsResult, type UseOffersOptions, type UseOffersResult, type UseOndoBuyCheckoutViewModelOptions, type UseOndoBuyCheckoutViewModelResult, type UseOndoBuyTransactionOptions, type UseOndoBuyTransactionResult, type UseOndoPriceOptions, type UseOndoPriceResult, type UseOndoSellCheckoutViewModelOptions, type UseOndoSellCheckoutViewModelResult, type UseOndoSellTransactionOptions, type UseOndoSellTransactionResult, type UseOndoTradingStatusOptions, type UseOndoTradingStatusResult, type UseOptionAddressesOptions, type UseOptionAddressesResult, type UseParticipationsOptions, type UseParticipationsResult, type UseRequirementsChecklistViewModelOptions, type UseRequirementsChecklistViewModelResult, type UseRequirementsOptions, type UseRequirementsResult, type UseSuperstateSwapCheckoutViewModelOptions, type UseSuperstateSwapCheckoutViewModelResult, type UseSwapOutputTokenOptions, type UseSwapOutputTokenResult, type UseSwapQuoteOptions, type UseSwapQuoteResult, type UseTaxDocumentOptions, type UseTaxDocumentResult, type UseTokenMetadataOptions, type UseTokenMetadataResult, type UseTokenRegistryOptions, type UseTokenRegistryResult, type WalletAuthorizationError, type WalletAuthorizationPhase, type WalletAuthorizationResult, type WalletsStatus, createCoinListClient, isNotTradable, pinoClientLogger, useCentrifugeBuyCheckoutViewModel, useCentrifugeClaim, useCentrifugeClaimPositions, useCentrifugeVaultClaimViewModel, useCentrifugeVaultStatus, useCentrifugeVaultStatuses, useCoinList, useCoinListSignInCardViewModel, useCoinListTokenSaleCheckoutViewModel, useCompleteOAuth, useConnectWallet, useErc20Balance, useErc20TokenBalances, useKycToken, useOfferDetails, useOffers, useOndoBuyCheckoutViewModel, useOndoBuyTransaction, useOndoPrice, useOndoSellCheckoutViewModel, useOndoSellTransaction, useOndoTradingStatus, useOptionAddresses, useParticipations, useRequirements, useRequirementsChecklistViewModel, useSuperstateSwapCheckoutViewModel, useSwapOutputToken, useSwapQuote, useTaxDocument, useTokenMetadata, useTokenRegistry };
5736
+ export { type ApproveThenBuildError, type ApproveThenBuildPhase, type ApproveThenBuildResult, type AuthState, type AuthorizeWalletParams, type BuyCentrifugeParams, type CentrifugeBuyCheckoutUiEvent, type CentrifugeBuyCheckoutUiState, type CentrifugeBuyError, type CentrifugeBuyPhase, type CentrifugeBuyPlacementError, type CentrifugeBuyPlacementPhase, type CentrifugeBuyPlacementResult, type CentrifugeBuyPreparationError, type CentrifugeBuyPreparationPhase, type CentrifugeBuyPreparationResult, type CentrifugeBuyResult, type CentrifugeBuyReviewUiEvent, type CentrifugeBuyReviewUiState, type CentrifugeCheckoutErrorReason, type CentrifugeClaimActionUi, type CentrifugeClaimBlockedReasonUi, type CentrifugeClaimDialogUi, type CentrifugeClaimError, type CentrifugeClaimFailureUi, type CentrifugeClaimParams, type CentrifugeClaimPhase, type CentrifugeClaimProgressUi, type CentrifugeClaimResult, type CentrifugeClaimRowUi, type CentrifugeClaimState, type CentrifugeClaimStepUi, type CentrifugeLoadErrorReason, type CentrifugeOrderPlaced, type CentrifugeOrderPlacedUiEvent, type CentrifugeOrderPlacedUiState, type CentrifugeSidebarMinimumUi, type CentrifugeSidebarUiState, type CentrifugeVaultCheckoutConfig, type CentrifugeVaultClaimConfig, type CentrifugeVaultClaimUiEvent, type CentrifugeVaultClaimUiState, type CentrifugeVaultClaimed, ChecklistStatus, type CheckoutAmountAdornmentUi, type CheckoutAmountUiEvent, type CheckoutAmountUiState, CheckoutAssetUi, type CheckoutBlockedReason, type CheckoutConfig, type CheckoutConfirmedWalletUi, CheckoutContainer, type CheckoutContainerProps, type CheckoutCtaUi, type CheckoutEmbeddedWalletUi, CheckoutExternalWalletUi, type CheckoutNetworkUi, type CheckoutReceiptUi, type CheckoutSelectableInputAssetUi, type CheckoutStatusUi, type CheckoutWalletSelectUiEvent, type CheckoutWalletSelectUiState, type CheckoutWalletSelection, type CheckoutWalletTypeUi, type CheckoutWalletUi, type ClaimCentrifugeVaultParams, type ClaimConfig, ClaimContainer, type ClaimContainerProps, type ClaimExternalWalletUi, type ClientAuthNamespace, type ClientCentrifugeNamespace, type ClientCoinListTokenSaleNamespace, type ClientConfig, type ClientOndoNamespace, type ClientRequirementsNamespace, type ClientSuperstateSwapNamespace, type ClientSupportNamespace, type ClientWalletsNamespace, type CoinListClient, CoinListClientInitializationError, CoinListProvider, type CoinListProviderProps, CoinListSignInButton, type CoinListSignInButtonProps, CoinListSignInCardContainer, type CoinListSignInCardContainerProps, type CoinListSignInCardUiEvent, type CoinListSignInCardUiState, CoinListStyleScope, type CoinListStyleScopeProps, type CoinListTokenSaleCheckoutConfig, type CoinListTokenSaleCheckoutUiEvent, type CoinListTokenSaleCheckoutUiState, type CoinListTokenSaleClaimUiEvent, type CoinListTokenSaleClaimUiState, type CompleteOAuthFailureReason, type ConnectWalletError, type ConnectWalletErrorCode, type ConnectWalletFlowError, type ConnectWalletFlowResult, type ConnectWalletParams, type ConnectWalletPhase, type ConnectWalletSignState, type ConnectWalletState, type ConnectedWalletUi, type Erc20AllowanceError, type Erc20AllowancePhase, type Erc20ApprovalError, type ExecuteOndoSwapParams, type ExecuteSwapParams, type ExecuteTokenSaleParams, type ExternalWalletRequestUi, type KycTokenErrorReason, type KycTokenState, type LoadCentrifugeClaimPositionsState, type LoadCentrifugeVaultStatusState, type LoadCoinListTokenSaleParticipationsState, type LoadErc20BalanceState, type LoadErc20TokenBalancesState, type LoadErrorReason, type LoadFirmTransactionState, type LoadOfferDetailsReason, type LoadOfferDetailsState, type LoadOffersReason, type LoadOffersState, type LoadOndoBuyTransactionState, type LoadOndoPriceState, type LoadOndoSellTransactionState, type LoadOndoTradingStatusState, type LoadOptionAddressesReason, type LoadOptionAddressesState, type LoadRequirementsReason, type LoadRequirementsState, type LoadSwapOutputTokenState, type LoadSwapQuoteState, type LoadTokenMetadataState, type LoadTokenRegistryState, type LogoImageUi, type OAuthClientErrorReason, type OAuthClientResult, OfferAssetCard, type OfferAssetCardProps, OfferAssetCardUi, OfferLogoUi, OfferSaleCard, type OfferSaleCardProps, OfferSaleCardUi, OffersGridContainer, type OffersGridContainerProps, type OffersGridData, type OndoBuyAmountUiEvent, type OndoBuyAmountUiState, type OndoBuyCheckoutUiEvent, type OndoBuyCheckoutUiState, type OndoBuyOrderPlaced, type OndoBuyOrderTerms, type OndoBuyPreparationResult, type OndoBuyReviewUiEvent, type OndoBuyReviewUiState, type OndoCheckoutConfig, type OndoCheckoutErrorReason, type OndoLoadErrorReason, type OndoOrderConfirmedUiEvent, type OndoOrderConfirmedUiState, type OndoOrderPlaced, type OndoOrderPlacedCore, type OndoQuoteStatusUi, type OndoSellAmountUiEvent, type OndoSellAmountUiState, type OndoSellBalanceUi, type OndoSellCheckoutUiEvent, type OndoSellCheckoutUiState, type OndoSellOrderConfirmedUiEvent, type OndoSellOrderConfirmedUiState, type OndoSellOrderPlaced, type OndoSellOrderTerms, type OndoSellOutcomeUi, type OndoSellPreparationResult, type OndoSellReviewUiEvent, type OndoSellReviewUiState, type OndoSellSourceWalletUi, type OndoSidebarPriceUi, type OndoSidebarUiState, type OndoSwapExecutionError, type OndoSwapExecutionPhase, type OndoSwapExecutionResult, type OndoSwapPreparationError, type OndoSwapPreparationPhase, type OndoSwapPreparationResult, type ParticipationClockUi, ParticipationRowUi, ParticipationStatusUi, type PlaceCentrifugeRequestParams, type PrepareCentrifugeBuyParams, type PrepareOndoBuyParams, type PrepareOndoSellParams, type PrepareOndoSwapParamsCore, RequirementItemUi, RequirementStatus, RequirementVariant, RequirementsChecklistContainer, type RequirementsChecklistContainerProps, type RequirementsChecklistItemUi, type RequirementsChecklistUiEvent, type RequirementsChecklistUiState, RequirementsChecklistView, type RequirementsChecklistViewProps, type RequirementsData, type RequirementsVerificationUi, type ResetThenApprovePhase, type SignState, type SuperstateCheckoutConfig, type SuperstateOrderConfirmedUiEvent, type SuperstateOrderConfirmedUiState, type SuperstateOrderPlaced, type SuperstateReviewUiEvent, type SuperstateReviewUiState, type SuperstateSidebarPriceUi, type SuperstateSidebarUiState, type SuperstateSlippageOptionUi, type SuperstateSlippageUi, type SuperstateSwapCheckoutRetryUiEvent, type SuperstateSwapCheckoutUiEvent, type SuperstateSwapCheckoutUiState, type SuperstateSwapLoadErrorReason, type SuperstateWalletUiEvent, type SuperstateWalletUiState, type SwapExecutionError, type SwapExecutionPhase, type SwapExecutionResult, type TaxDocumentAddressParts, type TaxDocumentFields, type TaxDocumentState, type TokenSaleApproval, type TokenSaleCheckoutErrorReason, type TokenSaleExecutionError, type TokenSaleExecutionPhase, type TokenSaleExecutionResult, type TokenSaleOrderPlaced, type TokenSaleOrderPlacedUiEvent, type TokenSaleOrderPlacedUiState, type TokenSaleReviewUiEvent, type TokenSaleReviewUiState, type TokenSaleSidebarUiState, type UseCentrifugeBuyCheckoutViewModelOptions, type UseCentrifugeBuyCheckoutViewModelResult, type UseCentrifugeClaimPositionsOptions, type UseCentrifugeClaimPositionsResult, type UseCentrifugeClaimResult, type UseCentrifugeVaultClaimViewModelOptions, type UseCentrifugeVaultClaimViewModelResult, type UseCentrifugeVaultStatusOptions, type UseCentrifugeVaultStatusResult, type UseCentrifugeVaultStatusesOptions, type UseCentrifugeVaultStatusesResult, type UseCoinListResult, type UseCoinListSignInCardViewModelOptions, type UseCoinListSignInCardViewModelResult, type UseCoinListTokenSaleCheckoutViewModelOptions, type UseCoinListTokenSaleCheckoutViewModelResult, type UseCoinListTokenSaleClaimViewModelOptions, type UseCoinListTokenSaleClaimViewModelResult, type UseCoinListTokenSaleParticipationsOptions, type UseCoinListTokenSaleParticipationsResult, type UseCompleteOAuthOptions, type UseConnectWalletOptions, type UseConnectWalletResult, type UseErc20BalanceOptions, type UseErc20BalanceResult, type UseErc20TokenBalancesOptions, type UseErc20TokenBalancesResult, type UseKycTokenResult, type UseOfferDetailsOptions, type UseOfferDetailsResult, type UseOffersOptions, type UseOffersResult, type UseOndoBuyCheckoutViewModelOptions, type UseOndoBuyCheckoutViewModelResult, type UseOndoBuyTransactionOptions, type UseOndoBuyTransactionResult, type UseOndoPriceOptions, type UseOndoPriceResult, type UseOndoSellCheckoutViewModelOptions, type UseOndoSellCheckoutViewModelResult, type UseOndoSellTransactionOptions, type UseOndoSellTransactionResult, type UseOndoTradingStatusOptions, type UseOndoTradingStatusResult, type UseOptionAddressesOptions, type UseOptionAddressesResult, type UseRequirementsChecklistViewModelOptions, type UseRequirementsChecklistViewModelResult, type UseRequirementsOptions, type UseRequirementsResult, type UseSuperstateSwapCheckoutViewModelOptions, type UseSuperstateSwapCheckoutViewModelResult, type UseSwapOutputTokenOptions, type UseSwapOutputTokenResult, type UseSwapQuoteOptions, type UseSwapQuoteResult, type UseTaxDocumentOptions, type UseTaxDocumentResult, type UseTokenMetadataOptions, type UseTokenMetadataResult, type UseTokenRegistryOptions, type UseTokenRegistryResult, type WalletAuthorizationError, type WalletAuthorizationPhase, type WalletAuthorizationResult, type WalletsStatus, createCoinListClient, isNotTradable, pinoClientLogger, useCentrifugeBuyCheckoutViewModel, useCentrifugeClaim, useCentrifugeClaimPositions, useCentrifugeVaultClaimViewModel, useCentrifugeVaultStatus, useCentrifugeVaultStatuses, useCoinList, useCoinListSignInCardViewModel, useCoinListTokenSaleCheckoutViewModel, useCoinListTokenSaleClaimViewModel, useCoinListTokenSaleParticipations, useCompleteOAuth, useConnectWallet, useErc20Balance, useErc20TokenBalances, useKycToken, useOfferDetails, useOffers, useOndoBuyCheckoutViewModel, useOndoBuyTransaction, useOndoPrice, useOndoSellCheckoutViewModel, useOndoSellTransaction, useOndoTradingStatus, useOptionAddresses, useRequirements, useRequirementsChecklistViewModel, useSuperstateSwapCheckoutViewModel, useSwapOutputToken, useSwapQuote, useTaxDocument, useTokenMetadata, useTokenRegistry };