import { Group, Scene } from "spritejs"; import { ICameraOpt, ILayerOptionType, IWorkerMessage, IRectType } from ".."; import { LocalWork, ISubWorkerInitOption, IWorkerInitOption } from "./base"; import { VNodeManager } from "../vNodeManager"; export interface ISnapshotWorkInitOption extends ISubWorkerInitOption { createScene(opt: IWorkerInitOption): Scene; createLayer(name: string, scene: Scene, opt: ILayerOptionType, offscreenCanvas?: OffscreenCanvas): Group; } export declare class SnapshotWork extends LocalWork { protected opt: ISnapshotWorkInitOption; protected scene?: Scene | undefined; protected cameraOpt: ICameraOpt | undefined; vNodes?: VNodeManager; constructor(opt: ISnapshotWorkInitOption); createSnapshotFullLayer(sceneOpt: IWorkerInitOption, opt: ILayerOptionType): void; destroySnapshotFullLayer(): void; private updateScene; private updateLayer; setCameraOpt(cameraOpt: ICameraOpt): void; private getOffscreen; private getRectImageBitmap; getSnapshot(data: IWorkerMessage): Promise; protected runFullWork(data: IWorkerMessage): Promise; getSceneRect(): IRectType; private getSnapshotRender; getBoundingRect(data: IWorkerMessage): Promise; }