import { type IBucket, type IFilter } from "@gooddata/sdk-model";
export interface ILayerBucketsContext {
    id: string;
    buckets: IBucket[];
}
export interface ILayerLocalIds {
    attributeLocalIds: Set<string>;
    measureLocalIds: Set<string>;
}
export interface IRoutedLocalIdRefFilters {
    /**
     * Filters that are safe to apply to all layers (attribute/date filters + measure-based filters that do NOT use localIdRef).
     */
    globalFilters: IFilter[];
    /**
     * Measure-based filters (MVF/ranking) that use localIdRef, routed to layers where referenced localIds exist.
     */
    routedByLayerId: Map<string, IFilter[]>;
}
/**
 * Splits filters into:
 * - filters safe to apply to all layers (includes measure-based filters that do not use localIdRef)
 * - measure-based filters using localIdRef (MVF/ranking) routed to layers where referenced localIds exist
 */
export declare function routeLocalIdRefFiltersToLayers(globalFilters: IFilter[], layers: ILayerBucketsContext[]): IRoutedLocalIdRefFilters;
//# sourceMappingURL=routeLocalIdRefFiltersToLayers.d.ts.map