@bigmi/client
Version:
Reactive primitives for Bitcoin apps.
30 lines (29 loc) • 1.36 kB
TypeScript
import { type Address } from '@bigmi/core';
import type { BtcAccount } from '../types/account.js';
import type { UTXOConnectorParameters, UTXOWalletProvider } from './types.js';
export type MagicEdenBitcoinEventMap = {
accountsChanged(accounts: BtcAccount[]): void;
};
export type MagicEdenBitcoinEvents = {
addListener<TEvent extends keyof MagicEdenBitcoinEventMap>(event: TEvent, listener: MagicEdenBitcoinEventMap[TEvent]): void;
removeListener<TEvent extends keyof MagicEdenBitcoinEventMap>(event: TEvent, listener: MagicEdenBitcoinEventMap[TEvent]): void;
};
type MagicEdenConnectorProperties = {
getAccounts(): Promise<readonly Address[]>;
onAccountsChanged(accounts: BtcAccount[]): void;
getInternalProvider(): Promise<MagicEdenBitcoinProvider>;
} & UTXOWalletProvider;
type MagicEdenBitcoinProvider = {
connect(encodedRequest: string): Promise<{
addresses: BtcAccount[];
}>;
signTransaction(encodedRequest: string): Promise<{
psbtBase64: string;
txId?: string;
}>;
} & MagicEdenBitcoinEvents;
export declare function magicEden(parameters?: UTXOConnectorParameters): import("../factories/createConnector.js").CreateConnectorFn<UTXOWalletProvider | undefined, MagicEdenConnectorProperties, Record<string, unknown>>;
export declare namespace magicEden {
var type: "UTXO";
}
export {};