import type { TimestampsToReturn } from "node-opcua-data-value";
import { type MonitoredItemModifyResult, type MonitoringMode } from "node-opcua-service-subscription";
import { type Callback, type ErrorCallback, type StatusCode } from "node-opcua-status-code";
import type { MonitoringParametersOptions } from "node-opcua-types";
import type { ClientMonitoredItemBase } from "./client_monitored_item_base";
import type { ClientSubscription } from "./client_subscription";
export interface ClientMonitoredItemBaseEx extends ClientMonitoredItemBase {
    internalSetMonitoringMode(monitoringMode: MonitoringMode): void;
}
/**
 * @internal
 */
export declare class ClientMonitoredItemToolbox {
    static _toolbox_monitor(subscription: ClientSubscription, timestampsToReturn: TimestampsToReturn, monitoredItems: ClientMonitoredItemBase[], done: ErrorCallback): void;
    static _toolbox_modify(subscription: ClientSubscription, monitoredItems: ClientMonitoredItemBase[], parameters: MonitoringParametersOptions, timestampsToReturn: TimestampsToReturn, callback: Callback<MonitoredItemModifyResult[]>): void;
    static _toolbox_setMonitoringMode(subscription: ClientSubscription, monitoredItems: ClientMonitoredItemBaseEx[], monitoringMode: MonitoringMode, callback: Callback<StatusCode[]>): void;
}
