import * as React from "react"; import { ByLang, FormContext } from "../../LajiForm"; import memoize from "memoizee"; import type { components } from "../../../generated/api.d"; type NamedPlace = components["schemas"]["store-namedPlace"]; type Props = { places: NamedPlace[]; failed?: boolean; formContext: FormContext; onSelected: (place: NamedPlace) => void; onDeleted: (place: NamedPlace, callback: () => void) => void; }; type State = { deleting?: boolean; popupIdx?: number; }; export declare class NamedPlaceChooser extends React.Component { static contextType: React.Context; popupRef: React.RefObject<{ elem: HTMLElement; button: HTMLElement; }>; popupContainerRef: React.RefObject; mapRef: React.RefObject; idxToLayer?: Record; geometryCollectionData?: { geoData: any; }; constructor(props: Props); onPlaceSelected: (place: NamedPlace) => void; onPlaceDeleted: (place: NamedPlace) => void; onSelectChange: (idx: number | undefined) => void; componentDidUpdate(_: Props, prevState: State): void; getFeatureStyle: (data: any) => { color: string; fillColor: string; }; getPopup: ({ feature }: any, givePopupToLajiMap: (element: HTMLElement) => void) => void; onPopupClose: () => void; getEnumOptions: ((places: NamedPlace[], translations: ByLang) => { placeholder: string; enumOptions: { value: number; label: string; }[]; }) & memoize.Memoized<(places: NamedPlace[], translations: ByLang) => { placeholder: string; enumOptions: { value: number; label: string; }[]; }>; render(): JSX.Element; } export {};