import { FC } from 'react';
import { ITrackingData } from '../../context';
export interface SlackConnectModalIslandProps {
    connectorId: string;
    open: boolean;
    onClose: () => void;
    /** Fired once when user-auth completes. The Vue host re-polls
     *  user-auth status and swaps the pre-auth button for the tab. */
    onConnected?: () => void;
    /** Gainsight sink injected by the host. This mount path has no
     *  SlackContextProvider, so tracking is a direct prop. */
    sendTrackingEvent?: (event: string, data?: ITrackingData) => void;
}
/**
 * Standalone mount point for the Slack connect modal, for hosts
 * (outlook-ui) that render the conversation-thread tab bar themselves
 * and need to trigger the connect/user-auth flow from a host button —
 * WITHOUT mounting the full OmniSlackTab.
 *
 * Wraps only the providers useUserAuthFlow needs (Redux + theme +
 * react-query); no SlackContext, since the modal takes connectorId as
 * a prop. The modal itself portals to document.body, so this island's
 * own DOM node stays empty.
 */
export declare const SlackConnectModalIsland: FC<SlackConnectModalIslandProps>;
//# sourceMappingURL=SlackConnectModalIsland.d.ts.map