import { MaybeRefOrGetter } from 'vue'; import { DefaultKeyField, ItemKey, KeyFieldValue, ValidKeyField } from '../types'; import { ScrollerCallbacks } from './scrollerOptions'; import { UseRecycleScrollerOptions, UseRecycleScrollerReturn } from './useRecycleScroller'; export interface UseWindowScrollerOptions extends Omit, 'pageMode'> { pageMode?: boolean; } export interface UseWindowScrollerReturn> extends UseRecycleScrollerReturn { } type ResolvedWindowScrollerItems> = TOptions['items'] extends MaybeRefOrGetter ? TItems : never; type InferredWindowScrollerItem> = ResolvedWindowScrollerItems[number]; type InferredWindowScrollerKeyField> = Extract>>; export declare function useWindowScroller = DefaultKeyField, TSizeField extends string = 'size'>(options: MaybeRefOrGetter & { keyField: ValidKeyField; }>, el?: MaybeRefOrGetter, before?: MaybeRefOrGetter, after?: MaybeRefOrGetter, callbacks?: ScrollerCallbacks): UseWindowScrollerReturn>; export declare function useWindowScroller>(options: MaybeRefOrGetter, el?: MaybeRefOrGetter, before?: MaybeRefOrGetter, after?: MaybeRefOrGetter, callbacks?: ScrollerCallbacks): UseWindowScrollerReturn, ItemKey, InferredWindowScrollerKeyField>>; export {};