import { OrgBluezGattService1 } from "./dbus/GattService1";
import { ProxyObject } from "dbus-next";
import { GattCharacteristic } from "./gattCharacteristic";
import { Bluez } from "./bluez";
import { OrgBluezGattCharacteristic1Props } from "./dbus";
export declare class GattService extends OrgBluezGattService1 {
    private bluez;
    constructor(dbusObject: ProxyObject, bluez: Bluez);
    /**
     * Find a Gatt Characteristic by UUID
     * @param uuid
     * @throws {DBusError} org.bluez.Error.DoesNotExist
     */
    getCharacteristic(uuid: string): Promise<GattCharacteristic>;
    /**
     * Returns a list of known Gatt characteristics of this service
     * It returns key value pairs for each characteristic.
     * The key is the object path and the value is a snapshot of the properties of the characteristic.
     * To get the full characteristic interface use `Bluez.getDbusObjectInterface(GattCharacteristic, key)`
     */
    listCharacteristics(): Promise<{
        [key: string]: Partial<OrgBluezGattCharacteristic1Props>;
    }>;
}
