@etsoo/website
Version:
ETSOO CMS Based NextJs Website Framework
113 lines (112 loc) • 3.06 kB
TypeScript
import React from 'react';
import { CommonArticlePageProps } from './CommonArticlePage';
import { CommonPhotosRendererProps } from './CommonPhotosRenderer';
import { StaticTabPageProps } from '../props/StaticTabPageProps';
/**
* Common tab page renderer props
*/
export type CommonTabPageRendererProps = Omit<StaticTabPageProps, 'article'> & {
/**
* No description
*/
noDescription?: boolean;
/**
* Photos renderer
*/
photosRenderer?: (props: CommonPhotosRendererProps) => React.ReactNode;
};
/**
* Common page class names
*/
export declare const CommonPageClassNames: {
articleClassName: string;
articleTitleClassName: string;
articleContentClassName: string;
};
/**
* Common page title renderer props
*/
export type CommonPageTitleRendererProps = Omit<StaticTabPageProps, 'articles'> & {
/**
* Article title class name
*/
articleTitleClassName: string;
/**
* Is tab article?
*/
isTab?: boolean;
/**
* Title right part renderer
*/
titleRightRenderer?: (props: CommonPageTitleRightRendererProps) => React.ReactNode;
};
/**
* Common page title renderer
* @param Props
* @returns
*/
export declare function CommonPageTitleRenderer({ siteData, tab, article, articleTitleClassName, isTab, titleRightRenderer }: CommonPageTitleRendererProps): JSX.Element;
/**
* Common page title right part renderer props
*/
export type CommonPageTitleRightRendererProps = Omit<StaticTabPageProps, 'articles'> & {
/**
* Is tab article?
*/
isTab?: boolean;
};
/**
* Common tab page props
*/
export type CommonTabPageProps = StaticTabPageProps & {
/**
* Artical class name
*/
articleClassName?: string;
/**
* Artical title class name
*/
articleTitleClassName?: string;
/**
* Article renderer
*/
articleRenderer?: (props: CommonArticlePageProps) => JSX.Element;
/**
* Conent list renderer
*/
contentListRenderer?: (props: CommonTabPageRendererProps) => JSX.Element;
/**
* Full list renderer
*/
fullListRenderer?: (props: CommonTabPageRendererProps) => JSX.Element;
/**
* Logo list renderer
*/
logoListRenderer?: (props: CommonTabPageRendererProps) => JSX.Element;
/**
* Photos renderer
*/
photosRenderer?: (props: CommonPhotosRendererProps) => React.ReactNode;
/**
* Title list renderer
*/
titleListRenderer?: (props: CommonTabPageRendererProps) => JSX.Element;
/**
* Title renderer
*/
titleRenderer?: (props: CommonPageTitleRendererProps) => JSX.Element;
/**
* Title description list renderer
*/
titleDescriptionListRenderer?: (props: CommonTabPageRendererProps) => JSX.Element;
/**
* Title right part renderer
*/
titleRightRenderer?: (props: CommonPageTitleRightRendererProps) => JSX.Element;
};
/**
* Common tab page
* @param props Props
* @returns Component
*/
export declare function CommonTabPage(props: CommonTabPageProps): JSX.Element;