import * as createjs from "createjs-module"; import { DragLayer, SelectState } from "./DragLayer"; import { AnchorProp, Control, ControlData, ControlTypeInfo, DesignerApi, PositionAndSizeProperty } from "../types"; import { EditorProperties } from "@iplusplus/y-model"; import { GroupControlData } from "../internal-controls/GroupControl"; import { ContainerControlPointsTypeInfo } from "../internal-controls/ContainerControl"; export declare class ControlLayer extends createjs.Container { api: DesignerApi; rightMax: number; bottomMax: number; constructor(rightMax: number, bottomMax: number, api: DesignerApi); changeSize(width: number, height: number): void; addControl(control: Control, x?: number, y?: number, needSelect?: boolean): void; moveControl(dragerLayer: DragLayer, movementX: number, movementY: number): void; moveControls(movementX: number, movementY: number): void; checkPosition: (d: DragLayer) => void; checkControlTypeIsSame(control1: Control, control2: Control): boolean; confirmSelectSame(dragLayer: DragLayer, isAdd: boolean): void; confirmSelect(dragLayer: DragLayer, isAdd: boolean): void; allControlExecute(fun: (dragLayer: DragLayer) => void): void; selectControl(x1: number, y1: number, x2: number, y2: number, isAdd: boolean): void; fireSelectedChanged(): void; getControlInfo(id: number): { typeInfo: ControlTypeInfo; properties: EditorProperties; data: ControlData; } | undefined; setSelectedControlProperty(newProperties: { [index: string]: unknown; }): void; applyCustomOperationToSelectedControls(fun: (control: Control) => void): void; getControlsData(): ControlData[]; private drags; private selectedDrags; private selectedDrag; getSelectedDragId(): number; private selectedControls; getDragById(id: number): DragLayer | undefined; getDragsBySelectState(s: SelectState): DragLayer[]; deleteControls(): void; setControlsLayer(layer: "top" | "bottom"): void; alignControl(alignType: "left" | "right" | "top" | "bottom" | "hcenter" | "vcenter"): void; resizeControls(resizeType: "width" | "height" | "both"): void; distributeControls(dType: "h" | "v"): void; lockControls(): void; getLockedDrags(): DragLayer[]; getControlId(ctrl: Control): number; getControlTitle(ctrl: Control): string; getControlById(controlId: number): Control | undefined; unlockControl(ctrl: Control): void; combinControls(): void; private packageControlToContainerInternal; packageControlToContainer(pointsTypeInfoBuilder: (controlData: ControlData) => ContainerControlPointsTypeInfo | undefined): void; private deCombinGroupControls; private deCombinContainerControls; deCombinControls(): void; getSelectGroupControlData(): GroupControlData | undefined; deleteDrag: (d: DragLayer) => void; clear(): void; destroy(): void; getControlData: (d: DragLayer) => ControlData; serializeControls(): ControlData[]; loadControls(controlDataList: ControlData[], offset?: number): void; getSelectedPosition(): PositionAndSizeProperty | undefined; setSelectedPosition(p: PositionAndSizeProperty): void; setSelectedPositionCustom(f: (old: PositionAndSizeProperty) => PositionAndSizeProperty): void; getSelectedAnchor(): AnchorProp | undefined; setSelectedAnchor(a: AnchorProp): void; }