import * as _g20_core from '@g20/core'; import { ElementBase, ColorProvider, G20, ViewDOM } from '@g20/core'; declare class Texture extends ElementBase implements ColorProvider { #private; _flagSrc: boolean; _flagImage: boolean; _flagVideo: boolean; _flagLoaded: boolean; _flagRepeat: boolean; _flagOffset: boolean; _flagScale: boolean; _src: string; _image: HTMLCanvasElement | HTMLImageElement | HTMLVideoElement | null; _loaded: boolean; _repeat: string; _scale: G20 | number; _offset: G20 | null; readonly change$: _g20_core.Observable; constructor(src?: string | HTMLCanvasElement | HTMLImageElement | HTMLVideoElement); serialize(): string; incrementUse(viewDOM: ViewDOM, defs: T): void; decrementUse(viewDOM: ViewDOM, defs: T): void; use(viewDOM: ViewDOM, svgElement: T): this; /** * Retrieves the tag name of an image, video, or canvas node. * @param image The image to infer the tag name from. * @returns the tag name of an image, video, or canvas node. */ static getTag(image: HTMLCanvasElement | HTMLImageElement | HTMLVideoElement): "canvas" | "img" | "video"; update(): this; flagReset(dirtyFlag?: boolean): this; get image(): HTMLCanvasElement | HTMLImageElement | HTMLVideoElement; set image(image: HTMLCanvasElement | HTMLImageElement | HTMLVideoElement); get loaded(): boolean; set loaded(v: boolean); get offset(): G20; set offset(v: G20); get repeat(): string; set repeat(v: string); get scale(): number | G20; set scale(v: number | G20); get src(): string; set src(src: string); } export { Texture };