import { Tap } from '@iotize/tap';
import '@iotize/tap/ext/data';
import { SwitchableStreamMonitor as SwitchableStreamController } from '../switchable-stream-monitor';
import { DataSourceController, DataSourceType, ItemHolder } from './definitions';
export declare class DataHolder {
    items: ItemHolder[];
    constructor(items?: ItemHolder[]);
    item(id: string): ItemHolder;
    add(item: ItemHolder, replace: boolean): ItemHolder;
}
export declare class DataManagerIonic<VariableByType extends Record<string, any> = Record<string, any>, VariableKey extends string = string, BundleByType extends Record<string, any> = Record<string, any>, BundleKey extends string = string> {
    tap: Tap;
    constructor(tap: Tap);
    get sourceController(): DataSourceController;
    get isMonitoringRunning(): boolean;
    switchableStreamController: SwitchableStreamController<any>;
    sourceControllers: Record<string, DataSourceController>;
    listVariables(): import("@iotize/tap/data").EditableDataStreamInterface<unknown, Uint8Array, import("@iotize/tap/data").ɵb>[];
    listBundles(): import("@iotize/tap/data/lib/utility/editable-data-stream").BundleDataStreamInterface<Record<string, any>>[];
    stopAll(): void;
    startAll(period?: number): void;
    setMonitoringPeriod(period: number): void;
    destroy(): void;
    refresh(): void;
    changeDataSource(dataSource: DataSourceType): void;
    useLiveSource(): void;
    useDatalogSource(): void;
}
