UNPKG

@up-group-ui/react-controls

Version:
40 lines (39 loc) 2.15 kB
import React from 'react'; import { ThemeInterface } from './types'; import * as PropTypes from 'prop-types'; export declare type WithThemeProps = { theme?: ThemeInterface; }; declare const withTheme: <P extends React.PropsWithChildren<WithThemeProps>>(WrappedComponent: React.ComponentType<P>) => { new (props: any, context: any): { render(): JSX.Element; context: any; setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Omit<P, "children" | "theme">>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void; forceUpdate(callback?: () => void): void; readonly props: Readonly<Omit<P, "children" | "theme">> & Readonly<{ children?: React.ReactNode; }>; state: Readonly<{}>; refs: { [key: string]: React.ReactInstance; }; componentDidMount?(): void; shouldComponentUpdate?(nextProps: Readonly<Omit<P, "children" | "theme">>, nextState: Readonly<{}>, nextContext: any): boolean; componentWillUnmount?(): void; componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void; getSnapshotBeforeUpdate?(prevProps: Readonly<Omit<P, "children" | "theme">>, prevState: Readonly<{}>): any; componentDidUpdate?(prevProps: Readonly<Omit<P, "children" | "theme">>, prevState: Readonly<{}>, snapshot?: any): void; componentWillMount?(): void; UNSAFE_componentWillMount?(): void; componentWillReceiveProps?(nextProps: Readonly<Omit<P, "children" | "theme">>, nextContext: any): void; UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Omit<P, "children" | "theme">>, nextContext: any): void; componentWillUpdate?(nextProps: Readonly<Omit<P, "children" | "theme">>, nextState: Readonly<{}>, nextContext: any): void; UNSAFE_componentWillUpdate?(nextProps: Readonly<Omit<P, "children" | "theme">>, nextState: Readonly<{}>, nextContext: any): void; }; displayName: string; contextTypes: { theme: PropTypes.Requireable<object>; }; contextType?: React.Context<any>; }; export default withTheme;