/*
 * Copyright 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.hardware.wifi@1.5;

import @1.0::CommandIdShort;
import @1.0::WifiNanStatus;
import @1.2::IWifiNanIfaceEventCallback;

/**
 * NAN Response and Asynchronous Event Callbacks.
 *
 * References to "NAN Spec" are to the Wi-Fi Alliance "Wi-Fi Neighbor Awareness
 * Networking (NAN) Technical Specification".
 */
interface IWifiNanIfaceEventCallback extends @1.2::IWifiNanIfaceEventCallback {
    /**
     * Asynchronous callback invoked in response to a capability request
     * |IWifiNanIface.getCapabilitiesRequest|.
     *
     * Note: supersedes the @1.2::IWifiNanIfaceEventCallback.notifyCapabilitiesResponse() method
     * which is deprecated as of HAL version 1.5.
     *
     * @param cmdId command Id corresponding to the original request.
     * @param status WifiNanStatus of the operation. Possible status codes are:
     *        |NanStatusType.SUCCESS|
     * @param capabilities Capability data.
     */
    oneway notifyCapabilitiesResponse_1_5(CommandIdShort id, WifiNanStatus status,
        NanCapabilities capabilities);
};
