import { NativeElement } from '@nonoun/native-core'; /** * Generic scrollable feed container with auto-scroll and virtual scroll. * * ```html * *
Item 1
*
Item 2
*
* ``` * * @attr {'start'|'end'} align - Content alignment (default: start). `end` pushes content to bottom. * @attr {boolean} scroll - Enable scroll container (overflow-y: auto). CSS-only. * @attr {boolean} auto-scroll - Auto-scroll to bottom on new content (default: off) * @attr {boolean} virtual - Enable virtual scroll windowing * @attr {string} virtual-item-height - Estimated item height in px (default: 80) * @attr {string} virtual-overscan - Extra items to render outside viewport (default: 5) * @fires native:feed-scroll - Scroll pin state changed. Detail: `{ isPinned, scrollTop }` * @fires native:range-change - Virtual scroll range changed. Detail: `{ start, end, total }` */ export declare class NFeed extends NativeElement { #private; static observedAttributes: string[]; get isPinned(): boolean; /** Scroll to the bottom of the feed. */ scrollToBottom(smooth?: boolean): void; /** Data items for virtual rendering. */ get items(): unknown[]; set items(val: unknown[]); /** Callback that creates an HTMLElement from a data item. */ get itemRenderer(): ((item: unknown, index: number) => HTMLElement) | null; set itemRenderer(fn: ((item: unknown, index: number) => HTMLElement) | null); attributeChangedCallback(name: string, old: string | null, val: string | null): void; setup(): void; teardown(): void; } //# sourceMappingURL=feed-element.d.ts.map