/// <reference types="emscripten" />
import { PrivateCanvasDrawer } from './CanvasDrawer.js';
import { X as PerformanceMetrics } from '../Camera-Cz-HPV-7.js';
import './CavansDrawerAbstract.js';
import './DrawCommandBuffer.js';
import './Serializable.js';
import './FrameReaders/WatermarkStack.js';
import '../tsHelper.js';
import '../Common.js';
import '../DataCaptureContextSettings.js';
import '../DataCaptureViewPlusRelated.js';
import '../ViewControls.js';
import './CustomLocationsView.js';
import './View.js';
import './AnchorPositions.js';
import './HtmlElementState.js';
import '../logger.js';
import '../LoadingStatus.js';

declare class PrivateCanvasDrawerWithMetrics extends PrivateCanvasDrawer {
    private drawPerformanceTimer;
    private drawPerformanceFPSCounter;
    private lastDrawPerformanceFPSCounter;
    private performanceMetrics?;
    private performanceCanvasLayer;
    private _performanceLayerContext;
    constructor(canvas: HTMLCanvasElement);
    get performanceLayerContext(): CanvasRenderingContext2D;
    setupPerformanceLayer(): void;
    setPerformanceMetrics(performanceMetrics: PerformanceMetrics): void;
    updateCanvasSizeAttributes(width: number, height: number, devicePixelRatio?: number): ReturnType<PrivateCanvasDrawer["updateCanvasSizeAttributes"]>;
    protected doDraw(): void;
    protected drawPerformanceMetrics(): void;
    protected drawFullPerformanceMetrics(): void;
}

export { PrivateCanvasDrawerWithMetrics };
