UNPKG

@eslamdevui/ui

Version:

A UI Library for Modern Web Apps, powered by Vue & Tailwind CSS.

53 lines (52 loc) 2 kB
import theme from '#build/ui/content/content-surround'; import type { ContentNavigationItem } from '@nuxt/content'; import type { AppConfig } from '@nuxt/schema'; import type { ComponentConfig } from '../../types'; type ContentSurround = ComponentConfig<typeof theme, AppConfig, 'contentSurround'>; export interface ContentSurroundLink extends ContentNavigationItem { description?: string; /** * @IconifyIcon */ icon?: string; class?: any; ui?: Pick<ContentSurround['slots'], 'link' | 'linkLeading' | 'linkLeadingIcon' | 'linkTitle' | 'linkDescription'>; } export interface ContentSurroundProps<T extends ContentSurroundLink = ContentSurroundLink> { /** * The element or component this component should render as. * @defaultValue 'div' */ as?: any; /** * The icon displayed in the prev link. * @defaultValue appConfig.ui.icons.arrowLeft * @IconifyIcon */ prevIcon?: string; /** * The icon displayed in the next link. * @defaultValue appConfig.ui.icons.arrowRight * @IconifyIcon */ nextIcon?: string; surround?: T[]; class?: any; ui?: ContentSurround['slots']; } type SlotProps<T> = (props: { link: T; }) => any; export interface ContentSurroundSlots<T extends ContentSurroundLink = ContentSurroundLink> { 'link': SlotProps<T>; 'link-leading': SlotProps<T>; 'link-title': SlotProps<T>; 'link-description': SlotProps<T>; } declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ContentSurroundProps<ContentSurroundLink>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ContentSurroundProps<ContentSurroundLink>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ContentSurroundSlots<ContentSurroundLink>>; export default _default; type __VLS_WithSlots<T, S> = T & { new (): { $slots: S; }; };