illustrator.js
Version:
JavaScript image processing library
52 lines (51 loc) • 1.48 kB
TypeScript
import { Canvas, SKRSContext2D } from "@napi-rs/canvas";
import { ToolBox } from "../toolbox/base/ToolBox";
import { LayerManager } from "./LayerManager";
import { LayerTools } from "./LayerTools";
import { LayerUtils } from "./LayerUtils";
export declare type LayerToolHistory = Array<(ctx: SKRSContext2D) => Promise<void> | void>[];
export interface LayerTransformationData {
coordinates?: {
x: number;
y: number;
};
height?: number;
width?: number;
}
export declare class Layer {
#private;
readonly manager: LayerManager;
readonly id: number;
utils: LayerUtils;
tools: LayerTools;
coordinates: {
x: number;
y: number;
};
width: number;
height: number;
constructor(manager: LayerManager, id: number, options?: {
width?: number;
height?: number;
});
get name(): string;
get illustrator(): import("..").Illustrator;
get context(): SKRSContext2D;
get position(): number;
setPosition(position: number): number;
createTransformation(data: LayerTransformationData): void;
get locked(): boolean;
isLocked(): boolean;
lock(): this;
unlock(): this;
isHidden(): boolean;
get hidden(): boolean;
hide(): this;
show(): this;
save(): void;
restore(): void;
duplicate(name?: string): Layer;
applyTool(tool: ToolBox): void;
setHistory(history: LayerToolHistory): void;
render(): Promise<Canvas | null>;
}