import { App } from 'vue';
declare const OVirtualList: {
    new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        defaultStartIndex: {
            type: NumberConstructor;
            default: number;
        };
        list: {
            type: import('vue').PropType<unknown[]>;
            required: boolean;
            default: () => never[];
        };
        itemSize: {
            type: import('vue').PropType<number | ((item: unknown, index: number) => number)>;
        };
        defaultItemSize: {
            type: NumberConstructor;
            default: number;
        };
        buffer: {
            type: NumberConstructor;
            default: number;
        };
        scrollbar: {
            type: import('vue').PropType<boolean | Partial<import('..').BaseScrollerPropsT>>;
            default: boolean;
        };
        layout: {
            type: import('vue').PropType<import('./types').Layout>;
            default: string;
        };
        threshold: {
            type: import('vue').PropType<number | null>;
            default: null;
        };
    }>> & Readonly<{
        onRenderChange?: ((renderIndex: import('./types').RenderIndexInfo) => any) | undefined;
    }>, {
        scrollToView(index: number, align?: import('./types').Alignment, behavior?: ScrollBehavior): void;
        scrollToOffset(px: number): void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
        renderChange: (renderIndex: import('./types').RenderIndexInfo) => any;
    }, import('vue').PublicProps, {
        threshold: number | null;
        layout: import('./types').Layout;
        scrollbar: boolean | Partial<import('..').BaseScrollerPropsT>;
        defaultStartIndex: number;
        list: unknown[];
        defaultItemSize: number;
        buffer: number;
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        wrapperRef: HTMLDivElement;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        defaultStartIndex: {
            type: NumberConstructor;
            default: number;
        };
        list: {
            type: import('vue').PropType<unknown[]>;
            required: boolean;
            default: () => never[];
        };
        itemSize: {
            type: import('vue').PropType<number | ((item: unknown, index: number) => number)>;
        };
        defaultItemSize: {
            type: NumberConstructor;
            default: number;
        };
        buffer: {
            type: NumberConstructor;
            default: number;
        };
        scrollbar: {
            type: import('vue').PropType<boolean | Partial<import('..').BaseScrollerPropsT>>;
            default: boolean;
        };
        layout: {
            type: import('vue').PropType<import('./types').Layout>;
            default: string;
        };
        threshold: {
            type: import('vue').PropType<number | null>;
            default: null;
        };
    }>> & Readonly<{
        onRenderChange?: ((renderIndex: import('./types').RenderIndexInfo) => any) | undefined;
    }>, {
        scrollToView(index: number, align?: import('./types').Alignment, behavior?: ScrollBehavior): void;
        scrollToOffset(px: number): void;
    }, {}, {}, {}, {
        threshold: number | null;
        layout: import('./types').Layout;
        scrollbar: boolean | Partial<import('..').BaseScrollerPropsT>;
        defaultStartIndex: number;
        list: unknown[];
        defaultItemSize: number;
        buffer: number;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
    defaultStartIndex: {
        type: NumberConstructor;
        default: number;
    };
    list: {
        type: import('vue').PropType<unknown[]>;
        required: boolean;
        default: () => never[];
    };
    itemSize: {
        type: import('vue').PropType<number | ((item: unknown, index: number) => number)>;
    };
    defaultItemSize: {
        type: NumberConstructor;
        default: number;
    };
    buffer: {
        type: NumberConstructor;
        default: number;
    };
    scrollbar: {
        type: import('vue').PropType<boolean | Partial<import('..').BaseScrollerPropsT>>;
        default: boolean;
    };
    layout: {
        type: import('vue').PropType<import('./types').Layout>;
        default: string;
    };
    threshold: {
        type: import('vue').PropType<number | null>;
        default: null;
    };
}>> & Readonly<{
    onRenderChange?: ((renderIndex: import('./types').RenderIndexInfo) => any) | undefined;
}>, {
    scrollToView(index: number, align?: import('./types').Alignment, behavior?: ScrollBehavior): void;
    scrollToOffset(px: number): void;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    renderChange: (renderIndex: import('./types').RenderIndexInfo) => any;
}, string, {
    threshold: number | null;
    layout: import('./types').Layout;
    scrollbar: boolean | Partial<import('..').BaseScrollerPropsT>;
    defaultStartIndex: number;
    list: unknown[];
    defaultItemSize: number;
    buffer: number;
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
    $slots: Readonly<{
        default(props: {
            item: any;
            index: number;
        }): any;
    }> & {
        default(props: {
            item: any;
            index: number;
        }): any;
    };
}) & {
    install(app: App): void;
};
export { OVirtualList };
export * from './types';
