import { BundleService } from "../service";
import { Readable } from "./variable-interaction.interface";
import { DefaultVariableMonitor } from "./monitor/default-variable-monitor";
import { VariableManager } from "./variable-manager";
import { TlvBundleConverter } from "../extra-converter/TlvBundleConverter";
export declare class Bundle<DataType = {
    [key: string]: any;
}> implements Readable<DataType> {
    identifier: string;
    bundleId: number;
    bundleService: BundleService;
    variables?: VariableManager | undefined;
    protected _monitor?: DefaultVariableMonitor<DataType>;
    converter: TlvBundleConverter<DataType>;
    constructor(identifier: string, bundleId: number, bundleService: BundleService, variables?: VariableManager | undefined);
    read(): Promise<DataType>;
    monitor(): DefaultVariableMonitor<DataType>;
}
