mirror of
https://github.com/FlipsideCrypto/DefinitelyTyped.git
synced 2026-02-06 10:56:53 +00:00
Definitions for cordova-plugin-ibeacon added
This commit is contained in:
parent
e9cc82ad94
commit
c3bb5bb17e
62
cordova-plugin-ibeacon/cordova-plugin-ibeacon-tests.ts
Normal file
62
cordova-plugin-ibeacon/cordova-plugin-ibeacon-tests.ts
Normal file
@ -0,0 +1,62 @@
|
||||
/// <reference path="../cordova/cordova.d.ts" />
|
||||
/// <reference path="./cordova-plugin-ibeacon.d.ts" />
|
||||
|
||||
function registerDelegates() {
|
||||
cordova.plugins.locationManager.enableDebugLogs();
|
||||
|
||||
cordova.plugins.locationManager.delegate.didRangeBeaconsInRegion = (pluginResult) => didRangeBeaconsInRegion(pluginResult);
|
||||
cordova.plugins.locationManager.delegate.didEnterRegion = (pluginResult) => didEnterRegion(pluginResult);
|
||||
cordova.plugins.locationManager.delegate.didExitRegion = (pluginResult) => didExitRegion(pluginResult);
|
||||
cordova.plugins.locationManager.delegate.didDetermineStateForRegion = (pluginResult) => didDetermineStateForRegion(pluginResult);
|
||||
cordova.plugins.locationManager.delegate.didChangeAuthorizationStatus = (authorizationStatus) => didChangeAuthorizationStatus(authorizationStatus);
|
||||
cordova.plugins.locationManager.delegate.didStartMonitoringForRegion = (pluginResult) => didStartMonitoringForRegion(pluginResult);
|
||||
cordova.plugins.locationManager.delegate.monitoringDidFailForRegionWithError = (pluginResult) => monitoringDidFailForRegionWithError(pluginResult);
|
||||
|
||||
cordova.plugins.locationManager.onDomDelegateReady();
|
||||
}
|
||||
|
||||
function didRangeBeaconsInRegion(pluginResult: BeaconPlugin.PluginResult): void {
|
||||
for (var beacon of pluginResult.beacons) {
|
||||
console.log(beacon.uuid, beacon.major, beacon.minor, beacon.accuracy, beacon.proximity, beacon.rssi, beacon.tx);
|
||||
}
|
||||
}
|
||||
|
||||
function didEnterRegion(pluginResult: BeaconPlugin.PluginResult): void {
|
||||
var region: BeaconPlugin.Region = new cordova.plugins.locationManager.BeaconRegion("identifier", "uuid", 1, 2);;
|
||||
cordova.plugins.locationManager.startRangingBeaconsInRegion(this.createBeaconRegionFromPluginResult(pluginResult))
|
||||
.then(() => {
|
||||
console.log("startRangingBeaconsInRegion succeeded");
|
||||
})
|
||||
.catch((reason: any) => {
|
||||
console.error("startRangingBeaconsInRegion failed: " + reason);
|
||||
});
|
||||
}
|
||||
|
||||
function didExitRegion(pluginResult: BeaconPlugin.PluginResult): void {
|
||||
var region: BeaconPlugin.Region;
|
||||
cordova.plugins.locationManager.stopRangingBeaconsInRegion(region)
|
||||
.then(() => {
|
||||
console.log("stopRangingBeaconsInRegion succeeded");
|
||||
})
|
||||
.catch((reason: any) => {
|
||||
console.error("stopRangingBeaconsInRegion failed: " + reason);
|
||||
});
|
||||
}
|
||||
|
||||
function didDetermineStateForRegion(pluginResult: BeaconPlugin.PluginResult): void {
|
||||
if (pluginResult.state === "CLRegionStateInside") {
|
||||
console.log(pluginResult.region.identifier);
|
||||
}
|
||||
}
|
||||
|
||||
function didChangeAuthorizationStatus(authorizationStatus: string): void {
|
||||
console.log(authorizationStatus);
|
||||
}
|
||||
|
||||
function didStartMonitoringForRegion(pluginResult: BeaconPlugin.PluginResult): void {
|
||||
console.log(pluginResult.region.identifier);
|
||||
}
|
||||
|
||||
function monitoringDidFailForRegionWithError(pluginResult: BeaconPlugin.PluginResult): void {
|
||||
console.log(pluginResult.region.identifier);
|
||||
}
|
||||
95
cordova-plugin-ibeacon/cordova-plugin-ibeacon.d.ts
vendored
Normal file
95
cordova-plugin-ibeacon/cordova-plugin-ibeacon.d.ts
vendored
Normal file
@ -0,0 +1,95 @@
|
||||
// Type definitions for cordova-plugin-ibeacon v3.3.0
|
||||
// Project: https://github.com/petermetz/cordova-plugin-ibeacon
|
||||
// Definitions by: Markus Wagner <https://github.com/Ritzlgrmft/>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../q/Q.d.ts" />
|
||||
|
||||
interface CordovaPlugins {
|
||||
locationManager: BeaconPlugin.LocationManager;
|
||||
}
|
||||
|
||||
declare module BeaconPlugin {
|
||||
/**
|
||||
* Beacon Plugin.
|
||||
*/
|
||||
export interface LocationManager {
|
||||
delegate: Delegate;
|
||||
BeaconRegion: BeaconRegion;
|
||||
onDomDelegateReady(): void;
|
||||
startMonitoringForRegion(region: Region): Q.Promise<void>;
|
||||
stopMonitoringForRegion(region: Region): Q.Promise<void>;
|
||||
requestStateForRegion(region: Region): Q.Promise<void>;
|
||||
startRangingBeaconsInRegion(region: Region): Q.Promise<void>;
|
||||
stopRangingBeaconsInRegion(region: Region): Q.Promise<void>;
|
||||
getAuthorizationStatus(): Q.Promise<PluginResult>;
|
||||
requestWhenInUseAuthorization(): Q.Promise<void>;
|
||||
requestAlwaysAuthorization(): Q.Promise<void>;
|
||||
getMonitoredRegions(): Q.Promise<Region[]>;
|
||||
getRangedRegions(): Q.Promise<Region[]>;
|
||||
isRangingAvailable(): Q.Promise<boolean>;
|
||||
isMonitoringAvailableForClass(region: Region): Q.Promise<boolean>;
|
||||
startAdvertising(region: Region, measuredPower: boolean): Q.Promise<void>;
|
||||
stopAdvertising(): Q.Promise<void>;
|
||||
isAdvertisingAvailable(): Q.Promise<boolean>;
|
||||
isAdvertising(): Q.Promise<boolean>;
|
||||
disableDebugLogs(): Q.Promise<void>;
|
||||
enableDebugNotifications(): Q.Promise<void>;
|
||||
disableDebugNotifications(): Q.Promise<void>;
|
||||
enableDebugLogs(): Q.Promise<void>;
|
||||
isBluetoothEnabled(): Q.Promise<boolean>;
|
||||
enableBluetooth(): Q.Promise<void>;
|
||||
disableBluetooth(): Q.Promise<void>;
|
||||
appendToDeviceLog(message: string): Q.Promise<string>;
|
||||
}
|
||||
|
||||
export interface PluginResult {
|
||||
eventType: string;
|
||||
region: Region;
|
||||
beacons: Beacon[];
|
||||
authorizationStatus: string;
|
||||
state: string;
|
||||
}
|
||||
|
||||
export interface Delegate {
|
||||
didDetermineStateForRegion(pluginResult: PluginResult): void;
|
||||
didStartMonitoringForRegion(pluginResult: PluginResult): void;
|
||||
didExitRegion(pluginResult: PluginResult): void;
|
||||
didEnterRegion(pluginResult: PluginResult): void;
|
||||
didRangeBeaconsInRegion(pluginResult: PluginResult): void;
|
||||
peripheralManagerDidStartAdvertising(pluginResult: PluginResult): void;
|
||||
peripheralManagerDidUpdateState(pluginResult: PluginResult): void;
|
||||
didChangeAuthorizationStatus(authorizationStatus: string): void;
|
||||
monitoringDidFailForRegionWithError(pluginResult: PluginResult): void;
|
||||
}
|
||||
|
||||
export interface Region {
|
||||
identifier: string;
|
||||
new (identifier: string): Region;
|
||||
}
|
||||
|
||||
export interface BeaconRegion extends Region {
|
||||
uuid: string;
|
||||
major: string;
|
||||
minor: string;
|
||||
notifyEntryStateOnDisplay: boolean;
|
||||
new (identifier: string, uuid: string, major?: number, minor?: number, notifyEntryStateOnDisplay?: boolean): BeaconRegion;
|
||||
}
|
||||
|
||||
export interface CircularRegion extends Region {
|
||||
latitude: number;
|
||||
longitude: number;
|
||||
radius: number;
|
||||
new (identifier: string, latitude: number, longitude: number, radius: number): CircularRegion;
|
||||
}
|
||||
|
||||
export interface Beacon {
|
||||
uuid: string;
|
||||
major: string;
|
||||
minor: string;
|
||||
proximity: string;
|
||||
tx: number;
|
||||
rssi: number;
|
||||
accuracy: number;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user