@bigmi/client
Version:
Reactive primitives for Bitcoin apps.
46 lines (45 loc) • 1.83 kB
TypeScript
import { CreateConnectorFn } from "../types/connector.js";
import { UTXOConnectorParameters, UTXOWalletProvider } from "./types.js";
import { Account, Address, ChainId } from "@bigmi/core";
//#region src/connectors/binance.d.ts
type BinanceBitcoinNetworks = "livenet" | "testnet" | "signet";
type BinanceBitcoinEventMap = {
accountsChanged(accounts: Address[]): void;
networkChanged(network: BinanceBitcoinNetworks): void;
};
type BinanceBitcoinEvents = {
addListener<TEvent extends keyof BinanceBitcoinEventMap>(event: TEvent, listener: BinanceBitcoinEventMap[TEvent]): void;
removeListener<TEvent extends keyof BinanceBitcoinEventMap>(event: TEvent, listener: BinanceBitcoinEventMap[TEvent]): void;
};
type BinanceConnectorProperties = {
getAccounts(): Promise<readonly Account[]>;
onAccountsChanged(accounts: Address[]): void;
getInternalProvider(): Promise<BinanceBitcoinProvider>;
switchChain({
chainId
}: {
chainId: ChainId;
}): Promise<boolean>;
} & UTXOWalletProvider;
type BinanceBitcoinProvider = {
getPublicKey(): Promise<string>;
requestAccounts(): Promise<Address[]>;
getAccounts(): Promise<Address[]>;
getNetwork(): Promise<BinanceBitcoinNetworks>;
switchNetwork(network: BinanceBitcoinNetworks): Promise<boolean>;
signPsbt(psbtHex: string, options: {
toSignInputs: {
index: number;
address: string;
sighashTypes?: number[];
}[];
autoFinalized?: boolean;
}): Promise<string>;
} & BinanceBitcoinEvents;
declare function binance(parameters?: UTXOConnectorParameters): CreateConnectorFn<UTXOWalletProvider | undefined, BinanceConnectorProperties>;
declare namespace binance {
export var type: "UTXO";
}
//#endregion
export { BinanceBitcoinEventMap, BinanceBitcoinEvents, BinanceBitcoinNetworks, binance };
//# sourceMappingURL=binance.d.ts.map