import { AxiosInstance } from "axios"; import Transport from "@ledgerhq/hw-transport"; import { Subject } from "rxjs"; export type SpeculosHttpTransportOpts = { apiPort?: string; timeout?: number; baseURL?: string; }; export declare enum SpeculosButton { LEFT = "Ll", RIGHT = "Rr", BOTH = "LRlr" } /** * Speculos TCP transport implementation * * @example * import SpeculosHttpTransport from "@ledgerhq/hw-transport-node-speculos-http"; * const transport = await SpeculosHttpTransport.open(); * const res = await transport.send(0xE0, 0x01, 0, 0); */ export default class SpeculosHttpTransport extends Transport { instance: AxiosInstance; opts: SpeculosHttpTransportOpts; eventStream: any; automationEvents: Subject>; constructor(instance: AxiosInstance, opts: SpeculosHttpTransportOpts); static isSupported: () => Promise; static list: () => any; static listen: (_observer: any) => { unsubscribe: () => void; }; buttonTable: { LRlr: string; Rr: string; Ll: string; }; static open: (opts: SpeculosHttpTransportOpts) => Promise; /** * Press and release button * buttons available: left, right, both * @param {*} but */ button: (but: string) => Promise; exchange(apdu: Buffer): Promise; close(): Promise; } //# sourceMappingURL=SpeculosHttpTransport.d.ts.map