UNPKG

@visactor/vrender-core

Version:
62 lines (61 loc) 2.59 kB
import type { IPointLike } from '@visactor/vutils'; import { type IBoundsLike, type IMatrix, IBounds } from '@visactor/vutils'; import type { ICanvas, IContext2d, IDomRectLike, IGlobal, IWindow, IWindowHandlerContribution, IWindowParams } from '../interface'; import { SyncHook } from '../tapable'; export declare const VWindow: unique symbol; export declare const WindowHandlerContribution: unique symbol; export declare class DefaultWindow implements IWindow { protected _width: number; protected _height: number; protected _handler: IWindowHandlerContribution; hooks: { onChange: SyncHook<[number, number, number, number], void, import("../interface").UnsetAdditionalOptions>; }; parent: Window; get width(): number; get height(): number; _uid: number; resizable: boolean; minHeight: number; minWidth: number; maxHeight: number; maxWidth: number; title: string; mainCanvas: ICanvas; layerCanvas: ICanvas[]; actived: boolean; global: IGlobal; get dpr(): number; constructor(); protected postInit(): void; protected active: () => void; get style(): CSSStyleDeclaration | Record<string, any>; set style(style: CSSStyleDeclaration | Record<string, any>); create(params: IWindowParams): void; setWindowHandler(handler: IWindowHandlerContribution): void; setDpr(dpr: number): void; resize(w: number, h: number): void; configure(): void; release(): void; getContext(): IContext2d; getNativeHandler(): ICanvas; getImageBuffer(type?: string): any; addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; dispatchEvent(event: any): boolean; getBoundingClientRect(): IDomRectLike; getContainer(): HTMLElement | any; clearViewBox(color?: string): void; setViewBox(viewBox: IBoundsLike): void; setViewBoxTransform(a: number, b: number, c: number, d: number, e: number, f: number): void; getViewBox(): IBounds; getViewBoxTransform(): IMatrix; pointTransform(x: number, y: number): IPointLike; hasSubView(): boolean; isVisible(bbox?: IBoundsLike): boolean; onVisibleChange(cb: (currentVisible: boolean) => void): void; getTopLeft(baseWindow?: boolean): { top: number; left: number; }; }