import React from 'react';
import { AnyObject, WithInstanceRef } from '../util/typing';
export interface BaseControlProps {
  /** Parent object (e.g, ymaps.Map or ymaps.Clusterer) */
  parent?: AnyObject;
  /** Control name */
  name: Required<
    | 'Button'
    | 'FullscreenControl'
    | 'GeolocationControl'
    | 'ListBox'
    | 'ListBoxItem'
    | 'RouteButton'
    | 'RouteEditor'
    | 'RoutePanel'
    | 'RulerControl'
    | 'SearchControl'
    | 'TrafficControl'
    | 'TypeSelector'
    | 'ZoomControl'
  >;
}
export declare class BaseControl extends React.Component<
  BaseControlProps & WithInstanceRef
> {
  constructor();
  componentDidMount(): void;
  componentDidUpdate(prevProps: any): void;
  componentWillUnmount(): void;
  render(): JSX.Element;
  static mountControl(Control: any, props: any): any;
  static updateControl(instance: any, oldProps: any, newProps: any): void;
  static unmountControl(instance: any, props: any): void;
}
