1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 | import React from "react";
|
7 |
|
8 | export declare type MediaQueries<M extends string = string> = {
|
9 | [K in M]: string;
|
10 | };
|
11 |
|
12 | export interface MediaQueryMatchers {
|
13 | [key: string]: MediaQueryList;
|
14 | }
|
15 |
|
16 | export declare type MediaQueryMatches<M extends string = string> = {
|
17 | [K in M]: boolean;
|
18 | };
|
19 |
|
20 | export interface ResponsiveProviderProps<M extends string> {
|
21 | mediaQueries: MediaQueries<M>;
|
22 | initialMatchingMediaQueries?: M[];
|
23 | children: React.ReactNode;
|
24 | }
|
25 |
|
26 | export interface ResponsiveProviderState {
|
27 | mediaQueryMatchers?: MediaQueryMatchers;
|
28 | mediaQueryMatches: MediaQueryMatches;
|
29 | }
|
30 |
|
31 | export declare function createResponsiveComponents<M extends string>(): {
|
32 | Consumer: React.SFC<React.ConsumerProps<MediaQueryMatches<M>>>;
|
33 | Provider: {
|
34 | new (props: ResponsiveProviderProps<M>): {
|
35 | isSupportedEnvironment: () => boolean;
|
36 | |
37 |
|
38 |
|
39 | setupMatchers: (mediaQueries: MediaQueries) => MediaQueryMatchers;
|
40 | |
41 |
|
42 |
|
43 | checkMatchers: (mediaQueryMatchers: MediaQueryMatchers) => MediaQueryMatches;
|
44 | |
45 |
|
46 |
|
47 | mediaQueryStatusChangedCallback: () => void;
|
48 | componentDidMount(): void;
|
49 | componentWillUnmount(): void;
|
50 | shouldComponentUpdate(nextProps: Readonly<ResponsiveProviderProps<M>>, nextState: Readonly<ResponsiveProviderState>): boolean;
|
51 | render(): JSX.Element;
|
52 | context: any;
|
53 | setState<K extends "mediaQueryMatchers" | "mediaQueryMatches">(state: ResponsiveProviderState | ((prevState: Readonly<ResponsiveProviderState>, props: Readonly<ResponsiveProviderProps<M>>) => ResponsiveProviderState | Pick<ResponsiveProviderState, K> | null) | Pick<ResponsiveProviderState, K> | null, callback?: (() => void) | undefined): void;
|
54 | forceUpdate(callBack?: (() => void) | undefined): void;
|
55 | readonly props: Readonly<ResponsiveProviderProps<M>> & Readonly<{
|
56 | children?: React.ReactNode;
|
57 | }>;
|
58 | state: Readonly<ResponsiveProviderState>;
|
59 | refs: {
|
60 | [key: string]: React.ReactInstance;
|
61 | };
|
62 | componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
63 | getSnapshotBeforeUpdate?(prevProps: Readonly<ResponsiveProviderProps<M>>, prevState: Readonly<ResponsiveProviderState>): any;
|
64 | componentDidUpdate?(prevProps: Readonly<ResponsiveProviderProps<M>>, prevState: Readonly<ResponsiveProviderState>, snapshot?: any): void;
|
65 | componentWillMount?(): void;
|
66 | UNSAFE_componentWillMount?(): void;
|
67 | componentWillReceiveProps?(nextProps: Readonly<ResponsiveProviderProps<M>>, nextContext: any): void;
|
68 | UNSAFE_componentWillReceiveProps?(nextProps: Readonly<ResponsiveProviderProps<M>>, nextContext: any): void;
|
69 | componentWillUpdate?(nextProps: Readonly<ResponsiveProviderProps<M>>, nextState: Readonly<ResponsiveProviderState>, nextContext: any): void;
|
70 | UNSAFE_componentWillUpdate?(nextProps: Readonly<ResponsiveProviderProps<M>>, nextState: Readonly<ResponsiveProviderState>, nextContext: any): void;
|
71 | };
|
72 | contextType?: React.Context<any> | undefined;
|
73 | };
|
74 | };
|
75 |
|
\ | No newline at end of file |