import * as React from 'react'; import type { Img } from '../../types/props.js'; export type FeaturedBlogPostsSemanticName = 'root' | 'header' | 'title' | 'subtitle' | 'grid' | 'card' | 'cardImage' | 'cardContent' | 'cardTitle' | 'cardDescription' | 'cardMeta' | 'separator'; /** * 卡片宽度比例 */ export type FeaturedBlogPostSpan = 'full' | '2/3' | '1/3'; /** * 博文卡片项数据接口 */ export interface FeaturedBlogPostItem { /** 封面图片 */ image: { mobile?: Img; pad?: Img; laptop?: Img; desktop?: Img; lgDesktop?: Img; }; /** 文章标题 */ title: string; /** 文章描述 */ description?: string; /** 日期信息(分类·日期·作者) */ date?: string; /** 文章链接 */ link?: string; /** 卡片宽度比例,默认 full */ width?: FeaturedBlogPostSpan; } /** * FeaturedBlogPosts 业务组件数据接口 */ export interface FeaturedBlogPostsData { /** 主标题 */ title?: string; /** 副标题 */ subtitle?: string; /** 博文列表 */ items: FeaturedBlogPostItem[]; } export interface FeaturedBlogPostsProps extends React.HTMLAttributes { /** 业务数据 */ data: FeaturedBlogPostsData; /** 语义化类名覆盖 */ classNames?: Partial>; /** 卡片点击回调 */ onItemClick?: (item: FeaturedBlogPostItem, index: number, event: React.MouseEvent) => void; } declare const FeaturedBlogPosts: any; export default FeaturedBlogPosts;