import type { Role } from '../user-roles';
import type { BlockCollection } from './blocks';
export declare const patternTabTypes: {
    readonly designSrc: "Design Source";
    readonly subPage: "Subpage";
    readonly template: "Template";
};
/**
 * Legacy pattern page tab that is of a certain type
 * @deprecated Use `PageTab` instead
 */
export type PatternTab = {
    hidden?: boolean;
    id: string;
    minRoleNeeded?: Role;
    type: keyof typeof patternTabTypes;
};
/**
 * A tab section within a page, referencing a BlockCollection as its content source.
 */
export type PageTab = {
    type: 'block-collection-tab';
    id: string;
    title: string;
    /**
     * Slug for the tab. Used in URL path.
     * e.g./pages/[pageSlug]/[tabSlug]
     */
    slug: string;
    /**
     * A tab contains collection of blocks, usually only 1.
     * @see BlockCollection type
     */
    blockCollectionIds: BlockCollection['id'][];
    /**
     * Options for the tab.
     */
    options?: {
        hidden?: boolean;
        minRoleNeeded?: Role;
    };
};
//# sourceMappingURL=tabs.d.ts.map