/// import * as React from 'react'; import { ReactComponent } from './types'; export declare function FirstChild(props: { children?: React.ReactNode; }): string | number | React.ReactElement | null; export declare function getDisplayName(Component: ReactComponent): string; export declare function wrapWithComponent

(element: React.ReactNode | null | undefined, Component: ReactComponent

, props?: Partial

): React.ReactNode; export declare function isElementOfType(element: React.ReactNode | null | undefined, Component: ReactComponent<{}> | ReactComponent<{}>[]): boolean; export declare function elementChildren>(children: React.ReactNode, predicate?: ((element: T) => boolean)): T[]; export declare function augmentComponent, M extends { [key: string]: (...args: any[]) => any; }, O extends C & { new (): M; }>(Component: C, methods: M): O; export interface LayerRenderable { new (...args: any[]): LayerRenderableInstance; } export interface LayerRenderableInstance { renderLayer(): React.ReactNode; } export interface LayeredComponent { layerNode?: HTMLDivElement; layerOutput?: React.ReactNode; } export declare function layeredComponent(options?: { idPrefix?: string; }): & LayerRenderable>(Component: C) => C & LayeredComponent;