import { HomieDevice } from "./HomieDevice"; import { Observable } from "rxjs"; import { DeviceQuery, NodeQuery, PropertyQuery, Query, RXObjectQuery } from "./model/Query.model"; import { HomieProperty } from "./HomieProperty"; import { HomieNode } from "./HomieNode"; import { ObjectMap, RXObjectAttributes } from "./model"; import { RXObject } from "./RXObject"; export declare function queryRXObjects, TAttribute extends RXObjectAttributes>(objs$: Observable>, query: RXObjectQuery, debounce?: number, idAttr?: string): Observable; export declare function queryChildElements, TParentAttrs extends RXObjectAttributes, TChild extends RXObject, TChildAttrs extends RXObjectAttributes>(parents$: Observable>, query: RXObjectQuery, getChildren: (parent: TParent) => Observable>, debounce?: number): Observable; export declare function queryDevices(devices$: Observable>, query: DeviceQuery, debounce?: number): Observable; export declare function queryNodes(devices$: Observable>, query: NodeQuery, debounce?: number): Observable; export declare function queryProperties(nodes$: Observable>, query: PropertyQuery, debounce?: number): Observable; export declare function query(devices$: Observable>, q: Query, debounce?: number): Observable;