import { DisplayObjectContainer } from "./DisplayObjectContainer";
import { Graphics } from "./Graphics";
import { BitmapData } from "./BitmapData";
import { DisplayObject } from "./DisplayObject";
import { Rectangle } from "../geom/Rectangle";
import { MouseEvent } from "../events/MouseEvent";
import { Canvas } from "canvaskit-wasm";
import { BitmapFilter } from "../filters";
export declare class Sprite extends DisplayObjectContainer {
    static __dragInstance: Sprite;
    static __dragFunction: Function;
    graphics: Graphics;
    private _downX;
    private _downY;
    private _dragRect;
    private _dragLockCenter;
    private _cacheImage;
    private _cacheWidth;
    private _cacheHeight;
    private _buttonMode;
    private _useHandCursor;
    private cacheBounds;
    constructor();
    get buttonMode(): boolean;
    set buttonMode(value: boolean);
    startDrag(lockCenter?: boolean, bounds?: Rectangle): void;
    stopDrag(): void;
    startTouchDrag(touchPointID: number, lockCenter?: boolean, bounds?: Rectangle): void;
    stopTouchDrag(touchPointID: number): void;
    get dropTarget(): DisplayObject;
    get hitArea(): Sprite;
    set hitArea(param1: Sprite);
    get useHandCursor(): boolean;
    set useHandCursor(value: boolean);
    set cacheAsBitmap(value: boolean);
    get cacheAsBitmap(): boolean;
    get cacheImage(): BitmapData;
    get cacheWidth(): number;
    get cacheHeight(): number;
    __update(ctx: Canvas, offsetX?: number, offsetY?: number, filters?: BitmapFilter[]): void;
    protected __doMouse: (e: MouseEvent) => DisplayObject;
    hitTestPoint: (x: number, y: number, shapeFlag?: boolean) => boolean;
    addEventListener: (type: string, listener: Function, useCapture?: boolean, priority?: number, useWeakReference?: boolean) => void;
    private handleDragMove;
}
