// Copyright 2014 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.

// This file is autogenerated by:
//     mojo/public/tools/bindings/mojom_bindings_generator.py
// For:
//     device/serial/serial.mojom
//

package org.chromium.mojom.device.serial;

public interface Connection extends org.chromium.mojo.bindings.Interface {

    public interface Proxy extends Connection, org.chromium.mojo.bindings.Interface.Proxy {
    }

    Manager<Connection, Connection.Proxy> MANAGER = Connection_Internal.MANAGER;

    void getInfo(GetInfoResponse callback);
    interface GetInfoResponse extends org.chromium.mojo.bindings.Callbacks.Callback1<ConnectionInfo> { }

    void setOptions(ConnectionOptions options, SetOptionsResponse callback);
    interface SetOptionsResponse extends org.chromium.mojo.bindings.Callbacks.Callback1<Boolean> { }

    void setControlSignals(HostControlSignals signals, SetControlSignalsResponse callback);
    interface SetControlSignalsResponse extends org.chromium.mojo.bindings.Callbacks.Callback1<Boolean> { }

    void getControlSignals(GetControlSignalsResponse callback);
    interface GetControlSignalsResponse extends org.chromium.mojo.bindings.Callbacks.Callback1<DeviceControlSignals> { }

    void flush(FlushResponse callback);
    interface FlushResponse extends org.chromium.mojo.bindings.Callbacks.Callback1<Boolean> { }
}

