/**
 * Make a decision for each experiment based on the active viewIds.
 * @param {Array<String>} activeViewIds
 * @param {string} visitorId
 * @param {Object} webManifest
 * @param {Object} inputs
 *        Note: May be mutated, enriched with data like the visitor's location.
 * @return {Promise.<Array.<Decision>>}
 */
export function decideExperiments(activeViewIds: Array<string>, visitorId: string, webManifest: Object, visitorProfile: any, inputs: Object, variationMap: any, logger: any): Promise<Array<Decision>>;
export function selectExperimentFromLayer({ visitorProfile, inputs, experiment, webManifest, optlyInstance, visitorId, layer, activeViewIds, logger, edgeAudienceIds, }: {
    visitorProfile: any;
    inputs: any;
    experiment: any;
    webManifest: any;
    optlyInstance: any;
    visitorId: any;
    layer: any;
    activeViewIds: any;
    logger: any;
    edgeAudienceIds: any;
}): Promise<any>;
/**
 * @param {Object} webManifest
 * @param {Object} experiment
 * @returns {Boolean}
 *        Whether some audience in the given experiment's targeting conditions
 *        contains a condition of type 'location'.
 * @throws {DecisionError}
 *        If there's an inconsistency in the WebManifest such that some audience to
 *        which a layer refers is missing from the WebManifest.
 */
export function experimentTargetsByLocation(webManifest: Object, experiment: Object): boolean;
export function getAudiencesConditionsTypes(webManifest: any, audienceIds: any): any[];
/**
 * A null decision is one where the visitor is not bucketed into a variation because they are in
 * the holdback or do not meet the audience conditions for the experiment. This function
 * returns whether or not the decision is a null one.
 *
 * @param {Object} decision
 * @returns {Boolean}
 */
export function isNullDecision(decision: Object): boolean;
