import { Base, INotifyPropertyChanged, PropertyChangedEventArgs, Type } from "igniteui-webcomponents-core";
import { IDragger } from "./IDragger";
import { IDraggerView } from "./IDraggerView";
import { DragType } from "./DragType";
import { CellPath } from "./CellPath";
import { DragSelectEventArgs } from "./DragSelectEventArgs";
/**
 * @hidden
 */
export declare class Dragger extends Base implements IDragger, INotifyPropertyChanged {
    static $t: Type;
    private l;
    private d;
    private c;
    view: IDraggerView;
    private b;
    readonly dragType: DragType;
    private e;
    readonly isDragActive: boolean;
    private a;
    readonly cellPath: CellPath;
    private g;
    viewportWidth: number;
    private f;
    viewportHeight: number;
    onDrag: (sender: any, args: DragSelectEventArgs) => void;
    onDragEnd: (sender: any, args: DragSelectEventArgs) => void;
    propertyChanged: (sender: any, e: PropertyChangedEventArgs) => void;
    private j;
    onDetachedFromUI(): void;
    onAttachedToUI(): void;
    provideContainer(a: any): void;
    onMouseMove(a: number, b: number): void;
    onMouseUp(a: number, b: number): void;
    dragStart(a: number, b: number, c: number, d: number, e: DragType, f: CellPath, g: boolean): void;
    protected k(a: string, b: any, c: any): void;
}
