import { type ContentstackBlock } from "./utils/blockUtils.js"; import { type SeoMetaInput } from "./utils/seoUtils.js"; interface ComponentMapping { [blockType: string]: any; } interface Props { /** Array of Contentstack modular blocks */ blocks?: ContentstackBlock[]; /** Component mapping object - maps block types to Vue components */ componentMap?: ComponentMapping; /** Fallback component for unmapped block types */ fallbackComponent?: any; /** CSS class for the container */ containerClass?: string; /** CSS class for empty blocks (Visual Builder support) */ emptyBlockClass?: string; /** Additional props to bind to the container */ containerProps?: Record; /** Show empty state when no blocks */ showEmptyState?: boolean; /** CSS class for empty state */ emptyStateClass?: string; /** Message to show in empty state */ emptyStateMessage?: string; /** Custom key field for blocks (defaults to _metadata.uid) */ keyField?: string; /** Whether to automatically extract block name from object keys */ autoExtractBlockName?: boolean; /** Prefix to remove from block names when mapping components */ blockNamePrefix?: string; /** Content type UID for fetching entry */ contentTypeUid?: string | undefined; /** URL to fetch entry by */ url?: string | undefined; /** Reference field paths to include */ referenceFieldPath?: string[]; /** JSON RTE field paths */ jsonRtePath?: string[]; /** Locale for the entry */ locale?: string; /** Replace HTML CSLP tags */ replaceHtmlCslp?: boolean; /** Field path to extract modular blocks from (e.g., 'modular_blocks' or 'page_components') */ blocksFieldPath?: string; /** SEO metadata object - passed directly to useSeoMeta */ seoMeta?: SeoMetaInput; /** Auto-generate SEO metadata from fetched entry data using field mapping */ autoSeoMeta?: boolean | Record; } declare var __VLS_1: {}, __VLS_3: {}, __VLS_10: {}; type __VLS_Slots = {} & { loading?: (props: typeof __VLS_1) => any; } & { error?: (props: typeof __VLS_3) => any; } & { empty?: (props: typeof __VLS_10) => any; }; declare const __VLS_base: import("vue").DefineComponent void; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly & Readonly<{}>, { locale: string; contentTypeUid: string; jsonRtePath: string[]; referenceFieldPath: string[]; replaceHtmlCslp: boolean; url: string; blocks: ContentstackBlock[]; componentMap: ComponentMapping; fallbackComponent: any; containerClass: string; emptyBlockClass: string; containerProps: Record; showEmptyState: boolean; emptyStateClass: string; emptyStateMessage: string; keyField: string; autoExtractBlockName: boolean; blockNamePrefix: string; blocksFieldPath: string; seoMeta: SeoMetaInput; autoSeoMeta: boolean | Record; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>; declare const __VLS_export: __VLS_WithSlots; declare const _default: typeof __VLS_export; export default _default; type __VLS_WithSlots = T & { new (): { $slots: S; }; };