|  | // Copyright 2015 The Chromium Authors | 
|  | // Use of this source code is governed by a BSD-style license that can be | 
|  | // found in the LICENSE file. | 
|  |  | 
|  | // https://wicg.github.io/webusb/#endpoints | 
|  |  | 
|  | enum USBDirection { | 
|  | "in", | 
|  | "out" | 
|  | }; | 
|  |  | 
|  | enum USBEndpointType { | 
|  | "bulk", | 
|  | "interrupt", | 
|  | "isochronous" | 
|  | }; | 
|  |  | 
|  | [ | 
|  | Exposed(DedicatedWorker WebUSBOnDedicatedWorkers, | 
|  | ServiceWorker WebUSBOnServiceWorkers, | 
|  | Window WebUSB), | 
|  | SecureContext | 
|  | ] interface USBEndpoint { | 
|  | [RaisesException] constructor(USBAlternateInterface alternate, octet endpointNumber, USBDirection direction); | 
|  | readonly attribute octet endpointNumber; | 
|  | readonly attribute USBDirection direction; | 
|  | readonly attribute USBEndpointType type; | 
|  | readonly attribute unsigned long packetSize; | 
|  | }; |