/**@class android.bluetooth.BluetoothProfile
 Public APIs for the Bluetooth Profiles.

 <p> Clients should call {@link android.bluetooth.BluetoothAdapter#getProfileProxy},
 to get the Profile Proxy. Each public profile implements this
 interface.
*/
var BluetoothProfile = {

/** Extra for the connection state intents of the individual profiles.

 This extra represents the current connection state of the profile of the
 Bluetooth device.
*/
EXTRA_STATE : "android.bluetooth.profile.extra.STATE",
/** Extra for the connection state intents of the individual profiles.

 This extra represents the previous connection state of the profile of the
 Bluetooth device.
*/
EXTRA_PREVIOUS_STATE : "android.bluetooth.profile.extra.PREVIOUS_STATE",
/**The profile is in disconnected state */
STATE_DISCONNECTED : "0",
/**The profile is in connecting state */
STATE_CONNECTING : "1",
/**The profile is in connected state */
STATE_CONNECTED : "2",
/**The profile is in disconnecting state */
STATE_DISCONNECTING : "3",
/** Headset and Handsfree profile
*/
HEADSET : "1",
/** A2DP profile.
*/
A2DP : "2",
/** Health Profile

 @deprecated Health Device Profile (HDP) and MCAP protocol are no longer used. New
 apps should use Bluetooth Low Energy based solutions such as {@link android.bluetooth.BluetoothGatt},
 {@link android.bluetooth.BluetoothAdapter#listenUsingL2capChannel()}, or
 {@link android.bluetooth.BluetoothDevice#createL2capChannel(int)}
*/
HEALTH : "3",
/** HID Host

 @hide
*/
HID_HOST : "4",
/** PAN Profile

 @hide
*/
PAN : "5",
/** PBAP

 @hide
*/
PBAP : "6",
/** GATT
*/
GATT : "7",
/** GATT_SERVER
*/
GATT_SERVER : "8",
/** MAP Profile

 @hide
*/
MAP : "9",
/***/
SAP : "10",
/** A2DP Sink Profile

 @hide
*/
A2DP_SINK : "11",
/** AVRCP Controller Profile

 @hide
*/
AVRCP_CONTROLLER : "12",
/** AVRCP Target Profile

 @hide
*/
AVRCP : "13",
/** Headset Client - HFP HF Role

 @hide
*/
HEADSET_CLIENT : "16",
/** PBAP Client

 @hide
*/
PBAP_CLIENT : "17",
/** MAP Messaging Client Equipment (MCE)

 @hide
*/
MAP_CLIENT : "18",
/** HID Device
*/
HID_DEVICE : "19",
/** Object Push Profile (OPP)

 @hide
*/
OPP : "20",
/** Hearing Aid Device

*/
HEARING_AID : "21",
/** Max profile ID. This value should be updated whenever a new profile is added to match
 the largest value assigned to a profile.

 @hide
*/
MAX_PROFILE_ID : "21",
/** Default priority for devices that we try to auto-connect to and
 and allow incoming connections for the profile

 @hide
*/
PRIORITY_AUTO_CONNECT : "1000",
/** Default priority for devices that allow incoming
 and outgoing connections for the profile

 @hide
*/
PRIORITY_ON : "100",
/** Default priority for devices that does not allow incoming
 connections and outgoing connections for the profile.

 @hide
*/
PRIORITY_OFF : "0",
/** Default priority when not set or when the device is unpaired

 @hide
*/
PRIORITY_UNDEFINED : "-1",
/**Get connected devices for this specific profile.

 <p> Return the set of devices which are in state {@link #STATE_CONNECTED}
@return {Object {java.util.List}} List of devices. The list will be empty on error.
*/
getConnectedDevices : function(  ) {},

/**Get a list of devices that match any of the given connection
 states.

 <p> If none of the devices match any of the given states,
 an empty list will be returned.
@param {Object {int[]}} states Array of states. States can be one of {@link #STATE_CONNECTED}, {@link
 #STATE_CONNECTING}, {@link #STATE_DISCONNECTED}, {@link #STATE_DISCONNECTING},
@return {Object {java.util.List}} List of devices. The list will be empty on error.
*/
getDevicesMatchingConnectionStates : function(  ) {},

/**Get the current connection state of the profile
@param {Object {BluetoothDevice}} device Remote bluetooth device.
@return {Number} State of the profile connection. One of {@link #STATE_CONNECTED}, {@link
 #STATE_CONNECTING}, {@link #STATE_DISCONNECTED}, {@link #STATE_DISCONNECTING}
*/
getConnectionState : function(  ) {},

/**Convert an integer value of connection state into human readable string
@param {Number} connectionState - One of {@link #STATE_DISCONNECTED}, {@link #STATE_CONNECTING},
 {@link #STATE_CONNECTED}, or {@link #STATE_DISCONNECTED}
@return {String} a string representation of the connection state, STATE_UNKNOWN if the state
 is not defined
@hide 
*/
getConnectionStateName : function(  ) {},


};