@wulperstudio/cms
Version:
Wulper Studio Library Components CMS
42 lines (41 loc) • 1.72 kB
TypeScript
import React from 'react';
import { BoxProps, StackProps } from '@mui/material';
import { BlockVideoCustomModel } from '../BlockVideoCustom';
import { CustomButtonModel } from './styled';
import { ContentRowBlockModel } from '../../ContentRowBlock';
interface ButtonTabTemplateModel extends CustomButtonModel {
expanded: boolean;
handleChange?: () => void;
children?: React.ReactNode;
}
export declare const ButtonTabTemplate: ({ expanded, handleChange, children, ...rest }: ButtonTabTemplateModel) => import("react/jsx-runtime").JSX.Element;
interface FirstBlockModel {
containerProps?: StackProps;
contentTabsProps?: BoxProps;
}
export interface TabVideoModel {
id: string | number;
title: string;
expanded: boolean;
handleChange: () => void;
}
export interface RenderTabsVideoModel<T extends string, K extends TabVideoModel> {
blockImageProps?: BoxProps<'img'>;
blockVideoProps?: Partial<BlockVideoCustomModel>;
containerProps?: ContentRowBlockModel;
firstBlockProps?: FirstBlockModel;
panel: T;
renderChildren?: {
[key in T]: React.ReactNode;
};
renderUrl?: {
[key in T]: string;
};
tabProps?: Omit<ButtonTabTemplateModel, 'expanded'>;
tabs: K[];
title?: React.ReactNode;
variantBlock?: 'video' | 'image' | 'custom';
renderCustomTabChildren?: (props: K) => React.ReactNode;
}
export declare const RenderTabsVideo: <T extends string, K extends TabVideoModel>({ blockImageProps, blockVideoProps, containerProps, firstBlockProps, panel, renderChildren, renderUrl, tabProps, tabs, title, variantBlock, renderCustomTabChildren, }: RenderTabsVideoModel<T, K>) => import("react/jsx-runtime").JSX.Element;
export {};