import { ElementRef, EventEmitter, NgZone } from '@angular/core';
import * as i0 from "@angular/core";
/**
 * Directive used for resizing/changing of width
 */
export declare class WidthResizerSADirective {
    protected document: Document;
    protected element: ElementRef<HTMLElement>;
    protected ngZone: NgZone;
    /**
     * Value of last recorded x coordinate of mouse
     */
    protected lastXCoordinate: number | null;
    /**
     * Occurs when size changes, represents difference, positive is that X increases, negative is if x decreases
     */
    size: EventEmitter<number>;
    constructor(document: Document, element: ElementRef<HTMLElement>, ngZone: NgZone);
    /**
     * Handles start of dragging
     * @param event - Mouse event that occured
     */
    protected dragStart(event: MouseEvent): void;
    /**
     * Handles drag itself
     * @param event - Mouse event that occured
     */
    protected drag(event: MouseEvent): void;
    /**
     * Handles end of dragging
     * @param event - Mouse event that occured
     */
    protected dragEnd(event: MouseEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<WidthResizerSADirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<WidthResizerSADirective, "[widthResizer]", never, {}, { "size": "size"; }, never, never, true, never>;
}
//# sourceMappingURL=widthResizer.directive.d.ts.map