/******************************************************************************** * Copyright (c) 2026 Contributors to the Eclipse Foundation * * See the NOTICE file(s) distributed with this work for additional * information regarding copyright ownership. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License 2.0 which is available at * https://www.eclipse.org/legal/epl-2.0 * * SPDX-License-Identifier: EPL-2.0 ********************************************************************************/ import { Typography } from '@mui/material'; import { Theme } from '@mui/material/styles'; /** Normalized gap between stacked sections; the owl selector skips the first (and any null) child. */ export declare const SectionStack: import("@emotion/styled").StyledComponent & Omit, HTMLDivElement>, "ref"> & { ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject | null | undefined; }, keyof import("@mui/system").BoxOwnProps> & import("@mui/system").MUIStyledCommonProps, {}, {}>; /** Full-bleed hairline dividing stacked page sections, VS Code workbench style. */ export declare const SectionSeparator: import("@emotion/styled").StyledComponent & Omit, HTMLDivElement>, "ref"> & { ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject | null | undefined; }, keyof import("@mui/system").BoxOwnProps> & import("@mui/system").MUIStyledCommonProps, {}, {}>; /** Extension-card grid shared by the listings; column count falls out of available * width. Sparse grids keep auto-fill's empty tracks so few results stay card-sized; * with 7+ items (a curated row or a full results page) auto-fit collapses leftover * tracks so rows stretch to fill the width. */ export declare const ExtensionGrid: import("@emotion/styled").StyledComponent & Omit, HTMLDivElement>, "ref"> & { ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject | null | undefined; }, keyof import("@mui/system").BoxOwnProps> & import("@mui/system").MUIStyledCommonProps, {}, {}>; /** Small uppercase label used to head sections, columns and sidebars. */ export declare const Eyebrow: typeof Typography; /** * Elevated surface shared by cards (extensions, categories, panels): paper * background, hairline border and the card corner radius from the theme. */ export declare const cardSurface: (theme: Theme) => { backgroundColor: string; border: string; borderRadius: number; }; /** Accent focus ring shared by the search fields and card links. */ export declare const focusRing: (theme: Theme, extraShadow?: string) => { borderColor: string; boxShadow: string; }; /** * Keyboard-focus outline for buttons, pills and links. ButtonBase resets the * native outline, so anything built on it needs this to be reachable by keyboard. */ export declare const focusOutline: (theme: Theme) => { '&.Mui-focusVisible, &:focus-visible': { outline: string; outlineOffset: string; }; }; /** Hover treatment for chips and pills: accent border and text color. Suppressed on touch devices. */ export declare const accentHover: (theme: Theme) => { '@media (hover: hover)': { '&:hover': { borderColor: string; color: string; }; }; }; /** Hover treatment for interactive cards: accent border, shadow and lift. Suppressed on touch devices. */ export declare const cardHoverLift: (theme: Theme) => { '@media (hover: hover)': { '&:hover': { borderColor: string; boxShadow: string; transform: string; }; }; }; //# sourceMappingURL=page-primitives.d.ts.map