import { type ReactNode } from 'react';
export interface LayoutProps {
    config: any;
    session: any;
    currentPath: string;
    onNavigate: (path: string) => void;
    onLogout?: () => void;
    children: ReactNode;
}
/**
 * Layout — thin shell that wires Sidebar/Header/Breadcrumbs into the
 * `<AdminShell>` primitive.
 *
 * `AdminShell` (in `./primitives/AdminShell.tsx`) owns the actual layout
 * algorithm (CSS Grid on desktop, fixed slide-in overlay on mobile,
 * JS-driven `matchMedia` breakpoint) so that every layout decision lives
 * in one place. Per-product chrome (Sidebar, Header, Breadcrumbs)
 * composes on top of it.
 *
 * DO NOT re-implement layout logic in this file — extend `AdminShell`
 * instead. The previous flex + `fixed`↔`static` toggle caused recurring
 * sidebar-overlap bugs; the grid-based primitive is the contract.
 */
export declare function Layout({ config, session, currentPath, onNavigate, onLogout, children, }: LayoutProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=Layout.d.ts.map