import type { Schema } from '@strapi/types';
export declare const FALLBACK_MAIN_FIELD = "documentId";
export type HomepagePermissionChecker = {
    cannot: {
        read: (entity: null, field: string) => boolean;
    };
};
/**
 * Removes invalid entries left in the fields array after permission sanitization.
 */
export declare const compactSanitizedFields: (fields: unknown) => string[] | undefined;
/**
 * Resolves the main field used for homepage widgets, falling back when the user cannot read it.
 */
export declare const resolveReadableMainField: (contentType: Schema.ContentType, configuration: {
    settings?: {
        mainField?: string;
    };
} | undefined, permissionChecker: HomepagePermissionChecker) => string;
/**
 * Builds the fields array requested before permission sanitization.
 */
export declare const buildHomepageQueryFields: (contentType: Schema.ContentType, mainField: string) => string[];
/**
 * Picks a main field that is present in the sanitized fields selection.
 */
export declare const resolveTitleField: (mainField: string, sanitizedFields: string[] | undefined) => string;
//# sourceMappingURL=homepage-query-utils.d.ts.map