import { BPLabelledComponent, BPLabelledComponentState } from './BPLabelledComponent'; import { BPComponentProps, UiConfigRendererContextType } from './BPComponent'; import { PanelActions } from '@blueprintjs/core/lib/esm/components/panel-stack2/panelTypes'; import { UiObjectConfig } from 'uiconfig.js'; declare module '../ConfigObject' { interface ConfigProps { filter?: (child: UiObjectConfig) => boolean; } } export type BPContainerComponentState = BPLabelledComponentState & { children: UiObjectConfig[]; expanded: boolean; }; export type BPContainerComponentProps = { filter?: (child: UiObjectConfig) => boolean; }; export declare class BPContainerComponent extends BPLabelledComponent & PanelActions & TProps> { protected _childParentOnChange: UiObjectConfig['parentOnChange']; protected _registerChild(child: UiObjectConfig): void; protected _unregisterChild(child: UiObjectConfig): void; constructor(props: BPComponentProps & PanelActions & TProps, context: UiConfigRendererContextType, state: TState); getUpdatedState(state: TState): TState & import("./BPComponent").BPComponentState & { children: any[]; expanded: boolean; label: string; }; componentDidMount(): void; componentWillUnmount(): void; }