import React, { JSX } from 'react';
import { RootComponentProps } from '../types.js';
import { LayoutComponent, Metadata, MetadataWithoutTitleAndDescription } from '../types.js';
/**
 * App component that represent the entry point of the application
 */
export declare const RootComponent: ({ Router, children, }: RootComponentProps) => string | number | bigint | true | import("react/jsx-runtime.js").JSX.Element | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode>>;
/**
 * Head component
 * @params data - Helmet context
 * @returns
 */
export declare const HeadComponent: ({ metadata, assets, children, }: {
    metadata: {
        page: Metadata;
        layout: MetadataWithoutTitleAndDescription;
    };
    assets?: JSX.Element[];
    children?: React.ReactNode;
    bootstrap?: string;
    styles?: string;
}) => import("react/jsx-runtime.js").JSX.Element;
/**
 * Body component
 */
export declare const BodyComponent: ({ children, asChild, AppContent, }: {
    children?: React.ReactNode;
    asChild?: boolean;
    AppContent?: React.ReactNode;
}) => import("react/jsx-runtime.js").JSX.Element;
/**
 * Scripts component
 */
export declare const ScriptComponent: ({ children, }: {
    children?: React.ReactNode;
}) => import("react/jsx-runtime.js").JSX.Element;
/**
 * Default layout component
 */
declare const DefaultLayout: LayoutComponent;
export { DefaultLayout };
