import { LogLevel } from "@itwin/core-bentley";
import { DevToolsStatsOptions, IModelRpcProps } from "@itwin/core-common";
/**
 * Results of the ping test
 * @internal
 */
export interface PingTestResult {
    /** Minimum time for the ping response. Set to undefined if any one ping didn't get a response. */
    min: number | undefined;
    /** Maximum time for the ping response, Set to undefined if any one ping didn't get a response. */
    max: number | undefined;
    /** Average time for the ping response. Set to undefined if any one ping didn't get a response. */
    avg: number | undefined;
}
/**
 * Internal diagnostic utility for backends
 * @internal
 */
export declare class DevTools {
    private readonly _tokenProps;
    /** Create a new connection with a specific backend instance.
     * @param tokenProps The iModelToken that identifies that backend instance.
     * Supply a dummy token if contacting the backend without the Orchestrator.
     */
    static connectToBackendInstance(tokenProps: IModelRpcProps): DevTools;
    /** Constructor */
    private constructor();
    /** Measures the round trip times for one or more pings to the backend
     * @param count Number of pings to send to the backend
     * @return Result of ping test.
     */
    ping(count: number): Promise<PingTestResult>;
    /** Returns JSON object with backend statistics */
    stats(options?: DevToolsStatsOptions): Promise<any>;
    versions(): Promise<any>;
    /** Sets up a log level at the backend and returns the old log level */
    setLogLevel(inLoggerCategory: string, newLevel: LogLevel): Promise<LogLevel | undefined>;
}
//# sourceMappingURL=DevTools.d.ts.map