/**
 * Outer wrapper that sits between the surrounding page and the table card.
 * Mirrors the JE table's `TableWrapperContainer` (frame 5240:7220 has the
 * same outer breathing-room as the JE redesign). Padding (`sp3 sp5` =
 * 16px / 32px) and the `grey4` page-tinted background are applied in
 * both full view AND quick view so the table card has the same
 * surrounding chrome in the side panel as on the full detail page.
 * Quick view additionally fills the panel's vertical space
 * (`height: 100%`) so the inner scroll container can scroll.
 */
export declare const TableWrapperContainer: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
} & {
    $isQuickViewMode?: boolean;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
/**
 * Bordered, rounded "card" that frames the non-JE table. Identical
 * chrome to the JE card (border + radius + grey5 background).
 *
 * Note (mirrors JE): we intentionally do NOT apply `overflow: hidden`
 * here because that would establish a scroll container and break the
 * page-relative `position: sticky` behavior of the header. Instead we
 * use `clip-path: inset(0 round sp2)` to clip the paint of the sticky
 * header's bottom border and the row separators to the card's rounded
 * corners during horizontal scroll. `clip-path` is a paint-only effect
 * — it does NOT establish a new containing block, so sticky positioning
 * still resolves to the page (Figma 5262:22638). The non-JE table has
 * no sticky totals row, so the bottom-rounded corners are owned by the
 * last `RowWrapper` (see `&:last-child` rule below) as a defense-in-
 * depth measure for the hover background fill.
 */
export declare const ListViewContainer: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
} & {
    $isQuickViewMode?: boolean;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
/**
 * Horizontal scroll container shared by the populated and empty tables.
 * Vertical overflow is left to the page (or the side-panel drawer in
 * quick view) so the table doesn't introduce a scroll-within-scroll
 * experience.
 */
export declare const TableScrollContainer: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
/**
 * Inner flex column that holds the sticky header and the rows.
 * Keeping `display: flex; flex-direction: column;` allows the
 * `position: sticky` header to pin against this scrolling parent.
 */
export declare const TableScrollContent: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
/**
 * Per-row wrapper used by both the populated and the skeleton/empty
 * tables. Carries the standard row height and the bottom separator.
 *
 * Unlike the JE table, the non-JE table has no sticky totals row at the
 * bottom — so the LAST row owns the bottom-rounded corners of the card.
 *   - `:not(:last-child)` paints the 1px row separator
 *   - `:last-child` rounds the bottom corners AND sets `overflow: hidden`
 *     so the inner `RowFlex` background (grey5 default + `background`
 *     on hover) is clipped to the rounded corners. Without `overflow:
 *     hidden` the inner fill would spill over the rounded edge and
 *     visually break the card corner on hover (and on the default
 *     `grey5` fill where the parent card is also `grey5` so the bug
 *     only became obvious in the hover state). Dropdowns and CoT
 *     tooltips inside the row portal to `document.body`, so clipping
 *     the row's overflow is safe — Figma 5240:7239 / 5262:22638.
 */
export declare const RowWrapper: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
/**
 * Sticky wrapper that pins the header to the top of the scroll
 * container. Visual chrome (background fill, border-bottom, top-corner
 * radius) lives on the inner `HeaderContainer` so the header matches
 * the Figma "Table Row" component (frame 5240:7221) on its own and
 * renders correctly in isolation (e.g. in stories) — this wrapper now
 * owns only the positioning concern.
 */
export declare const StickyHeaderContainer: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
} & {
    isQuickViewMode?: boolean;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
/**
 * Hover-tinted row container.
 * Matches the JE table's `RowFlex` with the same `grey5` → `background`
 * transition on hover. Rounded corners are owned by the parent
 * `RowWrapper:last-child` (with `overflow: hidden`), so this element
 * doesn't need to know whether it's the last row.
 */
export declare const RowFlex: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
} & {
    isHovered?: boolean;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
export declare const HeaderRowFlex: import('@emotion/styled').StyledComponent<{
    theme?: import('@emotion/react').Theme;
    as?: React.ElementType;
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
