tss-react-v18-peer-testing
Version:
makeStyles is dead, long live makeStyles!
34 lines (33 loc) • 2.51 kB
TypeScript
/// <reference types="react" />
/** @see <https://docs.tss-react.dev/setup> */
export declare const makeStyles: <Params = void, RuleNameSubsetReferencableInNestedSelectors extends string = never>(params?: {
name?: string | Record<string, unknown> | undefined;
} | undefined) => <RuleName extends string>(cssObjectByRuleNameOrGetCssObjectByRuleName: Record<RuleName, import("./index").CSSObject> | ((theme: import("@mui/material/styles").Theme, params: Params, classes: Record<RuleNameSubsetReferencableInNestedSelectors, string>) => Record<RuleNameSubsetReferencableInNestedSelectors | RuleName, import("./index").CSSObject>)) => (params: Params, styleOverrides?: {
props: {
classes?: Record<string, string> | undefined;
} & Record<string, unknown>;
ownerState?: Record<string, unknown> | undefined;
} | undefined) => {
classes: Record<RuleName, string>;
theme: import("@mui/material/styles").Theme;
css: import("./types").Css;
cx: import("./types").Cx;
}, withStyles: <C extends keyof import("react").ReactHTML | import("./tools/ReactComponent").ReactComponent<any>, Props extends C extends import("./tools/ReactComponent").ReactComponent<infer P> ? P : C extends keyof import("react").ReactHTML ? import("react").ReactHTML[C] extends import("./tools/ReactComponent").ReactComponent<infer P_1> ? NonNullable<P_1> : never : never, CssObjectByRuleName extends Props extends {
classes?: Partial<infer ClassNameByRuleName> | undefined;
} ? { [RuleName in keyof ClassNameByRuleName]?: import("./index").CSSObject | undefined; } & {
[mediaQuery: `@media${string}`]: { [RuleName_1 in keyof ClassNameByRuleName]?: import("./index").CSSObject | undefined; };
} : {
root: import("./index").CSSObject;
} & {
[mediaQuery: `@media${string}`]: {
root: import("./index").CSSObject;
};
}>(Component: C, cssObjectByRuleNameOrGetCssObjectByRuleName: (CssObjectByRuleName & {
[mediaQuery: `@media${string}`]: { [Key in keyof CssObjectByRuleName]?: import("./index").CSSObject | undefined; };
}) | ((theme: import("@mui/material/styles").Theme, props: Props, classes: Record<Exclude<keyof CssObjectByRuleName, `@media${string}`>, string>) => CssObjectByRuleName), params?: {
name?: string | Record<string, unknown> | undefined;
} | undefined) => C extends keyof import("react").ReactHTML ? import("react").ReactHTML[C] : C, useStyles: () => {
theme: import("@mui/material/styles").Theme;
css: import("./types").Css;
cx: import("./types").Cx;
};