import { default as React } from 'react'; import { SwitchSize, SwitchProps } from './types'; import { SwitchTokensType } from './switch.token'; export declare const getSwitchDataState: (checked: boolean) => string; export declare const getSpacingBySize: (size: SwitchSize) => { marginLeft: string; marginTop: string; }; /** * Gets the text color based on switch state */ export declare const getSwitchTextColor: (tokens: SwitchTokensType, disabled: boolean, error: boolean) => string; /** * Gets the subtext color based on switch state */ export declare const getSwitchSubtextColor: (tokens: SwitchTokensType, disabled: boolean, error: boolean) => string; /** * Gets the text properties for switch labels */ export declare const getSwitchTextProps: (tokens: SwitchTokensType, size: SwitchSize, disabled: boolean, error: boolean) => { fontSize: string; fontWeight: string; color: string; }; /** * Gets the subtext properties for switch */ export declare const getSwitchSubtextProps: (tokens: SwitchTokensType, size: SwitchSize, disabled: boolean, error: boolean) => { fontSize: string; color: string; }; /** * Gets label styles for switch components */ export declare const getSwitchLabelStyles: (disabled: boolean) => { cursor: "not-allowed" | "pointer"; display: "flex"; alignItems: "center"; margin: number; padding: number; }; /** * Validates if a child element is a Switch component */ export declare const isSwitchElement: (child: React.ReactElement, SwitchComponent: React.ComponentType) => child is React.ReactElement; /** * Creates a group change handler for switch groups */ export declare const createSwitchGroupChangeHandler: (values: string[], isControlled: boolean, setInternalValues?: React.Dispatch>, onChange?: (values: string[]) => void) => (checked: boolean, childValue: string) => void; /** * Gets the subtext ID for aria-describedby connection * WCAG 3.3.2 (Labels or Instructions) & 4.1.2 (Name, Role, Value) */ export declare const getSubtextId: (uniqueId: string, hasSubtext: boolean) => string | undefined; /** * Merges aria-describedby values, combining custom and subtext IDs * WCAG 4.1.2 (Name, Role, Value) */ export declare const mergeAriaDescribedBy: (subtextId: string | undefined, customAriaDescribedBy: string | undefined) => string | undefined;