import { TabAnimation } from './options';
export type DockviewTabGroupIndicator = 'wrap' | 'none';
export interface DockviewTheme {
    /**
     *  The name of the theme
     */
    name: string;
    /**
     * The class name to apply to the theme containing the CSS variables settings.
     */
    className: string;
    /**
     * Whether the theme is light or dark. Useful for adapting panel content colors.
     */
    colorScheme?: 'light' | 'dark';
    /**
     * The gap between the groups
     */
    gap?: number;
    /**
     * The collapsed size (in px) for edge groups when using this theme.
     * When set, this overrides the default 35px collapsed size so that
     * collapsed edge groups match the theme's tab strip height.
     */
    edgeGroupCollapsedSize?: number;
    /**
     * The mouting position of the overlay shown when dragging a panel. `absolute`
     * will mount the overlay to root of the dockview component whereas `relative` will mount the overlay to the group container.
     */
    dndOverlayMounting?: 'absolute' | 'relative';
    /**
     * When dragging a panel, the overlay can either encompass the panel contents or the entire group including the tab header space.
     */
    dndPanelOverlay?: 'content' | 'group';
    /**
     * The style of the drop indicator shown when dragging a tab over another tab.
     * `'line'` renders a thin 4px insertion strip at the tab edge (suited to bordered/spaced themes).
     * `'fill'` renders a half-width highlighted area (suited to themes that use a background fill).
     * Defaults to `'fill'`.
     */
    dndTabIndicator?: 'line' | 'fill';
    /**
     * The CSS value applied to `--dv-drag-over-border` when this theme is active.
     * For example `'2px solid var(--dv-active-sash-color)'`.
     * When unset the CSS variable is left to the stylesheet default (`none`).
     */
    dndOverlayBorder?: string;
    /**
     * Controls how tab groups are visually indicated in the tab bar.
     *
     * - `'wrap'` (default): Chrome-style SVG underline that wraps around the active tab
     *   with rounded corners. Requires JavaScript for positioning and path computation.
     * - `'none'`: Flat continuous colored bar spanning the full tab group width.
     *   Unlike `'wrap'`, the bar does not curve around the active tab.
     */
    tabGroupIndicator?: DockviewTabGroupIndicator;
    /**
     * Controls tab drag-and-drop reorder animation style.
     *
     * - `"smooth"`: tabs animate smoothly during drag-and-drop reorder —
     *   tabs slide apart to reveal the insertion gap, then animate to their
     *   final positions on drop (Chrome-like behavior).
     * - `"default"`: standard tab reorder behavior without animation.
     *
     * Defaults to `"default"`.
     */
    tabAnimation?: TabAnimation;
}
export declare const themeDark: DockviewTheme;
export declare const themeLight: DockviewTheme;
export declare const themeVisualStudio: DockviewTheme;
export declare const themeAbyss: DockviewTheme;
export declare const themeDracula: DockviewTheme;
export declare const themeAbyssSpaced: DockviewTheme;
export declare const themeLightSpaced: DockviewTheme;
export declare const themeNord: DockviewTheme;
export declare const themeNordSpaced: DockviewTheme;
export declare const themeCatppuccinMocha: DockviewTheme;
export declare const themeCatppuccinMochaSpaced: DockviewTheme;
export declare const themeMonokai: DockviewTheme;
export declare const themeSolarizedLight: DockviewTheme;
export declare const themeSolarizedLightSpaced: DockviewTheme;
export declare const themeGithubDark: DockviewTheme;
export declare const themeGithubDarkSpaced: DockviewTheme;
export declare const themeGithubLight: DockviewTheme;
export declare const themeGithubLightSpaced: DockviewTheme;
