import { AppSettingsStrategy, EndpointParams } from '../strategies/index.js';
import { HeadlessConfig } from '../../types.js';
import { AppEntity, MenuItemEntity } from '../types/index.js';
import { QueryProps } from './types.js';
import { ThemeJSON } from '../../react/provider/types.js';
export type BlockSettingQuery = {
blockName?: string;
setting: string;
};
export type AppQueryProps
= QueryProps
& {
menu?: string;
blockSetting?: BlockSettingQuery;
};
export type AppQueryResult = {
data: T;
menu?: MenuItemEntity[];
blockSettingValue?: unknown;
};
export declare function flatToHierarchical(flat: MenuItemEntity[]): MenuItemEntity[];
export declare function getThemeSetting(themeSettings: ThemeJSON['settings'], blockSetting: BlockSettingQuery): any;
export declare function fetchAppSettings(query?: Omit, 'path'>, _config?: HeadlessConfig | undefined, fetcher?: AppSettingsStrategy | undefined): Promise>;
export declare namespace fetchAppSettings {
var fetcher: (sourceUrl?: string, defaultParams?: P) => AppSettingsStrategy;
}