UNPKG

@bigmi/client

Version:

Reactive primitives for Bitcoin apps.

32 lines (31 loc) 1.44 kB
import type { Address } from '@bigmi/core'; import type { BtcAccount } from '../types/account.js'; import type { UTXOConnectorParameters, UTXOWalletProvider } from './types.js'; export type PhantomBitcoinEventMap = { accountsChanged(accounts: BtcAccount[]): void; }; export type PhantomBitcoinEvents = { on<TEvent extends keyof PhantomBitcoinEventMap>(event: TEvent, listener: PhantomBitcoinEventMap[TEvent]): void; removeListener<TEvent extends keyof PhantomBitcoinEventMap>(event: TEvent, listener: PhantomBitcoinEventMap[TEvent]): void; }; type PhantomConnectorProperties = { getAccounts(): Promise<readonly (BtcAccount | Address)[]>; onAccountsChanged(accounts: (BtcAccount | Address)[]): void; getInternalProvider(): Promise<PhantomBitcoinProvider>; } & UTXOWalletProvider; type PhantomBitcoinProvider = { requestAccounts(): Promise<BtcAccount[]>; signPSBT(psbtHex: Uint8Array, options: { inputsToSign: { sigHash?: number | undefined; address: string; signingIndexes: number[]; }[]; finalize?: boolean; }): Promise<Uint8Array>; } & PhantomBitcoinEvents; export declare function phantom(parameters?: UTXOConnectorParameters): import("../factories/createConnector.js").CreateConnectorFn<UTXOWalletProvider | undefined, PhantomConnectorProperties, Record<string, unknown>>; export declare namespace phantom { var type: "UTXO"; } export {};