// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// http://wicg.github.io/webusb/#endpoints

enum USBDirection {
    "in",
    "out"
};

enum USBEndpointType {
    "bulk",
    "interrupt",
    "isochronous"
};

[
    Constructor(USBAlternateInterface alternate, octet endpointNumber, USBDirection direction),
    RaisesException=Constructor,
    GarbageCollected,
    RuntimeEnabled=WebUSB,
] interface USBEndpoint {
    readonly attribute octet endpointNumber;
    readonly attribute USBDirection direction;
    readonly attribute USBEndpointType type;
    readonly attribute unsigned long packetSize;
};
