import { type DialogCloseReason } from "@obi/cor-components";
type StartSessionDialogProps = {
    open: boolean;
    onClose?: (reason: DialogCloseReason) => void;
    onStart: () => void;
    /**
     * Handler for skip button. If not provided, skip button won't be shown.
     */
    onSkip?: () => void;
    /** Tutorial (or plan) name, or agent name when there is no separate tutorial title. */
    courseName: string;
    /**
     * Agent display name: always used for "Talk to …" and AgentStill (fallback "Obi").
     * When useCourseTitle is false, also drives the "Meet {agentName}, …" title.
     */
    agentName?: string;
    /**
     * When true, the dialog title is courseName (e.g. tutorial name) even though agentName is set.
     */
    useCourseTitle?: boolean;
    /**
     * Shown in title when agentName is set: "Meet {agentName}, {agentTitle}".
     * Falls back to agentSubtitle then "your AI Setup Assistant" when omitted.
     */
    agentTitle?: string;
    /**
     * Fallback for title when agentName is set and agentTitle is not set.
     * Maps to product.assistant_subtitle from the API.
     */
    agentSubtitle?: string;
    /**
     * Markdown content for the tutorial description.
     * Rendered as sanitized HTML via `Markdown`.
     * Expected to be within backend limits (10 lines, 436 characters); not truncated in the UI.
     */
    courseDescription: string;
    /**
     * Optional override for the primary CTA. When not set, uses "Talk to {agentName ?? Obi}".
     */
    startLabel?: string;
    /**
     * Label for skip button (default: "Skip for now")
     */
    skipLabel?: string;
    /**
     * Badge text shown at the top (default: "Voice AI assistant")
     */
    badgeLabel?: string;
    /**
     * Control badge visibility (default: true)
     */
    showBadge?: boolean;
    /**
     * Status badge text shown on the image (default: "Available now")
     */
    availabilityStatus?: string;
    /**
     * Control status badge visibility (default: true)
     */
    showAvailabilityBadge?: boolean;
    disclaimer?: string;
    showCloseButton?: boolean;
    /**
     * When true, shows a loading spinner on the start button and disables it.
     */
    isStarting?: boolean;
    /**
     * Optional override for the greeting video asset shown in AgentStill.
     */
    greetingVideoSrc?: string;
};
export declare function StartSessionDialog(props: StartSessionDialogProps): import("react/jsx-runtime").JSX.Element;
export type { StartSessionDialogProps };
