@tanstack/lit-virtual
Version:
Headless UI for virtualizing scrollable elements in Lit
20 lines (19 loc) • 1.35 kB
text/typescript
import { Virtualizer, PartialKeys, VirtualizerOptions } from '@tanstack/virtual-core';
import { ReactiveController, ReactiveControllerHost } from 'lit';
declare class VirtualizerControllerBase<TScrollElement extends Element | Window, TItemElement extends Element> implements ReactiveController {
host: ReactiveControllerHost;
private readonly virtualizer;
private cleanup;
constructor(host: ReactiveControllerHost, options: VirtualizerOptions<TScrollElement, TItemElement>);
getVirtualizer(): Virtualizer<TScrollElement, TItemElement>;
hostConnected(): Promise<void>;
hostUpdated(): void;
hostDisconnected(): void;
}
export declare class VirtualizerController<TScrollElement extends Element, TItemElement extends Element> extends VirtualizerControllerBase<TScrollElement, TItemElement> {
constructor(host: ReactiveControllerHost, options: PartialKeys<VirtualizerOptions<TScrollElement, TItemElement>, 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'>);
}
export declare class WindowVirtualizerController<TItemElement extends Element> extends VirtualizerControllerBase<Window, TItemElement> {
constructor(host: ReactiveControllerHost, options: PartialKeys<VirtualizerOptions<Window, TItemElement>, 'getScrollElement' | 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'>);
}
export {};