@gravity-ui/graph
Version:
Modern graph editor component
37 lines (36 loc) • 1.17 kB
TypeScript
import { Emitter } from "../utils/Emitter";
import { Layer } from "./Layer";
export declare class Layers extends Emitter {
$root?: HTMLDivElement;
private attached;
readonly rootSize: import("@preact/signals-core").Signal<{
width: number;
height: number;
dpr: number;
}>;
protected layers: Set<Layer>;
constructor($root?: HTMLDivElement);
getDPR(): number;
createLayer<T extends Constructor<Layer> = Constructor<Layer>>(layerCtor: T, props: T extends Constructor<Layer<infer Props>> ? Omit<Props, "root"> & {
root?: Props["root"];
} : never): InstanceType<T>;
detachLayer(layer: Layer): void;
getRootSize(): {
width: number;
height: number;
dpr: number;
};
getLayers(): Layer[];
attach(root?: HTMLDivElement): void;
start(root?: HTMLDivElement): void;
detach(full?: boolean): void;
unmount(): void;
protected resizeObserver: ResizeObserver;
protected handleRootResize: (() => void) & {
cancel: () => void;
flush: () => void;
};
destroy(): void;
protected destroyLayers(): void;
updateSize: () => void;
}