@trezor/connect
Version:
High-level javascript interface for Trezor hardware wallet.
51 lines • 1.73 kB
TypeScript
import type { Transport } from '@trezor/transport';
import { TRANSPORT } from '@trezor/transport/lib/constants';
import { UdevInfo } from '../data/udevInfo';
import { ConnectSettings } from '../types/settings';
import type { MessageFactoryFn } from '../types/utils';
export { TRANSPORT } from '@trezor/transport/lib/constants';
export declare const TRANSPORT_EVENT = "TRANSPORT_EVENT";
export interface TransportInfo {
apiType: Transport['apiType'];
type: Transport['name'];
version: string;
outdated: boolean;
}
export interface TransportError {
apiType?: Transport['apiType'];
error: string;
code?: string;
}
export interface InstallerInfo {
udev?: UdevInfo;
}
export type TransportEvent = {
type: typeof TRANSPORT.START;
payload: TransportInfo & InstallerInfo;
} | {
type: typeof TRANSPORT.ERROR;
payload: TransportError & InstallerInfo;
};
export interface TransportSetTransports {
type: typeof TRANSPORT.SET_TRANSPORTS;
payload: Pick<ConnectSettings, 'transports'>;
}
export interface TransportDisableWebUSB {
type: typeof TRANSPORT.DISABLE_WEBUSB;
payload?: undefined;
}
export interface TransportRequestWebUSBDevice {
type: typeof TRANSPORT.REQUEST_DEVICE;
payload?: undefined;
}
export interface TransportGetInfo {
id: number;
type: typeof TRANSPORT.GET_INFO;
payload?: undefined;
}
export type TransportEventMessage = TransportEvent & {
event: typeof TRANSPORT_EVENT;
};
export type TransportEventListenerFn = (type: typeof TRANSPORT_EVENT, cb: (event: TransportEventMessage) => void) => void;
export declare const createTransportMessage: MessageFactoryFn<typeof TRANSPORT_EVENT, TransportEvent>;
//# sourceMappingURL=transport.d.ts.map