import * as Rsg from 'react-styleguidist';
import { SanitizedStyleguidistConfig } from '../../types/StyleGuide';
export interface SectionFunctionOptions {
    config: SanitizedStyleguidistConfig;
    componentFiles: string[];
    requiredComponents?: Record<string, string[]>;
    requiredComponentsList?: string[];
    parentDepth?: number;
}
/**
 * Return object for one level of sections.
 *
 * @param {Array} sections
 * @param {object} config
 * @param {number} parentDepth
 * @returns {Array}
 */
export default function getSections(sections: Rsg.ConfigSection[], opts: SectionFunctionOptions): Promise<Rsg.LoaderSection[]>;
/**
 * Returns all the `@required` file path in the analyzed components
 * this way we can ignore them when analyzing the components in the menu
 * and only add them as a subsection for a parent component
 * @param componentFiles all the component file paths to be analyzed
 */
export declare function getRequiredComponents(componentFiles: string[], jsx: boolean): Promise<Record<string, string[]>>;
/**
 * Return an object for a given section with all components and subsections.
 * @param {object} section
 * @param {object} config
 * @param {number} parentDepth
 * @returns {object}
 */
export declare function processSection(section: Rsg.ConfigSection, opts: SectionFunctionOptions): Promise<Rsg.LoaderSection>;
