/**
 * Pure eligibility predicate for booth number badges.
 *
 * Extracted from `configBoothsBadges` so the decision can be unit-tested in
 * isolation (no canvas/mobx/renderer side effects). A booth gets a badge when
 * badges aren't globally hidden, it has exhibitors, and it has no visible
 * number — either because it's `noLabels` or because a logo-in-booth covers
 * the label.
 *
 * This logic regressed once after the MapLibre refactor (logo-in-booth booths
 * not authored as `noLabels` lost their badges), so it is covered by a table.
 */
export interface BoothBadgeEligibility {
    /** Data flag: hide the number on booths that have an exhibitor. */
    hideExhibitorBoothNumber?: boolean;
    /** `flags.hideBoothBadges`: opt-out for all booth badges. */
    hideBoothBadges?: boolean;
    /** UI state: logos-in-booth are currently hidden. */
    hideLogoInBooth: boolean;
    /** Booth is authored without labels. */
    noLabels: boolean;
    /** Booth has at least one exhibitor. */
    hasExhibitors: boolean;
    /** Booth has at least one exhibitor with a visible logo-in-booth. */
    hasLogoInBooth: boolean;
}
export declare function isBoothBadgeEligible(b: BoothBadgeEligibility): boolean;
//# sourceMappingURL=config-booth-badge-eligibility.d.ts.map