// 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/#interfaces

[
    Constructor(USBInterface deviceInterface, octet alternateSetting),
    RaisesException=Constructor,
    GarbageCollected,
    RuntimeEnabled=WebUSB,
] interface USBAlternateInterface {
    readonly attribute octet alternateSetting;
    readonly attribute octet interfaceClass;
    readonly attribute octet interfaceSubclass;
    readonly attribute octet interfaceProtocol;
    readonly attribute DOMString? interfaceName;
    readonly attribute sequence<USBEndpoint> endpoints;
};
