import * as React from 'react'; export interface ISetupFunction> { (): R; } export declare type ReactLike = Pick; export default function observer = React.FunctionComponent

>(reactLike: ReactLike, componentFn: T): T; export default function observer = React.FunctionComponent

>(reactLike: ReactLike, defaultProps: P, componentFn: T): T; export default function observer = Record, T extends React.FunctionComponent

= React.FunctionComponent

>(reactLike: ReactLike, componentFn: (setupResult: SR, props: Parameters[0], context?: Parameters[1]) => ReturnType, setupFn: ISetupFunction): T; export default function observer = Record, T extends React.FunctionComponent

= React.FunctionComponent

>(reactLike: ReactLike, defaultProps: P, componentFn: (setupResult: SR, props: Parameters[0], context?: Parameters[1]) => ReturnType, setupFn: ISetupFunction): T;