/** * Returns the theme name of a given theme name or alias; * if there is no corresponding theme name, `'neutral'` is returned. * * @template { string } T * @overload * @param { T } theme * @returns { InferTheme extends never ? 'neutral' : InferTheme } */ export function inferTheme(theme: T): InferTheme extends never ? "neutral" : InferTheme; /** * @overload * @param { unknown } theme * @returns { Theme } * * Required for ReturnType to yield Theme. */ export function inferTheme(theme: unknown): Theme; /** * @template { string } T * @overload * @param { T } value * @returns { T extends ThemeAlias ? true : false } */ export function isValidTheme(value: T): T extends ThemeAlias ? true : false; /** * @param { 'Button' | 'ToggleButton' } c * @param { string } v */ export function isValidVariant(c: "Button" | "ToggleButton", v: string): boolean; /** * @typedef { { * (value: T): T extends Radius ? true : false; * (value: string): boolean; * } } IsValidRadius * @type { IsValidRadius } */ export const isValidRadius: IsValidRadius; /** * @typedef { { * (value: T): T extends Size ? true : false; * (value: string): boolean; * } } IsValidSize * @type { IsValidSize } */ export const isValidSize: IsValidSize; /** * @typedef { { * (value: T): T extends Spacing ? true : false; * (value: string): boolean; * } } IsValidSpacing * @type { IsValidSpacing } */ export const isValidSpacing: IsValidSpacing; /** @type { (value: string) => boolean } */ export const isValidColor: (value: string) => boolean; /** @type { (value: string) => boolean } */ export const isValidPlacement: (value: string) => boolean; export type IsValidRadius = { (value: T): T extends Radius ? true : false; (value: string): boolean; }; export type IsValidSize = { (value: T): T extends Size ? true : false; (value: string): boolean; }; export type IsValidSpacing = { (value: T): T extends Spacing ? true : false; (value: string): boolean; }; import type { InferTheme } from '#utilities'; import type { Theme } from '#utilities'; import type { ThemeAlias } from '#utilities'; import type { Radius } from '#utilities'; import type { Size } from '#utilities'; import type { Spacing } from '#utilities'; //# sourceMappingURL=theme.d.ts.map