react-classnaming
Version:
Tools to establish CSS classes as an explicit abstraction layer and to handle it as an interface between React and CSSStyleDeclaration
17 lines (16 loc) • 597 B
TypeScript
import type { CssModule } from "./definitions.types";
import type { ClassBeming } from "./bem.types";
export { classBeming };
/** Set context
* @example
* ```typescript
* const bem = classBeming({classnames: require("./some.css"), className?})
* const bem = classBeming(this.props)
* const bem = classBeming<Props>()
* const bem = classBeming<MyClassNames>()
* ```
*/
declare function classBeming<Ctx extends {
classnames: Source;
className?: string;
}, Source extends CssModule = Ctx["classnames"]>(context?: Ctx): ClassBeming<Source> & import("./main.types").ClassNamed;