PHP WebShell
Текущая директория: /opt/BitGoJS/node_modules/@ledgerhq/hw-transport-webusb/flow
Просмотр файла: webusb.js
//@flow
declare class USBConnectionEvent extends Event {
device: USBDevice;
}
declare type USBConnectionEventHandler = (event: USBConnectionEvent) => mixed;
declare type BufferSource = ArrayBuffer | DataView | $TypedArray;
declare class USB extends EventTarget {
onconnect: ?USBConnectionEventHandler;
ondisconnect: ?USBConnectionEventHandler;
getDevices: () => Promise<Array<USBDevice>>;
requestDevice: (options?: USBDeviceRequestOptions) => Promise<USBDevice>;
}
declare type USBDeviceRequestOptions = {
filters: Array<USBDeviceFilter>
};
declare type USBDeviceFilter = {
vendorId?: number,
productId?: number,
classCode?: number,
subclassCode?: number,
protocolCode?: number,
serialNumber?: string
};
declare class USBDevice {
usbVersionMajor: number;
usbVersionMinor: number;
usbVersionSubminor: number;
deviceClass: number;
deviceSubclass: number;
deviceProtocol: number;
vendorId: number;
productId: number;
deviceVersionMajor: number;
deviceVersionMinor: number;
deviceVersionSubminor: number;
manufacturerName: ?string;
productName: ?string;
serialNumber: ?string;
configuration: ?USBConfiguration;
configurations: Array<USBConfiguration>;
opened: boolean;
open: () => Promise<void>;
close: () => Promise<void>;
selectConfiguration: (configurationValue: number) => Promise<void>;
claimInterface: (interfaceNumber: number) => Promise<void>;
releaseInterface: (interfaceNumber: number) => Promise<void>;
selectAlternateInterface: (
interfaceNumber: number,
alternateSetting: number
) => Promise<void>;
controlTransferIn: (
setup: USBControlTransferParameters,
length: number
) => Promise<USBInTransferResult>;
controlTransferOut: (
setup: USBControlTransferParameters,
data?: BufferSource
) => Promise<USBOutTransferResult>;
clearHalt: (direction: USBDirection, endpointNumber: number) => Promise<void>;
transferIn: (
endpointNumber: number,
length: number
) => Promise<USBInTransferResult>;
transferOut: (
endpointNumber: number,
data: BufferSource
) => Promise<USBOutTransferResult>;
isochronousTransferIn: (
endpointNumber: number,
packetLengths: Array<number>
) => Promise<USBIsochronousInTransferResult>;
isochronousTransferOut: (
endpointNumber: number,
data: BufferSource,
packetLengths: Array<number>
) => Promise<USBIsochronousOutTransferResult>;
reset: () => Promise<void>;
}
declare type USBDirection = "in" | "out";
declare class USBConfiguration {
configurationValue: number;
configurationName: ?string;
interfaces: Array<USBInterface>;
}
declare class USBInterface {
interfaceNumber: number;
alternate: USBAlternateInterface;
alternates: Array<USBAlternateInterface>;
claimed: boolean;
}
declare class USBAlternateInterface {
alternateSetting: number;
interfaceClass: number;
interfaceSubclass: number;
interfaceProtocol: number;
interfaceName: ?string;
endpoints: Array<USBEndpoint>;
}
declare class USBEndpoint {
endpointNumber: number;
direction: USBDirection;
type: "bulk" | "interrupt" | "isochronous";
packetSize: number;
}
declare type USBRequestType = "standard" | "class" | "vendor";
declare type USBRecipient = "device" | "interface" | "endpoint" | "other";
declare type USBControlTransferParameters = {
requestType: USBRequestType,
recipient: USBRecipient,
request: number,
value: number,
index: number
};
declare type USBTransferStatus = "ok" | "stall" | "babble";
declare class USBInTransferResult {
data: DataView;
status: USBTransferStatus;
}
declare class USBOutTransferResult {
bytesWritten: number;
status: USBTransferStatus;
}
declare class USBIsochronousInTransferPacket {
data: DataView;
status: USBTransferStatus;
}
declare class USBIsochronousInTransferResult {
data: DataView;
packets: Array<USBIsochronousInTransferPacket>;
}
declare class USBIsochronousOutTransferPacket {
protocolCode?: number;
bytesWritten: number;
status: USBTransferStatus;
}
declare class USBIsochronousOutTransferResult {
packets: Array<USBIsochronousOutTransferPacket>;
}
Выполнить команду
Для локальной разработки. Не используйте в интернете!