@tanislav000/bluez
Version:
Bluez5 D-Bus bindings for easy to use bluetooth access in Node.js
88 lines (87 loc) • 2.96 kB
TypeScript
import * as DBus from "dbus-next";
import { LooselyTypedEmitter, EventListenerSignature } from "../utilts";
/***** Signals for org.bluez.Device1 *****/
interface OrgBluezDevice1Events {
PropertiesChanged: (iface: string, changedProperties: {
[key: string]: any;
}, invalidatedProperties: string[]) => void;
}
/***** Properties of org.bluez.Device1 *****/
export interface OrgBluezDevice1Props {
Address: string;
AddressType: string;
Name: string;
Alias: string;
Class: number;
Appearance: number;
Icon: string;
Paired: boolean;
Trusted: boolean;
Blocked: boolean;
LegacyPairing: boolean;
RSSI: number;
Connected: boolean;
UUIDs: Array<string>;
Modalias: string;
Adapter: DBus.ObjectPath;
ManufacturerData: {
[key: number]: any;
};
ServiceData: {
[key: string]: any;
};
TxPower: number;
ServicesResolved: boolean;
}
/**
* Service: org.bluez
* ObjectPath: /org/bluez/hci0/-
* Interface: org.bluez.Device1
*/
export declare class OrgBluezDevice1<L extends EventListenerSignature<L> = Record<string, never>> extends LooselyTypedEmitter<OrgBluezDevice1Events & L> {
static readonly DbusInterfaceName = "org.bluez.Device1";
dbusObject: DBus.ProxyObject;
propertiesDBusInterface: DBus.ClientInterface;
thisDBusInterface: DBus.ClientInterface;
static Connect(bus: DBus.MessageBus, objectPath: string, xml?: string): Promise<OrgBluezDevice1>;
constructor(dbusObject: DBus.ProxyObject);
/***** Properties *****/
getProperties(): Promise<Partial<OrgBluezDevice1Props>>;
getProperty<T extends keyof OrgBluezDevice1Props>(name: T): Promise<OrgBluezDevice1Props[T]>;
setProperty<T extends keyof OrgBluezDevice1Props>(name: T, value: OrgBluezDevice1Props[T]): Promise<void>;
Address(): Promise<string>;
AddressType(): Promise<string>;
Name(): Promise<string>;
Alias(): Promise<string>;
Alias(value: string): Promise<void>;
Class(): Promise<number>;
Appearance(): Promise<number>;
Icon(): Promise<string>;
Paired(): Promise<boolean>;
Trusted(): Promise<boolean>;
Trusted(value: boolean): Promise<void>;
Blocked(): Promise<boolean>;
Blocked(value: boolean): Promise<void>;
LegacyPairing(): Promise<boolean>;
RSSI(): Promise<number>;
Connected(): Promise<boolean>;
UUIDs(): Promise<Array<string>>;
Modalias(): Promise<string>;
Adapter(): Promise<DBus.ObjectPath>;
ManufacturerData(): Promise<{
[key: number]: any;
}>;
ServiceData(): Promise<{
[key: string]: any;
}>;
TxPower(): Promise<number>;
ServicesResolved(): Promise<boolean>;
/***** Methods *****/
Disconnect(): Promise<void>;
Connect(): Promise<void>;
ConnectProfile(UUID: string): Promise<void>;
DisconnectProfile(UUID: string): Promise<void>;
Pair(): Promise<void>;
CancelPairing(): Promise<void>;
}
export {};