import { Base, Point, Type, INotifyPropertyChanged, PropertyChangedEventArgs } from "./type";
import { DomRenderer, DomWrapper } from "./dom";
import { IExecutionContext } from "./IExecutionContext";
import { CanvasGestureDOMEventProxy } from "./CanvasGestureDOMEventProxy";
import { Brush } from "./Brush";
import { Key } from "./Key";
import { DoubleAnimator } from "./DoubleAnimator";
import { ScrollbarStyle } from "./ScrollbarStyle";
import { IScrollerKeyboardListener } from "./IScrollerKeyboardListener";
import { ScrollerScrollingEventArgs } from "./ScrollerScrollingEventArgs";
/**
 * @hidden
 */
export declare class ScrollerView extends Base {
    static $t: Type;
    constructor(a: Scroller);
    c: Scroller;
    protected ad: DomRenderer;
    protected ah: DomWrapper;
    protected b: IExecutionContext;
    a8(): Brush;
    protected ac: HTMLDivElement;
    protected a: CanvasGestureDOMEventProxy;
    ag: DomWrapper;
    ae: DomWrapper;
    af: DomWrapper;
    ai: DomWrapper;
    a0(a: any): void;
    private k;
    private r;
    private ak;
    private al;
    private am;
    private p;
    private q;
    private n;
    private o;
    private e;
    private j;
    ay(a: number): void;
    az(a: number): void;
    av(a: number): void;
    aw(a: number): void;
    aj(): void;
    private an;
    private ao;
    a6(a: number): void;
    private ap;
    z(): number;
    aa(): number;
    private l;
    private m;
    private aq;
    a5(a: number): void;
    a1(a: any): void;
    private d;
    a2(a: () => void): void;
    private i;
    private h;
    private w;
    private t;
    private x;
    private u;
    private g;
    private f;
    private v;
    private s;
    at(): void;
    as(): void;
    a7(a: number, b: number): void;
    a3(a: number, b: number): void;
    a4(a: boolean): void;
    private y;
    private ab;
    ar(): void;
    ax(): void;
    au(): void;
}
/**
 * @hidden
 */
export declare class Scroller extends Base implements INotifyPropertyChanged {
    static $t: Type;
    constructor();
    private a9;
    smallVerticalChange: number;
    private _keyboardListener;
    keyboardListener: IScrollerKeyboardListener;
    private a1;
    largeVerticalChange: number;
    private av;
    bi: number;
    private at;
    bg: number;
    private a8;
    smallHorizontalChange: number;
    private a0;
    largeHorizontalChange: number;
    private au;
    bh: number;
    private as;
    bf: number;
    private ay;
    contentWidth: number;
    private a2;
    minScrollbarSize: number;
    private a5;
    scrollbarSpan: number;
    ai(a: Key, b: boolean, c: boolean): boolean;
    private ao;
    private af;
    private ah;
    private an;
    private aj;
    private ap;
    private ae;
    private am;
    private al;
    private ag;
    private bb;
    verticalTrackStartInset: number;
    private dp;
    scrollbarBrush: Brush;
    private c8;
    private v;
    private aq;
    protected db(a: string, b: any, c: any): void;
    private ax;
    contentHeight: number;
    c9(a: number): void;
    c7(a: number): void;
    da(a: number, b: number, c?: boolean): void;
    private bd;
    viewportWidth: number;
    private bc;
    viewportHeight: number;
    private a7;
    scrollTop: number;
    private a6;
    scrollLeft: number;
    private f;
    readonly view: ScrollerView;
    provideContainer(a: any): void;
    onDetachedFromUI(): void;
    onAttachedToUI(): void;
    provideContent(a: any): void;
    ak(a: Point, b: number, c: number): boolean;
    private t;
    lockScrollDirection: boolean;
    y: boolean;
    private aw;
    actualVerticalScrollbarHeight: number;
    private ar;
    actualHorizontalScrollbarWidth: number;
    private c;
    scrollbarStyle: ScrollbarStyle;
    private az;
    horizontalScrollbarStatus: number;
    private ba;
    verticalScrollbarStatus: number;
    private h;
    readonly horizontalAnimation: DoubleAnimator;
    private i;
    readonly verticalAnimation: DoubleAnimator;
    private bm;
    private bx;
    private bn;
    private by;
    private _executionContext;
    executionContext: IExecutionContext;
    readonly isVerticalActive: boolean;
    readonly isHorizontalActive: boolean;
    private _isDraggingVBar;
    isDraggingVBar: boolean;
    private _isDraggingHBar;
    isDraggingHBar: boolean;
    private q;
    private o;
    private p;
    private dr;
    private n;
    propertyChanged: (sender: any, e: PropertyChangedEventArgs) => void;
    focus(): void;
    c6(a: Point): void;
    c5(a: Point): void;
    onScrolling: (sender: any, args: ScrollerScrollingEventArgs) => void;
    scrollTo(a: number, b: number): void;
    private a3;
    private a4;
    private df;
    private dg;
    private u;
    private de;
    private dk;
    private dn;
    private dl;
    private dm;
    c4(a: Point): void;
    private ct;
    private cu;
    cv(): void;
    cw(): void;
    cz(): void;
    c0(): void;
    private b3;
    private b4;
    private b5;
    private m;
    private x;
    private l;
    private w;
    private r;
    private s;
    private di;
    private dj;
    private cx;
    private cy;
}
