import "../../../../assets/css/advancedAppLauncher.css";
import React from "react";
import { StoreModel } from "../../../../../clients/StoreModel";
import { StandardError } from "../../../../../types";
interface IProps {
    customURLValidation: ((url: string) => [boolean, string]) | null;
    customAddComponent: ((formData: any, callback: (error: any | null) => void) => void) | null;
    beforeAddComponent: ((formData: any) => object) | null;
    enableQuickComponents: boolean;
}
interface IState {
    isFormVisible: boolean;
    advancedAppLauncherStore: StoreModel | null | undefined;
}
/**
 * The "app" button that launches the Advanced App Launcher.
 * The Advanced App Launcher comes with search capabilities and allows users to organize their application components into folders.
 *
 * @param {boolean} [enableQuickComponents=false] DEPRECATED: Set to true to allow users to create their own components
 */
export declare class AdvancedAppLauncher extends React.Component<IProps, IState> {
    constructor(props: IProps);
    UNSAFE_componentWillMount(): void;
    componentWillUnmount(): void;
    handleWindowBlur(): void;
    /**
     * Sets isFormVisible to true or false in state
     * isFormVisible is used to conditionally show/hide the
     * add new component form.
     * @param {object} error
     * @param {object} data
     */
    toggleAddNewAppForm(error: StandardError, data: {
        value: any;
    }): void;
    /**
     * Sets isFormVisible to false in store to remove the form
     */
    onAddNewAppFormAction(): void;
    openAppMarket(): void;
    render(): React.JSX.Element | null;
}
export {};
//# sourceMappingURL=AdvancedAppLauncher.d.ts.map