import React from 'react'; export declare function getWindow(node?: HTMLElement | null): Window | undefined; export declare const isBrowser: boolean; export declare function isFunction(value: any): value is Function; export interface CreateContextOptions { strict?: boolean; errorMessage?: string; name?: string; } declare type CreateContextReturn = [React.Provider, () => T, React.Context]; export declare function createContext(options?: CreateContextOptions): CreateContextReturn; export declare function getValidChildren(children: React.ReactNode): React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>[]; declare type ReactRef = React.Ref | React.RefObject | React.MutableRefObject; export declare function assignRef(ref: ReactRef | undefined, value: T): void; export declare function mergeRefs(...refs: (ReactRef | undefined)[]): (value: T) => void; export declare function genId(prefix: string): string; export declare const makeId: (id: string, index: number) => string; export declare function getFocusables(element: HTMLElement, keyboardOnly?: boolean): Element[]; export declare const getColorInTheme: (theme: any, color: string) => any; export declare const __DEV__: boolean; export declare function runIfFn(valueOrFn: T | ((...args: U[]) => T), ...args: U[]): T; export declare function warn(options: { condition: boolean; message: string; }): void; export declare function error(options: { condition: boolean; message: string; }): void; export declare type FunctionArguments = T extends (...args: infer R) => any ? R : never; export declare function callAllHandlers void>(...fns: (T | undefined)[]): (event: FunctionArguments[0]) => void; export declare type Merge = Omit> & T2; export declare type SafeMerge = P & Omit; export declare type UnionStringArray> = T[number]; export declare type Omit = Pick>; export declare type As

= React.ReactType

; export declare type AnyFunction = (...args: T[]) => any; export declare type Dict = Record; export declare type ReactNodeOrRenderProp

= React.ReactNode | ((props: P) => React.ReactNode); export declare type Booleanish = boolean | 'true' | 'false'; export declare type ObjectOrArray = T[] | Record; export declare type StringOrNumber = string | number; export declare function isNumber(value: any): value is number; export declare const isNotNumber: (value: any) => boolean; export declare function isNumeric(value: any): boolean; export declare function isArray(value: any): value is T[]; export declare const isEmptyArray: (value: any) => boolean; export declare const isDefined: (value: any) => boolean; export declare const isUndefined: (value: any) => value is undefined; export declare const isObject: (value: any) => value is Record; export declare const isEmptyObject: (value: any) => boolean; export declare const isNull: (value: any) => value is null; export declare function isString(value: any): value is string; export declare const isEmpty: (value: any) => boolean; export declare function omit(object: T, keys: K[]): Pick>; export declare function pick(object: T, keys: K[]): { [P in K]: T[P]; }; export declare function split(object: T, keys: K[]): [{ [P in K]: T[P]; }, Pick>]; export declare function get(obj: any, path: string | number, fallback?: any, index?: number): any; export declare function getWithDefault(path: any, scale: any): any; export declare function mapResponsive(prop: any, mapper: (val: any) => any): any; export declare const startPad: (n: number, z?: number, s?: string) => string; export {};