import { ElementEE, Element_ } from '../../../../../Class/Element';
import { System } from '../../../../../system';
import { CA } from '../../../../../types/interface/CA';
import { CSOpt } from '../../../../../types/interface/async/$CS';
import { Style } from '../../../Props';
import CanvasComp from './Component';
export interface I {
    style?: Style;
    width?: number;
    height?: number;
    d?: any[];
}
export interface O {
}
export interface CanvasJ {
}
export interface CanvasEE extends ElementEE<{}> {
}
export interface CanvasC extends CanvasComp {
}
export default class Canvas extends Element_<I, O, CanvasJ, CanvasEE, CanvasC> implements CA {
    __: string[];
    private _offscreen;
    private _offscreen_ctx;
    constructor(system: System);
    clear(): Promise<void>;
    drawImage(imageBitmap: ImageBitmap, x: number, y: number, width: number, height: number): Promise<void>;
    strokePath(d: string): void;
    fillPath(d: string, fillRule: CanvasFillRule): void;
    scale(sx: number, sy: number): void;
    translate(x: number, y: number): void;
    draw(step: any[]): Promise<void>;
    toBlob(type: string, quality: number): Promise<Blob>;
    captureStream({ frameRate }: CSOpt): Promise<MediaStream>;
    getImageData(x: number, y: number, width: number, height: number): ImageData;
    putImageData(image: ImageData, dx: number, dy: number, x: number, y: number, width: number, height: number): void;
    onDataInputData(name: string, data: any): void;
}
