import { PropType } from 'vue';
import { ExtractPublicPropTypes } from './BaseScrollbar';
export interface ScrollTo {
    (x: number, y: number): void;
    (options: {
        left?: number;
        top?: number;
        behavior?: ScrollBehavior;
    }): void;
}
export declare type ScrollBy = ScrollTo;
export interface ScrollbarInst {
    scrollTo: ScrollTo;
    scrollBy: ScrollBy;
}
export declare const scrollbarProps: {
    readonly trigger: PropType<"none" | "hover">;
    readonly xScrollable: BooleanConstructor;
    readonly onScroll: PropType<(e: Event) => void>;
};
export declare type ScrollbarProps = ExtractPublicPropTypes<typeof scrollbarProps>;
declare const Scrollbar: import("vue").DefineComponent<{
    readonly trigger: PropType<"none" | "hover">;
    readonly xScrollable: BooleanConstructor;
    readonly onScroll: PropType<(e: Event) => void>;
}, {
    scrollbarInstRef: import("vue").Ref<{
        $el: HTMLElement;
        containerRef: HTMLElement;
        contentRef: HTMLElement;
        containerScrollTop: number;
        syncUnifiedContainer: () => void;
        scrollTo: import("./BaseScrollbar").ScrollTo;
        scrollBy: import("./BaseScrollbar").ScrollBy;
        sync: () => void;
        handleMouseEnterWrapper: () => void;
        handleMouseLeaveWrapper: () => void;
    }>;
    scrollContainer: import("vue").ComputedRef<HTMLElement>;
    scrollContent: import("vue").ComputedRef<HTMLElement>;
    scrollTo: ScrollTo;
    scrollBy: ScrollBy;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    readonly trigger: PropType<"none" | "hover">;
    readonly xScrollable: BooleanConstructor;
    readonly onScroll: PropType<(e: Event) => void>;
}>>, {
    readonly xScrollable: boolean;
}>;
export default Scrollbar;
