import { SignMessageResult, WalletAdapter, WalletAdapter_onAddressesChanged_callback, WalletAdapterAddress, WalletAdapter_sendBitcoinFeeRateCapability } from '../WalletAdapters.types'; /** * https://docs.unisat.io/dev-center/open-api-documentation/unisat-wallet#events */ export interface UniSatEvents { accountsChanged: [accounts: Array]; networkChanged: [network: string]; } export interface UnisatCompatibleProviderAPI { /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#getaccounts */ getAccounts(): Promise; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#requestaccounts */ requestAccounts(): Promise; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#getpublickey */ getPublicKey(): Promise; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#getnetwork */ getNetwork(): Promise<"livenet" | "testnet">; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#signmessage */ signMessage(message: string, algorithm: "ecdsa" | "bip322-simple"): Promise; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#sendbitcoin */ sendBitcoin(receiverAddress: string, satoshiAmount: number, options?: { feeRate?: number; }): Promise; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#sendInscription */ sendInscription(receiverAddress: string, inscriptionId: string, options?: { feeRate?: number; }): Promise; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#signpsbt */ signPsbt(psbtHex: string, options?: { autoFinalized?: boolean; toSignInputs?: { index: number; address?: string; publicKey?: string; sighashTypes?: number[]; disableTweakSigner?: boolean; }[]; }): Promise; /** * https://docs.unisat.io/dev/unisat-developer-service/unisat-wallet#events */ on(event: K, handler: (...args: UniSatEvents[K]) => void): void; removeListener(event: keyof UniSatEvents, handler: () => void): void; } export type UnisatCompatibleWalletAdapterAddresses = (WalletAdapterAddress & { publicKey: string; })[]; export declare class UnisatCompatibleWalletAdapterImpl implements WalletAdapter { private unisat; private walletDisplayName; constructor(unisat: UnisatCompatibleProviderAPI, walletDisplayName: string); connect(): Promise; disconnect(): Promise; getAddresses(): Promise; signMessage(address: string, message: string): Promise; sendBitcoinFeeRateCapability: WalletAdapter_sendBitcoinFeeRateCapability; sendBitcoin(fromAddress: string, receiverAddress: string, satoshiAmount: bigint, options?: { feeRate?: number; }): Promise<{ txid: string; }>; /** * @internal * @experimental */ sendInscriptionFeeRateCapability: "unavailable" | "available" | "required"; /** * @internal * @experimental */ sendInscription(fromAddress: string, receiverAddress: string, inscriptionId: string, options?: { feeRate?: number; }): Promise<{ txid: string; }>; signAndFinalizePsbt(psbtHex: string, signIndices: [address: string, signIndex: number][]): Promise<{ signedPsbtHex: string; }>; onAddressesChanged(callback: WalletAdapter_onAddressesChanged_callback): { unsubscribe: () => void; }; } interface UnisatCompatibleProviderAPIThrownError { code: number; message: string; } export declare class UnisatCompatibleProviderError extends Error { readonly code: number; constructor(err: UnisatCompatibleProviderAPIThrownError); } export {};