/** @internal NOTE: Internal APIs. Subject to change. Use of these APIs in production applications is not supported. */
export declare function measure<T>(op: string, a: () => T): T;
export declare function measureAsync<T, P extends Promise<T>>(op: string, a: () => P): P;
export interface StopWatchDeadlineOptions {
    deadline: number;
}
export declare class StopWatch {
    private _totalElapsed;
    private _start;
    constructor(start?: boolean);
    get isRunning(): boolean;
    resetAndStart(): void;
    resetAndStop(): void;
    resume(): void;
    get elapsed(): number;
    get totalElapsed(): number;
    stop(): number;
}
export declare function timeoutAsync(ms?: number): Promise<void>;
export declare function yieldThreadFor(ms?: number): Promise<void>;
//# sourceMappingURL=stopwatch.d.ts.map