import React from 'react';
import type { ConnectionInfo } from '@mongodb-js/compass-connections/provider';
import type { OpenWorkspaceOptions } from '@mongodb-js/compass-workspaces';
import WorkspacesPlugin from '@mongodb-js/compass-workspaces';
import type { AllPreferences } from 'compass-preferences-model/provider';
import type { TrackFunction, LogFunction, DebugFunction } from './logger-and-telemetry';
type CompassWebProps = {
    /**
     * App name to be passed with the connection string when connection to a
     * cluster (default: "Compass Web")
     */
    appName?: string;
    /**
     * Atlas Cloud organization id
     */
    orgId: string;
    /**
     * Atlas Cloud project id (sometimes called group id)
     */
    projectId: string;
    /**
     * Whether or not darkMode should be active for the app
     */
    darkMode?: boolean;
    /**
     * Optional. If passed, compass-web will try to find connection info with that
     * id in connection storage and pass it as autoconnect info to the
     * compass-connections
     */
    initialAutoconnectId?: string;
    /**
     * Optional. If passed, compass-web will open provided workspace right away.
     * If workspace requires active connection, the connectionId from the
     * workspace will be used for the autoconnect info getter. In that case
     * connectionId from the workspace takes precedence over
     * `initialAutoconnectId`
     */
    initialWorkspace?: OpenWorkspaceOptions;
    /**
     * Callback prop called when current active workspace changes. Can be used to
     * communicate current workspace back to the parent component for example to
     * sync router with the current active workspace
     */
    onActiveWorkspaceTabChange: React.ComponentProps<typeof WorkspacesPlugin>['onActiveWorkspaceTabChange'];
    /**
     * Set of initial preferences to override default values
     */
    initialPreferences?: Partial<AllPreferences>;
    /**
     * Callback prop called every time any code inside Compass logs something
     */
    onLog?: LogFunction;
    /**
     * Callback prop called every time any code inside Compass prints a debug
     * statement
     */
    onDebug?: DebugFunction;
    /**
     * Callback prop called for every track event inside Compass
     */
    onTrack?: TrackFunction;
    /**
     * Callback prop that will be called with atlas metadata for a certain cluster
     * when the action is selected from the sidebar actions. Should be used to
     * show the Atlas Cloud "Connect" modal
     */
    onOpenConnectViaModal?: (atlasMetadata: ConnectionInfo['atlasMetadata']) => void;
};
declare const CompassWeb: ({ appName, orgId, projectId, darkMode, initialAutoconnectId, initialWorkspace, onActiveWorkspaceTabChange, initialPreferences, onLog, onDebug, onTrack, onOpenConnectViaModal, }: CompassWebProps) => React.JSX.Element;
export { CompassWeb };
//# sourceMappingURL=entrypoint.d.ts.map