welcome-ui
Version:
Customizable design system with react, typescript, tailwindcss and ariakit.
16 lines (15 loc) • 750 B
TypeScript
type ClassName<K extends string> = false | K | null | (string & {}) | undefined;
type ClassNameArg<K extends string> = ClassName<K> | ClassName<K>[] | {
[key: string]: boolean | null | undefined;
} | {
[P in K]?: boolean | null | undefined;
};
type CSSModule = Record<string, string>;
/**
* A utility function to create a classNames function with a specific CSS module.
* @param module The CSS module to use for class name resolution.
* @returns A function that takes class names and returns the resolved class names.
*/
export declare function classNames(): (...args: ClassNameArg<string>[]) => string;
export declare function classNames<C extends CSSModule>(module: C): (...args: ClassNameArg<keyof C & string>[]) => string;
export {};