import { type ReactNode } from "react";
import type { ApiClient } from "@riverbankcms/api/request";
import type { SdkConfigForBlockPicker } from "@riverbankcms/editor-blocks";
import type { SurfaceId } from "@riverbankcms/surfaces";
import type { EntrySubrouteContextData, MediaAssetIndexItem, Theme } from "@riverbankcms/blocks";
import { type ContentTypeSchema } from "@riverbankcms/content-model";
import { type ZoomLevel } from "@riverbankcms/content-editor";
import type { ButtonPersonalityId } from "@riverbankcms/theme-core/buttons";
import type { PaletteOverrides, PaletteVariantId } from "@riverbankcms/theme-core/palette";
import type { ViewportMode, ViewportWidth } from "./PreviewViewportControls";
import { type SiteStyleAccess } from "./siteStyleAccess";
export type PreviewEditorSidebarTab = "editor" | "assistant";
export type PreviewTemplateData = {
    name: string;
    description?: string | null;
};
export type PreviewEntryData = {
    id: string;
    type?: string | null;
};
export type PreviewEditorSidebarProps = {
    surfaceId: SurfaceId;
    siteId: string;
    dashboardBaseUrl?: string | null;
    pageId: string | null;
    entryData?: PreviewEntryData | null;
    contentTypeSchema?: ContentTypeSchema | null;
    referenceContentTypeKeys?: readonly string[];
    draftContent?: Record<string, unknown> | null;
    currentTemplate?: PreviewTemplateData | null;
    theme?: Theme | null;
    themeId?: string | null;
    themeSelectionId?: string | null;
    /** Persisted Style configurator selections (Phase C / E). */
    themeSelectionButtonPersonalityId?: ButtonPersonalityId | null;
    themeSelectionPaletteVariantId?: PaletteVariantId | null;
    themeSelectionPaletteOverrides?: PaletteOverrides | null;
    apiClient: ApiClient;
    bearerToken?: string | null;
    supabaseUrl?: string;
    entrySubrouteContext?: EntrySubrouteContextData | null;
    assistantPanel?: ReactNode;
    sdkConfig?: SdkConfigForBlockPicker | null;
    mediaAssets?: MediaAssetIndexItem[];
    siteStyleAccess?: SiteStyleAccess;
    activeTab: PreviewEditorSidebarTab;
    onTabChange: (tab: PreviewEditorSidebarTab) => void;
    onClose: () => void;
    viewportMode: ViewportMode;
    viewportWidth: ViewportWidth;
    zoom: ZoomLevel;
    onViewportModeChange: (mode: ViewportMode) => void;
    onViewportWidthChange: (width: ViewportWidth) => void;
    onZoomChange: (zoom: ZoomLevel) => void;
};
export declare function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, themeId, themeSelectionId, themeSelectionButtonPersonalityId, themeSelectionPaletteVariantId, themeSelectionPaletteOverrides, apiClient, bearerToken, supabaseUrl, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, siteStyleAccess, activeTab, onTabChange, onClose, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PreviewEditorSidebarProps): import("react/jsx-runtime").JSX.Element;
