import * as React from "react";
import * as PropTypes from "prop-types";
import { FieldProps } from "../../types";
import memoize from "memoizee";
type State = {
    show: boolean;
};
export default class AnnotationField extends React.Component<FieldProps, State> {
    static contextType: React.Context<import("../../ReactContext").ContextProps>;
    static propTypes: {
        uiSchema: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
            "ui:options": PropTypes.Requireable<PropTypes.InferProps<{
                adminOnly: PropTypes.Requireable<boolean>;
                container: PropTypes.Requireable<string>;
                add: PropTypes.Requireable<object>;
                filter: PropTypes.Requireable<object>;
                uiSchema: PropTypes.Requireable<object>;
                buttonsPath: PropTypes.Requireable<string>;
                formId: PropTypes.Requireable<string>;
            }>>;
            uiSchema: PropTypes.Requireable<object>;
        }>>>;
        schema: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
            type: PropTypes.Requireable<string>;
        }>>>;
        formData: PropTypes.Validator<object>;
    };
    state: {
        show: boolean;
    };
    getButton: () => {
        glyph: string;
        tooltip: string;
        tooltipPlacement: string;
        fn: (() => () => void) & memoize.Memoized<() => () => void>;
        variant: string;
    };
    onClick: (() => () => void) & memoize.Memoized<() => () => void>;
    onHide: () => void;
    getAnnotations: () => any;
    render(): JSX.Element;
}
export {};
