import * as React from "react";
import { FieldProps, JSONSchemaArray, JSONSchemaObject } from "../../../types";
import type { components } from "../../../generated/api.d";
type NamedPlace = components["schemas"]["store-namedPlace"];
type Props = FieldProps<NamedPlace, JSONSchemaObject | JSONSchemaArray<JSONSchemaObject>>;
type State = {
    show?: boolean;
    failed?: string;
    buttonDefinition?: any;
    places?: NamedPlace[];
};
/** Compatible only with gatherings array and gathering object */
export default class NamedPlaceChooserField extends React.Component<Props, State> {
    static contextType: React.Context<import("../../../ReactContext").ContextProps>;
    mounted: boolean;
    state: State;
    getUiSchema: (props: Props, buttonDefinition: any) => import("../../../types").UiSchema<any> | {
        "ui:options": any;
        "ui:ArrayFieldTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTemplateProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:ArrayFieldDescriptionTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldDescriptionProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:ArrayFieldItemTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTemplateItemType<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:ArrayFieldTitleTemplate"?: React.ComponentType<import("@rjsf/utils").ArrayFieldTitleProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:BaseInputTemplate"?: React.ComponentType<import("@rjsf/utils").WidgetProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:DescriptionFieldTemplate"?: React.ComponentType<import("@rjsf/utils").DescriptionFieldProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:ErrorListTemplate"?: React.ComponentType<import("@rjsf/utils").ErrorListProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:FieldErrorTemplate"?: React.ComponentType<import("@rjsf/utils").FieldErrorProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:FieldHelpTemplate"?: React.ComponentType<import("@rjsf/utils").FieldHelpProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:FieldTemplate"?: React.ComponentType<import("@rjsf/utils").FieldTemplateProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:ObjectFieldTemplate"?: React.ComponentType<import("@rjsf/utils").ObjectFieldTemplateProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:TitleFieldTemplate"?: React.ComponentType<import("@rjsf/utils").TitleFieldProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:UnsupportedFieldTemplate"?: React.ComponentType<import("@rjsf/utils").UnsupportedFieldProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:WrapIfAdditionalTemplate"?: React.ComponentType<import("@rjsf/utils").WrapIfAdditionalTemplateProps<any, any, import("../../LajiForm").FormContext>> | undefined;
        "ui:classNames"?: string | undefined;
        "ui:style"?: React.StyleHTMLAttributes<any> | undefined;
        "ui:title"?: string | undefined;
        "ui:description"?: string | undefined;
        "ui:placeholder"?: string | undefined;
        "ui:help"?: string | undefined;
        "ui:autofocus"?: boolean | undefined;
        "ui:autocomplete"?: AutoFill | undefined;
        "ui:disabled"?: boolean | undefined;
        "ui:emptyValue"?: any;
        "ui:enumDisabled"?: (string | number | boolean)[] | undefined;
        "ui:hideError"?: boolean | undefined;
        "ui:readonly"?: boolean | undefined;
        "ui:order"?: string[] | undefined;
        "ui:addable"?: boolean | undefined;
        "ui:orderable"?: boolean | undefined;
        "ui:removable"?: boolean | undefined;
        "ui:inline"?: boolean | undefined;
        "ui:inputType"?: string | undefined;
        "ui:label"?: boolean | undefined;
        "ui:rows"?: number | undefined;
        "ui:submitButtonOptions"?: import("@rjsf/utils").UISchemaSubmitButtonOptions | undefined;
        "ui:widget"?: string | import("@rjsf/utils").Widget<any, any, import("../../LajiForm").FormContext> | undefined;
        "ui:duplicateKeySuffixSeparator"?: string | undefined;
        "ui:rootFieldId"?: string;
        "ui:field"?: string | import("@rjsf/utils").Field<any, any, import("../../LajiForm").FormContext> | undefined;
        "ui:fieldReplacesAnyOrOneOf"?: boolean;
    };
    isGatheringsArray: (schema: JSONSchemaObject | JSONSchemaArray<JSONSchemaObject>) => schema is JSONSchemaArray<JSONSchemaObject>;
    onPlaceSelected: (place: NamedPlace) => void;
    onPlaceDeleted: (place: NamedPlace & {
        id: string;
    }, end: () => void) => Promise<void>;
    onButtonClick: () => () => void;
    updatePlaces: (response: {
        results: NamedPlace[];
    }) => void;
    getNamedPlacesUnsubscribe: () => void;
    componentDidMount(): void;
    componentWillUnmount(): void;
    onHide: () => void;
    render(): JSX.Element;
}
export {};
