/// <reference types="react" />
import PropTypes from 'prop-types';
import { IconPreviewProps } from '../../molecule/icon-preview/types';
import InputText from '../../atom/input-text';
import { ButtonLinkProps } from '../../atom/button-link/types';
declare const IconEditorPropTypes: {
    iconPreview: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
        title: PropTypes.Requireable<string>;
        icon: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
            name: PropTypes.Validator<string>;
            color: PropTypes.Requireable<string>;
        }>>>;
    }>>>;
    inputText: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
        autoFocus: PropTypes.Requireable<boolean>;
        title: PropTypes.Requireable<string>;
        placeholder: PropTypes.Requireable<string>;
        defaultValue: PropTypes.Requireable<string>;
        theme: PropTypes.Requireable<string>;
        disabled: PropTypes.Requireable<boolean>;
        value: PropTypes.Requireable<string>;
        hint: PropTypes.Requireable<string>;
        error: PropTypes.Requireable<string>;
        onChange: PropTypes.Requireable<(...args: any[]) => any>;
        description: PropTypes.Requireable<string>;
        modified: PropTypes.Requireable<boolean>;
        type: PropTypes.Requireable<string>;
        valid: PropTypes.Requireable<boolean>;
        'aria-label': PropTypes.Requireable<string>;
        'data-name': PropTypes.Requireable<string>;
        inputColor: PropTypes.Requireable<boolean>;
    }>>>;
    buttonLink: PropTypes.Requireable<PropTypes.InferProps<{
        type: PropTypes.Requireable<string>;
        usage: PropTypes.Requireable<string>;
        label: PropTypes.Requireable<string>;
        content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        'aria-label': PropTypes.Requireable<string>;
        tooltipText: PropTypes.Requireable<string>;
        tooltipPlacement: PropTypes.Requireable<string>;
        'data-name': PropTypes.Requireable<string>;
        'data-testid': PropTypes.Requireable<string>;
        icon: PropTypes.Requireable<PropTypes.InferProps<{
            position: PropTypes.Requireable<string>;
            type: PropTypes.Requireable<string>;
            faIcon: PropTypes.Requireable<PropTypes.InferProps<{
                name: PropTypes.Validator<string>;
                color: PropTypes.Requireable<string>;
                backgroundColor: PropTypes.Requireable<string>;
                size: PropTypes.Requireable<number>;
                customStyle: PropTypes.Requireable<{
                    [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
                }>;
            }>>;
        }>>;
        onClick: PropTypes.Requireable<(...args: any[]) => any>;
        link: PropTypes.Requireable<PropTypes.InferProps<{
            href: PropTypes.Requireable<string>;
            download: PropTypes.Requireable<boolean>;
            target: PropTypes.Requireable<string>;
        }>>;
        hoverBackgroundColor: PropTypes.Requireable<string>;
        hoverColor: PropTypes.Requireable<string>;
        disabled: PropTypes.Requireable<boolean>;
        className: PropTypes.Requireable<string>;
        customStyle: PropTypes.Requireable<{
            [x: string]: NonNullable<string | number | null | undefined> | null | undefined;
        }>;
    }>>;
};
export default IconEditorPropTypes;
export declare type IconEditorProps = {
    iconPreview: IconPreviewProps;
    inputText: React.ComponentProps<typeof InputText>;
    buttonLink?: ButtonLinkProps;
};
//# sourceMappingURL=types.d.ts.map