import { AfterViewInit, ElementRef, EventEmitter, OnInit, QueryList, Renderer2, TemplateRef } from '@angular/core'; import * as i0 from "@angular/core"; interface Point { x: number; y: number; } export declare type GridLayout = { [key: number]: number; }; export declare type SGridChangeOrder = [any, number, number]; export declare class SgridComponent implements OnInit, AfterViewInit { private renderer2; gridLayout: GridLayout | undefined; gridItemWidth: string; items: any[]; gridBox: ElementRef; gridItems: QueryList; gridItemTemplateRef: TemplateRef; onChange: EventEmitter; gridLayoutCss: { [key: string]: string | number; }; initialDraggingElementIndex: number; draggingElementIndex: number; private draggingElementCenterPoint; private dragStartPoint; private ifMoveOnce; private ifMovedOnceFlag; private PLACEHOLDER_STRING; private moveIndexSource; private moveIndexDestination; itemPositions: Point[] | undefined; ifHasDragHandles: boolean; dragRestrictionBox: [Point, Point] | undefined; trackItemBy: (index: number, item: any) => any; constructor(renderer2: Renderer2); ngOnInit(): void; ngAfterViewInit(): void; startDrag(event: MouseEvent, elementIndex: number): void; drag(event: MouseEvent): void; stopDrag(): void; private bindDragHelpers; private startDragHelper; private resetDraggingMode; private getHTMLElementPosition; private getHTMLElementBox; private cloneHTMLElementPositionAndSize; private setHTMLElementTransform; private setHTMLElementPosition; private changeItemPosition; private saveCurrentPositions; private windowResized; private applyGridLayout; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};