import { InteractionEvent, InteractionManager, Point } from "pixi.js"; import { DBase, DBaseEvents, DBaseOptions, DThemeBase } from "./d-base"; import { DOnOptions } from "./d-on-options"; import { DBaseOverflowMask } from "./d-base-overflow-mask"; import { DCanvas } from "./d-canvas"; import { DView, DViewOptions } from "./d-view"; import { DViewImpl } from "./d-view-impl"; import { UtilWheelEventDeltas } from "./util/util-wheel-event"; /** * {@link DCanvasContainer} events. */ export interface DCanvasContainerEvents extends DBaseEvents { /** * Triggered when a canvas is removed. * * @param canvas a removed canvas * @param emitter an emitter */ unset(canvas: CANVAS, emitter: EMITTER): void; /** * Triggered when a canvas is set. * * @param canvas a new canvas * @param emitter an emitter */ set(canvas: CANVAS, emitter: EMITTER): void; } /** * {@link DCanvasContainer} "on" options. */ export interface DCanvasContainerOnOptions extends Partial>, DOnOptions { } /** * {@link DCanvasContainer} options. */ export interface DCanvasContainerOptions extends DBaseOptions { mask?: boolean; view?: DViewOptions; canvas?: CANVAS; on?: DCanvasContainerOnOptions; } /** * {@link DCanvasContainer} theme. */ export interface DThemeCanvasContainer extends DThemeBase { isOverflowMaskEnabled(): boolean; } /** * A canvas container. */ export declare class DCanvasContainer = DCanvasContainerOptions> extends DBase { protected _canvas: CANVAS | null; protected _overflowMask?: DBaseOverflowMask | null; protected _view: DViewImpl; protected init(options?: OPTIONS): void; protected getType(): string; onResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void; get canvas(): CANVAS | null; set canvas(canvas: CANVAS | null); protected getOverflowMask(): DBaseOverflowMask; protected updateContentSize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void; get view(): DView; protected onWheel(e: WheelEvent, deltas: UtilWheelEventDeltas, global: Point): boolean; protected onDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager, skipView?: boolean): boolean; protected onDown(e: InteractionEvent, skipView?: boolean): void; destroy(): void; }