import type { JsxElementProps } from '@ecopages/jsx'; export type RuiFeedProps = JsxElementProps & { /** Accessible name for the feed landmark. */ label?: string; }; /** * Presentational feed shell (`role="feed"`). * * @cssclass rui-feed - Feed region (`role="feed"`). * * @remarks No custom element — compose articles like a Card family. Consumers own * infinite scroll, keyboard navigation, and `aria-posinset` / `aria-setsize`. * * @see https://www.w3.org/WAI/ARIA/apg/patterns/feed/ */ export declare function RuiFeed({ children, label, class: className, aria, ...props }: RuiFeedProps): import("@ecopages/jsx").JsxRenderable; export type RuiFeedArticleProps = JsxElementProps & { /** Position in the feed (1-based). */ posinset?: number; /** Total articles currently in the feed. */ setsize?: number; /** Id(s) of the distinguishing label element(s). */ labelledBy?: string; /** Id(s) of elements that summarize article content for skimming. */ describedBy?: string; }; /** * Single feed article. * * @cssclass rui-feed__article - Article card surface. */ export declare function RuiFeedArticle({ children, posinset, setsize, labelledBy, describedBy, tabindex, class: className, 'aria-posinset': ariaPosinset, 'aria-setsize': ariaSetsize, 'aria-labelledby': ariaLabelledby, 'aria-describedby': ariaDescribedby, ...props }: RuiFeedArticleProps): import("@ecopages/jsx").JsxRenderable; export type RuiFeedArticleHeaderProps = JsxElementProps; /** * Article masthead — avatar, title, tags. * * @cssclass rui-feed__header - Article header stack. */ export declare function RuiFeedArticleHeader({ children, class: className, ...props }: RuiFeedArticleHeaderProps): import("@ecopages/jsx").JsxRenderable; export type RuiFeedArticleContentProps = JsxElementProps; /** * Main article body. * * @cssclass rui-feed__content - Article body column. */ export declare function RuiFeedArticleContent({ children, class: className, ...props }: RuiFeedArticleContentProps): import("@ecopages/jsx").JsxRenderable; export type RuiFeedArticleActionsProps = JsxElementProps; /** * Action row (bookmark, share, etc.). * * @cssclass rui-feed__actions - Action row under a top border. */ export declare function RuiFeedArticleActions({ children, class: className, ...props }: RuiFeedArticleActionsProps): import("@ecopages/jsx").JsxRenderable; export type RuiFeedBylineProps = JsxElementProps; /** * Avatar + stacked identity row inside an article header. * * @cssclass rui-feed__byline - Avatar and identity row. */ export declare function RuiFeedByline({ children, class: className, ...props }: RuiFeedBylineProps): import("@ecopages/jsx").JsxRenderable; export type RuiFeedBylineBodyProps = JsxElementProps; /** * Text stack beside an avatar in a byline. * * @cssclass rui-feed__byline-body - Identity text stack. */ export declare function RuiFeedBylineBody({ children, class: className, ...props }: RuiFeedBylineBodyProps): import("@ecopages/jsx").JsxRenderable; export type RuiFeedMetaProps = JsxElementProps; /** * Compact meta row (rating · neighborhood · price). * * @cssclass rui-feed__meta - Metadata row. */ export declare function RuiFeedMeta({ children, class: className, ...props }: RuiFeedMetaProps): import("@ecopages/jsx").JsxRenderable;