import type { Xumm } from "xumm"; import { XamanXrplNetwork, XrplNetwork, XrplTransaction } from "../../core/types/xrpl"; interface XamanQrDataResponse { qrMatrix: boolean[][]; wsStatusUrl: string; deepLinkUrl: string; } /** * Client to interact with the Xaman backend through a Squid proxy. * Retrieves the QR code data for the following methods: * - sign in * - get user session * - send tx */ export declare abstract class XamanClient { static baseUrl: string; static signIn(signal?: AbortSignal): Promise; static userSession(payload: string, signal?: AbortSignal): Promise<{ response: { account: string; }; }>; static sendTx({ tx, signal, network, }: { tx: XrplTransaction; signal?: AbortSignal; network: XrplNetwork; }): Promise; static fetch(endpoint: string, body?: Record, signal?: AbortSignal): Promise; static getXamanNetwork(network: XrplNetwork): XamanXrplNetwork; } export declare function isXamanXAppContext(): boolean; /** * Initializes the Xumm sdk on client-side, if not already initialized. * Returns null on server-side. * * the Xumm constructor can run in 3 different environments: Server, Browser, and xApp (Xaman's embedded browser) * When running on the server, the constructor needs both App ID and API secret * When running in xApp or browser envs, the constructor only needs the App ID * We avoid initializing the Xumm instance on the server * as it would throw an error during SRR (API secret is required in server env). */ export declare function getXummClient(): Promise; export {};