1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ptr::NonNull;
use objc2_foundation::*;
use crate::*;
extern "C" {
/// An NSNumber (Boolean) indicating that the system should, if Bluetooth is powered off when
/// <code>
/// CBCentralManager
/// </code>
/// is instantiated, display
/// a warning dialog to the user.
///
///
/// See: initWithDelegate:queue:options:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanageroptionshowpoweralertkey?language=objc)
pub static CBCentralManagerOptionShowPowerAlertKey: &'static NSString;
}
extern "C" {
/// An NSString containing a unique identifier (UID) for the
/// <code>
/// CBCentralManager
/// </code>
/// that is being instantiated. This UID is used
/// by the system to identify a specific
/// <code>
/// CBCentralManager
/// </code>
/// instance for restoration and, therefore, must remain the same for
/// subsequent application executions in order for the manager to be restored.
///
///
/// See: initWithDelegate:queue:options:
///
/// See also: centralManager:willRestoreState:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanageroptionrestoreidentifierkey?language=objc)
pub static CBCentralManagerOptionRestoreIdentifierKey: &'static NSString;
}
extern "C" {
/// A Boolean representing the CBCentralManager init purpose is for DeviceAccess for media only. This will limit the functionality of this
/// manager and only allow media device access without prompting the user for Bluetooth generic TCC.
///
///
/// See: initWithDelegate:queue:options:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanageroptiondeviceaccessformedia?language=objc)
pub static CBCentralManagerOptionDeviceAccessForMedia: &'static NSString;
}
extern "C" {
/// An NSNumber (Boolean) indicating that the scan should run without duplicate filtering. By default, multiple discoveries of the
/// same peripheral are coalesced into a single discovery event. Specifying this option will cause a discovery event to be generated
/// every time the peripheral is seen, which may be many times per second. This can be useful in specific situations, such as making
/// a connection based on a peripheral's RSSI, but may have an adverse affect on battery-life and application performance.
///
///
/// See: scanForPeripheralsWithServices:options:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanagerscanoptionallowduplicateskey?language=objc)
pub static CBCentralManagerScanOptionAllowDuplicatesKey: &'static NSString;
}
extern "C" {
/// An NSArray of
/// <code>
/// CBUUID
/// </code>
/// objects respresenting service UUIDs. Causes the scan to also look for peripherals soliciting
/// any of the services contained in the list.
///
///
/// See: scanForPeripheralsWithServices:options:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanagerscanoptionsolicitedserviceuuidskey?language=objc)
pub static CBCentralManagerScanOptionSolicitedServiceUUIDsKey: &'static NSString;
}
extern "C" {
/// An NSNumber (Boolean) indicating that the system should display a connection alert for a given peripheral, if the application is suspended
/// when a successful connection is made.
/// This is useful for applications that have not specified the
/// <code>
/// bluetooth-central
/// </code>
/// background mode and cannot display their
/// own alert. If more than one application has requested notification for a given peripheral, the one that was most recently in the foreground
/// will receive the alert.
///
///
/// See: connectPeripheral:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectperipheraloptionnotifyonconnectionkey?language=objc)
pub static CBConnectPeripheralOptionNotifyOnConnectionKey: &'static NSString;
}
extern "C" {
/// An NSNumber (Boolean) indicating that the system should display a disconnection alert for a given peripheral, if the application
/// is suspended at the time of the disconnection.
/// This is useful for applications that have not specified the
/// <code>
/// bluetooth-central
/// </code>
/// background mode and cannot display their
/// own alert. If more than one application has requested notification for a given peripheral, the one that was most recently in the foreground
/// will receive the alert.
///
///
/// See: connectPeripheral:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectperipheraloptionnotifyondisconnectionkey?language=objc)
pub static CBConnectPeripheralOptionNotifyOnDisconnectionKey: &'static NSString;
}
extern "C" {
/// An NSNumber (Boolean) indicating that the system should display an alert for all notifications received from a given peripheral, if
/// the application is suspended at the time.
/// This is useful for applications that have not specified the
/// <code>
/// bluetooth-central
/// </code>
/// background mode and cannot display their
/// own alert. If more than one application has requested notification for a given peripheral, the one that was most recently in the foreground
/// will receive the alert.
///
///
/// See: connectPeripheral:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectperipheraloptionnotifyonnotificationkey?language=objc)
pub static CBConnectPeripheralOptionNotifyOnNotificationKey: &'static NSString;
}
extern "C" {
/// An NSNumber indicating the number of seconds for the system to wait before starting a connection.
///
///
/// See: connectPeripheral:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectperipheraloptionstartdelaykey?language=objc)
pub static CBConnectPeripheralOptionStartDelayKey: &'static NSString;
}
extern "C" {
/// An NSNumber (Boolean) indicating that the system will bring up classic transport profiles when low energy transport for peripheral is connected.
///
///
/// See: connectPeripheral:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectperipheraloptionenabletransportbridgingkey?language=objc)
pub static CBConnectPeripheralOptionEnableTransportBridgingKey: &'static NSString;
}
extern "C" {
/// An NSNumber (Boolean) indicating that the ANCS (Apple Notification Center Service) is required for the peripheral is connected.
///
///
/// See: connectPeripheral:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectperipheraloptionrequiresancs?language=objc)
pub static CBConnectPeripheralOptionRequiresANCS: &'static NSString;
}
extern "C" {
/// An NSArray of
/// <code>
/// CBPeripheral
/// </code>
/// objects containing all peripherals that were connected or pending connection at the time the
/// application was terminated by the system. When possible, all known information for each peripheral will be restored, including any discovered
/// services, characteristics and descriptors, as well as characteristic notification states.
///
///
/// See: centralManager:willRestoreState:
///
/// See also: connectPeripheral:options:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanagerrestoredstateperipheralskey?language=objc)
pub static CBCentralManagerRestoredStatePeripheralsKey: &'static NSString;
}
extern "C" {
/// An NSArray of
/// <code>
/// CBUUID
/// </code>
/// objects containing the service(s) being scanned for at the time the application was terminated by the system.
///
///
/// See: centralManager:willRestoreState:
///
/// See also: scanForPeripheralsWithServices:options:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanagerrestoredstatescanserviceskey?language=objc)
pub static CBCentralManagerRestoredStateScanServicesKey: &'static NSString;
}
extern "C" {
/// An NSDictionary containing the scan options at the time the application was terminated by the system.
///
///
/// See: centralManager:willRestoreState:
///
/// See also: scanForPeripheralsWithServices:options:
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbcentralmanagerrestoredstatescanoptionskey?language=objc)
pub static CBCentralManagerRestoredStateScanOptionsKey: &'static NSString;
}
/// [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectioneventmatchingoption?language=objc)
// NS_TYPED_ENUM
pub type CBConnectionEventMatchingOption = NSString;
extern "C" {
/// An NSArray of
/// <code>
/// CBUUID
/// </code>
/// objects respresenting service UUIDs. A connected peer with any matching service UUIDs will result
/// in a call to {
///
/// ```text
/// centralManager:connectionEventDidOccur:}.
/// A maximum of 4 services can be registered.
///
/// @see centralManager:connectionEventDidOccur:forPeripheral:
/// @seealso registerForConnectionEventsWithOptions:
///
///
///
/// ```
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectioneventmatchingoptionserviceuuids?language=objc)
pub static CBConnectionEventMatchingOptionServiceUUIDs:
&'static CBConnectionEventMatchingOption;
}
extern "C" {
/// An NSArray of
/// <code>
/// NSUUID
/// </code>
/// objects respresenting
/// <i>
/// peripheral
/// </i>
/// identifiers. A connected peer with any matching identifier(s) will result
/// in a call to {
///
/// ```text
/// centralManager:connectionEventDidOccur:}.
///
/// @see centralManager:connectionEventDidOccur:forPeripheral:
/// @seealso registerForConnectionEventsWithOptions:
///
///
///
/// ```
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectioneventmatchingoptionperipheraluuids?language=objc)
pub static CBConnectionEventMatchingOptionPeripheralUUIDs:
&'static CBConnectionEventMatchingOption;
}
extern "C" {
/// An NSNumber (Boolean) indicating that the AutoReconnect is enabled for the peripheral is connected. After peripheral device is connected, this will allow
/// the system to initiate connect to the peer device automatically when link is dropped. Caller will get notified about the disconnection with potential delay via
/// {
///
/// ```text
/// centralManager:didDisconnectPeripheral:timestamp:isReconnecting:error:}
///
/// @see connectPeripheral:
///
///
///
/// ```
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/corebluetooth/cbconnectperipheraloptionenableautoreconnect?language=objc)
pub static CBConnectPeripheralOptionEnableAutoReconnect: &'static NSString;
}