@bigmi/client
Version:
Reactive primitives for Bitcoin apps.
46 lines (45 loc) • 1.6 kB
TypeScript
import { CreateConnectorFn } from "../types/connector.js";
import { UTXOConnectorParameters, UTXOWalletProvider } from "./types.js";
import { Account, Address } from "@bigmi/core";
//#region src/connectors/okx.d.ts
type OKXBitcoinEventMap = {
accountsChanged(accounts: Address[]): void;
accountChanged(account: {
address: Address;
publicKey: string;
compressedPublicKey: string;
}): void;
};
type OKXBitcoinEvents = {
addListener<TEvent extends keyof OKXBitcoinEventMap>(event: TEvent, listener: OKXBitcoinEventMap[TEvent]): void;
removeListener<TEvent extends keyof OKXBitcoinEventMap>(event: TEvent, listener: OKXBitcoinEventMap[TEvent]): void;
};
type OKXConnectorProperties = {
getAccounts(): Promise<readonly Account[]>;
onAccountsChanged(accounts: Address[]): void;
getInternalProvider(): Promise<OKXBitcoinProvider>;
} & UTXOWalletProvider;
type OKXBitcoinProvider = {
requestAccounts(): Promise<Address[]>;
getAccounts(): Promise<Address[]>;
getPublicKey(): Promise<string>;
connect(): Promise<{
address: Address;
publicKey: string;
}>;
signPsbt(psbtHex: string, options: {
toSignInputs: {
index: number;
address: string;
sighashTypes?: number[];
}[];
autoFinalized?: boolean;
}): Promise<string>;
} & OKXBitcoinEvents;
declare function okx(parameters?: UTXOConnectorParameters): CreateConnectorFn<UTXOWalletProvider | undefined, OKXConnectorProperties>;
declare namespace okx {
export var type: "UTXO";
}
//#endregion
export { OKXBitcoinEventMap, OKXBitcoinEvents, okx };
//# sourceMappingURL=okx.d.ts.map