UNPKG

goobs-frontend

Version:

A comprehensive React-based libary for building modern web applications

190 lines 5.53 kB
import { default as React } from 'react'; export interface AccordionTheme { container: { backgroundColor: string; borderWidth: string; borderStyle: string; borderColor: string; borderRadius: string; boxShadow: string; backdropFilter: string; backgroundImage?: string; }; containerHover: { transform: string; boxShadow: string; borderColor?: string; }; containerExpanded: { boxShadow: string; backgroundColor: string; borderColor?: string; backgroundImage?: string; }; summary: { backgroundColor: string; color: string; fontFamily: string; fontSize: string; fontWeight: string | number; letterSpacing: string; textShadow?: string; borderBottom: string; minHeight: string; height?: string; maxHeight?: string; whiteSpace?: string; overflow?: string; textOverflow?: string; minWidth?: string; }; summaryHover: { backgroundColor: string; color: string; transform?: string; textShadow?: string; }; summaryExpanded: { backgroundColor: string; borderBottomColor: string; color: string; fontWeight: string | number; textShadow?: string; }; details: { backgroundColor: string; borderTop: string; color: string; fontFamily: string; fontSize: string; lineHeight: string | number; backdropFilter: string; }; icon: { color: string; filter?: string; }; iconHover: { color: string; transform: string; filter?: string; }; iconExpanded: { transform: string; color: string; filter?: string; }; transition: string; mobile: { borderRadius: string; boxShadow: string; summaryPadding: string; summaryMinHeight: string; detailsPadding: string; summaryFontSize: string; }; tablet: { detailsPadding: string; }; desktop: { detailsPadding: string; }; } export interface AccordionStyles { theme?: 'light' | 'dark' | 'sacred'; backgroundColor?: string; borderColor?: string; borderRadius?: string; borderWidth?: string; boxShadow?: string; backdropFilter?: string; backgroundImage?: string; hoverBackgroundColor?: string; hoverBorderColor?: string; hoverBoxShadow?: string; hoverTransform?: string; expandedBackgroundColor?: string; expandedBorderColor?: string; expandedBoxShadow?: string; expandedBackgroundImage?: string; summaryBackgroundColor?: string; summaryColor?: string; summaryFontFamily?: string; summaryFontSize?: string; summaryFontWeight?: string | number; summaryLetterSpacing?: string; summaryTextShadow?: string; summaryBorderBottom?: string; summaryWhiteSpace?: string; summaryOverflow?: string; summaryTextOverflow?: string; summaryHoverBackgroundColor?: string; summaryHoverColor?: string; summaryHoverTransform?: string; summaryHoverTextShadow?: string; summaryExpandedBackgroundColor?: string; summaryExpandedBorderBottomColor?: string; summaryExpandedColor?: string; summaryExpandedFontWeight?: string | number; summaryExpandedTextShadow?: string; detailsBackgroundColor?: string; detailsBorderTop?: string; detailsColor?: string; detailsFontFamily?: string; detailsFontSize?: string; detailsLineHeight?: string | number; detailsBackdropFilter?: string; iconColor?: string; iconFilter?: string; iconHoverColor?: string; iconHoverTransform?: string; iconHoverFilter?: string; iconExpandedTransform?: string; iconExpandedColor?: string; iconExpandedFilter?: string; padding?: string; summaryPadding?: string; detailsPadding?: string; margin?: string; marginBottom?: string; minHeight?: string; summaryMinHeight?: string; transitionDuration?: string; transitionEasing?: string; disabled?: boolean; outline?: boolean; width?: string; maxWidth?: string; minWidth?: string; height?: string; maxHeight?: string; level?: number; levelIndentBase?: number; levelIndentIncrement?: number; } export declare const accordionThemes: Record<'light' | 'dark' | 'sacred', AccordionTheme>; export declare const getAccordionTheme: (styles?: AccordionStyles) => AccordionTheme; export declare const getAccordionStyles: (styles?: AccordionStyles, isHovered?: boolean, isExpanded?: boolean, isDisabled?: boolean) => { container: React.CSSProperties; summary: React.CSSProperties; details: React.CSSProperties; icon: React.CSSProperties; responsive: { mobile: { container: Partial<React.CSSProperties>; summary: Partial<React.CSSProperties>; details: Partial<React.CSSProperties>; }; tablet: { container: Partial<React.CSSProperties>; summary: Partial<React.CSSProperties>; details: Partial<React.CSSProperties>; }; desktop: { container: Partial<React.CSSProperties>; summary: Partial<React.CSSProperties>; details: Partial<React.CSSProperties>; }; }; }; //# sourceMappingURL=accordion.d.ts.map