UNPKG

@yandex/ymaps3-types

Version:

Types for ymaps3 maps library

65 lines (64 loc) 2.17 kB
import { overrideKeyReactify } from "../wrappers"; import { YMapGroupEntity } from "../YMapEnities"; /** * YMapControl props */ export type YMapControlProps = { /** Makes the control transparent by removing background color and shadows */ transparent?: boolean; }; declare const defaultProps: Readonly<{ transparent: false; }>; type DefaultProps = typeof defaultProps; /** * DOM wrapper for creating custom controls. Connects the styles required by the control. * * @example * ```javascript * const control = new YMapControl(); * class YMapSomeController extends DomEntity { * _createDom() { * const element = document.createElement('button'); * this._updateDom(element, this._props, true); * return element; * } * _updateDom(element, props, init = false) { * element.innerText = props.title; * } * } * const button = new YMapSomeController({ * title: 'Click me!' * }); * control.addChild(button); * map.addChild(control); * @see [[YMapControlCommonButton]] * ``` * * @module YMapControl */ export declare class YMapControl extends YMapGroupEntity<YMapControlProps, DefaultProps> { static defaultProps: Readonly<{ transparent: false; }>; static [overrideKeyReactify]: import("../../reactify/reactify").CustomReactify<YMapControl, import("react").ForwardRefExoticComponent<{ transparent?: boolean | undefined; children?: import("react").ReactNode; ref?: import("react").Ref<import("../Entities").GenericEntity<YMapControlProps & { controlElement: HTMLElement; }, {}, import("../Entities").GenericRootEntity<unknown, {}>>> | undefined; key?: import("react").Key | null | undefined; }>>; private _element?; private _innerElement?; private _detachDom?; private _unwatchThemeContext?; constructor(props?: YMapControlProps, element?: HTMLElement); protected _createDom(): HTMLElement; protected _onAttach(): void; protected _onUpdate(props: Partial<YMapControlProps>): void; private __watchThemeContext; protected _onDetach(): void; private _updateTheme; } export {};