import type { HeadingLevel } from '../typography-config';
import type { PageHeaderSettings } from './page.header';
import type { PageTab } from './tabs';
export type PageType = 'page' | 'pattern';
/**
 * A composed document consisting of one or more tab references.
 */
export type Page = {
    id: string;
    title: string;
    description?: string;
    /** Alternate names for use in search */
    aliases?: string[];
    settings?: {
        pageHeader?: PageHeaderSettings;
        tableOfContents?: {
            excludeBlockHeaderTitles?: boolean;
            excludeHeadings?: HeadingLevel[];
            hide?: boolean;
        };
        /**
         * @deprecated Use `tableOfContents.hide` instead
         * @todo remove deprecated hideTableOfContents setting
         * @link https://linear.app/knapsack/issue/KSP-6029/remove-deprecated-hidetableofcontents-page-setting
         */
        hideTableOfContents?: boolean;
    };
    /**
     * Sort order for PageTabs.
     * @see PageTab type
     */
    tabIds?: PageTab['id'][];
    /**
     * Slug for the page. Used in URL path.
     * e.g. /pages/[pageSlug]/[tabSlug]
     */
    slug?: string;
};
/**
 * Default settings for all pages
 */
export type PagesSettings = {
    tableOfContents?: {
        exclude?: HeadingLevel[];
        excludeBlockHeaderTitles?: boolean;
        hideByDefault?: boolean;
    };
    defaultPageHeader?: PageHeaderSettings;
};
//# sourceMappingURL=page.d.ts.map