import { AssetResponse, Web3PagedResponse, NCW, UnspentInputsResponse, SigningAlgorithm, PublicKeyInfoArgs, PublicKeyInformation, PublicKeyResponse, PublicKeyInfoByAccountAssetArgs } from "./types"; export interface NcwSdk { /** * Get NCW supported assets */ getSupportedAssets({ pageCursor, pageSize, onlyBaseAssets }: NCW.GetSupportedAssetsPayload): Promise>; /** * Create a new NCW wallet */ createWallet(): Promise<{ walletId: string; enabled: boolean; }>; /** * Get a NCW wallet * * @param {string} walletId */ getWallet(walletId: string): Promise<{ walletId: string; enabled: boolean; }>; /** * Get NCW wallet's latest backup * * @param {string} walletId */ getLatestBackup(walletId: string): Promise; /** * Enable a NCW wallet * * @param {string} walletId * @param {boolean} enabled */ enableWallet(walletId: string, enabled: boolean): Promise; /** * Get NCW wallet's device * * @param {string} walletId * @param {string} deviceId * @return {*} {Promise} */ getWalletDevice(walletId: string, deviceId: string): Promise; /** * Get NCW wallet's devices * * @param {string} walletId * @return {*} {Promise} */ getWalletDevices(walletId: string): Promise; /** * Set NCW wallet device's enabled state * * @param {string} walletId * @param {string} deviceId * @param {boolean} enabled * @return {*} {Promise} */ enableWalletDevice(walletId: string, deviceId: string, enabled: boolean): Promise; /** * Invoke NCW wallet RPC call * * @param {string} walletId * @param {string} deviceId * @param {string} payload * @return {*} {(Promise<{ result: string } | { error: { message: string, code?: number } }>)} */ invokeWalletRpc(walletId: string, deviceId: string, payload: string): Promise<{ result: string; } | { error: { message: string; code?: number; }; }>; /** * Create a new NCW wallet account * * @param {string} walletId */ createWalletAccount(walletId: string): Promise<{ walletId: string; accountId: number; }>; /** * Get NCW wallets * * @param {GetWalletsPayload} { pageCursor, pageSize, sort, order } * @return {*} {Promise>} */ getWallets({ pageCursor, pageSize, sort, order }: NCW.GetWalletsPayload): Promise>; /** * Get NCW accounts * * @param {string} walletId * @param {GetWalletsPayload} [{ pageCursor, pageSize, sort, order }] */ getWalletAccounts(walletId: string, { pageCursor, pageSize, sort, order }?: NCW.GetWalletsPayload): Promise>; /** * Get a NCW account * * @param {string} walletId * @param {number} accountId */ getWalletAccount(walletId: string, accountId: number): Promise<{ walletId: string; accountId: number; }>; /** * Get NCW assets * * @param {string} walletId * @param {number} accountId * @param {GetWalletAssetsPayload} [{ pageCursor, pageSize, sort, order }] * @return {*} {Promise>} */ getWalletAssets(walletId: string, accountId: number, { pageCursor, pageSize, sort, order }?: NCW.GetWalletAssetsPayload): Promise>; /** * Get a NCW asset * * @param {string} walletId * @param {number} accountId * @param {string} assetId * @return {*} {Promise} */ getWalletAsset(walletId: string, accountId: number, assetId: string): Promise; /** * Activate a NCW asset * * @param {string} walletId * @param {number} accountId * @param {string} assetId * @return {*} {Promise} */ activateWalletAsset(walletId: string, accountId: number, assetId: string): Promise; /** * Get a NCW asset addresses * * @param {string} walletId * @param {number} accountId * @param {string} assetId * @param {GetWalletAddressesPayload} { pageCursor, pageSize, sort, order } * @return {*} {Promise>} */ getWalletAssetAddresses(walletId: string, accountId: number, assetId: string, { pageCursor, pageSize, sort, order }?: NCW.GetWalletAddressesPayload): Promise>; /** * Get a NCW asset balance * * @param {string} walletId * @param {number} accountId * @param {string} assetId * @return {*} {Promise} */ getWalletAssetBalance(walletId: string, accountId: number, assetId: string): Promise; /** * refresh a NCW asset balance * * @param {string} walletId * @param {number} accountId * @param {string} assetId * @return {*} {Promise} */ refreshWalletAssetBalance(walletId: string, accountId: number, assetId: string): Promise; /** * get NCW wallet setup status * * @param {string} walletId * @return {*} {Promise} */ getWalletSetupStatus(walletId: string): Promise; /** * get NCW device setup status * * @param {string} walletId * @param {string} deviceId * @return {*} {Promise} */ getDeviceSetupStatus(walletId: string, deviceId: string): Promise; /** * Gets utxo list for an asset * * @param {string} walletId * @param {string} accountId * @param {string} assetId * @return {*} {Promise} */ getUnspentInputs(walletId: string, accountId: number, assetId: string): Promise; /** * set required algorithms for a wallet * * @param {string} walletId * @param {SigningAlgorithm[]} algorithms * @return {*} {Promise} */ setWalletRequiredAlgorithms(walletId: string, algorithms: SigningAlgorithm[]): Promise; /** * Get the public key information * @param {string} walletId * @param {PublicKeyInfoArgs} args * @return {*} {Promise} */ getPublicKeyInfo(walletId: string, args: PublicKeyInfoArgs): Promise; /** * Get the public key information for an NCW account * @param {string} walletId * @param {PublicKeyInfoByAccountAssetArgs} args * @return {*} {Promise} */ getPublicKeyInfoByAccountAsset(walletId: string, args: PublicKeyInfoByAccountAssetArgs): Promise; /** * delete signing algorithm for a wallet * * @param {string} walletId * @param {SigningAlgorithm} algorithm * @return {*} {Promise} */ deleteSigningAlgorithm(walletId: string, algorithm: SigningAlgorithm): Promise; }