@aurigma/design-atoms
Version:
Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.
26 lines (25 loc) • 1.26 kB
TypeScript
import { InteractiveZone, Surface, RectangleF, EventObject, PointF } from "@aurigma/design-atoms-model";
import { IInputManager } from "../../Input/InputManager/IInputManager";
import * as TextWhizz from "@aurigma/text-whizz/TextWhizzJS";
import { IInteractiveZoneStateStyle, IInteractiveZonesStyles } from "./ICanvasStyle";
import { ISelectionHandler } from "../../Services";
export interface IInteractiveZonesStateChangedEventArgs {
active: InteractiveZone;
highlighted: InteractiveZone;
}
export interface IInteractiveZonesHandler {
stateChangedEvent: EventObject<IInteractiveZonesStateChangedEventArgs>;
currentSurface: Surface;
interactiveZones: InteractiveZone[];
activeZone: InteractiveZone;
highlightZone: InteractiveZone;
isReady(): boolean;
getZoneStyle(zone: InteractiveZone, isActive: boolean, isHover: boolean): IInteractiveZoneStateStyle;
getZoneBounds(zone: InteractiveZone): RectangleF;
setStyles(styles: IInteractiveZonesStyles): any;
setInputManager(inputManager: IInputManager): any;
setSelectionHandler(selection: ISelectionHandler): unknown;
setTextWhizz(textWhizz: typeof TextWhizz): any;
setOffset(offset: PointF): any;
getSnapLines(): RectangleF[];
}