goobs-frontend
Version:
A comprehensive React-based libary for building modern web applications
91 lines • 3.17 kB
TypeScript
import { default as React } from 'react';
export interface SwitchTheme {
/** Main container styling */
container: React.CSSProperties;
/** Container when disabled */
containerDisabled: React.CSSProperties;
/** Track (background) styling */
track: React.CSSProperties;
/** Track without outline */
trackNoOutline: React.CSSProperties;
/** Track when checked */
trackChecked: React.CSSProperties;
/** Track when focused */
trackFocused: React.CSSProperties;
/** Track when disabled */
trackDisabled: React.CSSProperties;
/** Thumb (switch handle) styling */
thumb: React.CSSProperties;
/** Thumb when checked */
thumbChecked: React.CSSProperties;
/** Thumb when disabled */
thumbDisabled: React.CSSProperties;
/** Input element styling */
input: React.CSSProperties;
/** Input when disabled */
inputDisabled: React.CSSProperties;
/** Sacred glyph styling */
glyph: React.CSSProperties;
/** Sacred glyph left position */
glyphLeft: React.CSSProperties;
/** Sacred glyph right position */
glyphRight: React.CSSProperties;
/** Sacred glyph when visible */
glyphVisible: React.CSSProperties;
/** Sacred shimmer effect */
shimmer: React.CSSProperties;
/** Left label styling */
leftLabel: React.CSSProperties;
/** Right label styling */
rightLabel: React.CSSProperties;
}
export interface SwitchStyles {
/** Theme selection: light, dark, or sacred */
theme?: 'light' | 'dark' | 'sacred';
/** Whether to show outline */
outline?: boolean;
/** Whether the switch is disabled */
disabled?: boolean;
/** Whether the switch is checked */
checked?: boolean;
/** Custom track width */
trackWidth?: string;
/** Custom track height */
trackHeight?: string;
/** Custom track background color */
trackBackground?: string;
/** Custom track border color */
trackBorderColor?: string;
/** Custom track border radius */
trackBorderRadius?: string;
/** Custom thumb size */
thumbSize?: string;
/** Custom thumb background color */
thumbBackground?: string;
/** Custom thumb border color */
thumbBorderColor?: string;
/** Custom label color */
labelColor?: string;
/** Custom label font family */
labelFontFamily?: string;
/** Custom label font size */
labelFontSize?: string;
/** Custom label font weight */
labelFontWeight?: string | number;
/** Custom transition duration */
transitionDuration?: string;
/** Custom checked track color */
checkedTrackColor?: string;
/** Custom checked thumb color */
checkedThumbColor?: string;
/** Custom hover effects */
hoverEffects?: boolean;
/** Custom focus effects */
focusEffects?: boolean;
/** Custom sacred glyph left */
sacredGlyphLeft?: string;
/** Custom sacred glyph right */
sacredGlyphRight?: string;
}
export declare const getSwitchStyles: (styles?: SwitchStyles, isFocused?: boolean, isHovered?: boolean, isChecked?: boolean, isDisabled?: boolean) => SwitchTheme;
//# sourceMappingURL=switch.d.ts.map