import { AfterViewInit, OnChanges, QueryList } from '@angular/core';
import { EditableLayoutItemComponent } from './editable-layout-item.component';
import { LayoutComponent } from './layout.component';
import * as i0 from "@angular/core";
export declare class EditableLayoutComponent extends LayoutComponent implements AfterViewInit, OnChanges {
    private static gridSquareSize;
    private static gridPaddingSize;
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    protected editableLayoutItems: QueryList<EditableLayoutItemComponent>;
    isEditMode: boolean;
    protected getInitialHostClasses(): string[];
    ngOnChanges(): void;
    /**
     * Method to change (start/stop) the draggable behavior of this layout.
     * @param isDraggable flag to start/stop draggable behavior of all the layout inside this layout.
     */
    changeDraggable(isDraggable: boolean): void;
    ngAfterViewInit(): void;
    get gridHeight(): number;
    get gridWidth(): number;
    /**
     * This method will be called once child/item layout is dragged to change the their position or
     * their corners are being dragged to resize them. This will be called on onMouseUp and onMouseLeave event.
     * @param item layout that is just dragged.
     */
    dragEnd(item: any): void;
    /**
     * This method will check overlapping when coordinates are out of conflicting area, like bigger div is dragged over smaller div.
     * @param pointOneOfDraggedDiv Y/X starting point of Vertical/Horizontal point of dragged div
     * @param pointTwoOfDraggedDiv Y/X ending point of Vertical/Horizontal point of dragged div
     * @param pointOneOfExistingDiv Y/X starting point of Vertical/Horizontal div over which new div is dragged
     * @param pointTwoOfExistingDiv Y/X ending point of Vertical/Horizontal div over which new div is dragged
     */
    areElementsOverlapping(pointOneOfDraggedDiv: number, pointTwoOfDraggedDiv: number, pointOneOfExistingDiv: number, pointTwoOfExistingDiv: number): boolean;
    /**
     * Just to check if searched item is fall under certain range.
     * @param start start of range
     * @param end end of range
     * @param search item being searched
     */
    checkBetween(start: number, end: number, search: number): boolean;
    /**
     * This method is adjust all the div with to fall on the boundary of grid with 72 x 72.
     */
    snapToGrid(): void;
    protected updateLayout(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<EditableLayoutComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EditableLayoutComponent, "sme-editable-layout", never, { "isEditMode": "isEditMode"; }, {}, ["editableLayoutItems"], ["sme-editable-layout-item"], false, never>;
}
