import type { Explore } from '../types/explore';
import type { Metric } from '../types/field';
import type { MetricFilterRule } from '../types/filter';
import type { LightdashProjectConfig } from '../types/lightdashProjectConfig';
type SpotlightConfigArgs = {
    visibility?: LightdashProjectConfig['spotlight']['default_visibility'];
    categories?: string[];
    filterBy?: string[];
    segmentBy?: string[];
    defaultSegment?: string;
    defaultFilter?: MetricFilterRule;
    owner?: string;
};
/**
 * Get the spotlight configuration for a resource
 */
export declare const getSpotlightConfigurationForResource: ({ visibility, categories, filterBy, segmentBy, defaultSegment, defaultFilter, owner, }: SpotlightConfigArgs) => Pick<Explore, "spotlight"> | Pick<Metric, "spotlight">;
/**
 * Get the categories from the resource and validate them against the project config
 * @param resourceType - The type of the resource
 * @param resourceName - The name of the resource
 * @param spotlightConfig - The spotlight config
 * @param resourceCategories - The categories from the resource
 * @returns The categories from the resource
 */
export declare const getCategoriesFromResource: (resourceType: "metric" | "explore", resourceName: string, spotlightConfig: LightdashProjectConfig["spotlight"] | undefined, resourceCategories?: string[] | undefined) => string[];
export {};
//# sourceMappingURL=lightdashProjectConfig.d.ts.map