UNPKG

@tanstack/angular-virtual

Version:

Headless UI for virtualizing scrollable elements in Angular

24 lines (23 loc) 1.41 kB
import { Injector, ElementRef } from '@angular/core'; import { PartialKeys, VirtualizerOptions } from '@tanstack/virtual-core'; import { AngularVirtualizer } from './types.cjs'; export * from '@tanstack/virtual-core'; export * from './types.cjs'; export type AngularVirtualizerOptions<TScrollElement extends Element | Window, TItemElement extends Element> = VirtualizerOptions<TScrollElement, TItemElement> & { /** * Whether to flush the DOM using `ApplicationRef.tick()` * @default true * */ useApplicationRefTick?: boolean; }; export type AngularExtensionOptions = { /** * The injector to use for the virtualizer. * @default inject(Injector) */ injector?: Injector; }; export declare function injectVirtualizer<TScrollElement extends Element, TItemElement extends Element>(options: () => PartialKeys<Omit<AngularVirtualizerOptions<TScrollElement, TItemElement>, 'getScrollElement'>, 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'> & { scrollElement: ElementRef<TScrollElement> | TScrollElement | undefined; }): AngularVirtualizer<TScrollElement, TItemElement>; export declare function injectWindowVirtualizer<TItemElement extends Element>(options: () => PartialKeys<AngularVirtualizerOptions<Window, TItemElement>, 'getScrollElement' | 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'>): AngularVirtualizer<Window, TItemElement>;