import * as _angular_core from '@angular/core'; import { AfterViewInit, OnChanges, TemplateRef, SimpleChanges } from '@angular/core'; import * as i2 from '@angular/common'; interface VirtualItem { index: number; data: T; } declare class VirtualScrollComponent implements AfterViewInit, OnChanges { private readonly viewport; private readonly templateContainer; /** 列表数据 */ ncItems: _angular_core.InputSignal; /** 列表项模板 */ ncItemTemplate: _angular_core.InputSignal | null>; /** 缓冲item数量,前后各2项 */ ncBufferCount: _angular_core.InputSignalWithTransform; readonly initialized: _angular_core.WritableSignal; readonly visibleItems: _angular_core.WritableSignal[]>; readonly totalPadding: _angular_core.WritableSignal; readonly topPadding: _angular_core.WritableSignal; readonly scrollTop: _angular_core.WritableSignal; itemHeight: number; viewportHeight: number; private readonly cdr; private readonly destroyRef; private readonly ngZone; private readonly renderer; private viewInitialized; private resizeObserver; private measureTimer; /** * 场景 触发行 原因 * 初始就有值(同步) 第 49 行measureAndUpdate ngOnChanges 先执行但 viewInitialized=false 跳过,由 ngAfterViewInit 补调 * 初始无值,后续赋值(异步) 第 75 行measureAndUpdate ngAfterViewInit 时无数据跳过,数据到达时 ngOnChanges 直接调用 */ constructor(); ngAfterViewInit(): void; ngOnChanges(changes: SimpleChanges): void; onScroll(): void; updateVisibleItems(): void; updateTotalPadding(): void; private clearItemsState; trackByIndex(item: VirtualItem): number; /** 测量 itemHeight 并更新列表(需在 ngAfterViewInit 之后调用) */ private measureAndUpdate; private cleanup; private clearMeasureTimer; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "nc-virtual-scroll", never, { "ncItems": { "alias": "ncItems"; "required": false; "isSignal": true; }; "ncItemTemplate": { "alias": "ncItemTemplate"; "required": false; "isSignal": true; }; "ncBufferCount": { "alias": "ncBufferCount"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } declare class NcVirtualScrollModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { NcVirtualScrollModule, VirtualScrollComponent };