1// Copyright 2019 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5module device.mojom;
6
7import "mojo/public/mojom/base/string16.mojom";
8
9struct UsbDeviceFilter {
10  bool has_vendor_id;
11  uint16 vendor_id;
12
13  bool has_product_id;
14  uint16 product_id;
15
16  bool has_class_code;
17  uint8 class_code;
18
19  bool has_subclass_code;
20  uint8 subclass_code;
21
22  bool has_protocol_code;
23  uint8 protocol_code;
24
25  mojo_base.mojom.String16? serial_number;
26};
27
28struct UsbEnumerationOptions {
29  array<UsbDeviceFilter> filters;
30};