/**
 * Controlled editor image marker on the question image.
 *
 * Allows to select which label choices are the answers for each marker, using
 * the dropdown component.
 */
import * as React from "react";
import type { PerseusLabelImageWidgetOptions } from "@khanacademy/perseus-core";
type MarkerProps = PerseusLabelImageWidgetOptions["markers"][number] & {
    choices: PerseusLabelImageWidgetOptions["choices"];
    onChange: (marker: PerseusLabelImageWidgetOptions["markers"][number]) => void;
    onRemove: () => void;
};
type State = {
    showDropdown: boolean;
};
declare class Marker extends React.Component<MarkerProps, State> {
    _marker: HTMLElement | null | undefined;
    state: State;
    componentDidMount(): void;
    UNSAFE_componentWillReceiveProps(nextProps: MarkerProps): void;
    componentWillUnmount(): void;
    openDropdown(): void;
    updateAnswers(answers: string[]): void;
    updateLabel(label: string): void;
    handleClick: (e: MouseEvent) => void;
    handleLabelChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
    handleSelectAnswer: (toggleAnswer: string) => void;
    render(): React.ReactNode;
}
export default Marker;
