import type { CallContextQuery, CallContextQueryResult, CallNameTypes, LinkTo } from './call-context-query-format';
import type { BasicQueryData } from '../../base-query-format';
export type PromotedCallTest = (t: string) => boolean;
/**
 *
 */
export declare function promoteCallName(callName: CallNameTypes, exact?: boolean): PromotedCallTest;
export type PromotedLinkTo<LT = LinkTo> = Omit<LT, 'callName'> & {
    callName: PromotedCallTest;
};
/**
 * Multi-stage call context query resolve.
 *
 * 1. Resolve all calls in the DF graph that match the respective {@link DefaultCallContextQueryFormat#callName} regex.
 * 2. If there is an alias attached, consider all call traces.
 * 3. Identify their respective call targets, if {@link DefaultCallContextQueryFormat#callTargets} is set to be non-any.
 *    This happens during the main resolution!
 * 4. Attach `linkTo` calls to the respective calls.
 */
export declare function executeCallContextQueries({ analyzer }: BasicQueryData, queries: readonly CallContextQuery[]): Promise<CallContextQueryResult>;
