UNPKG

@eagleoutice/flowr

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

16 lines (15 loc) 1.13 kB
import type { QueryArgumentsWithType, SupportedQueryTypes } from '../query'; import type { CompoundQueryFormat, VirtualCompoundConstraint } from './compound-query'; import { executeCompoundQueries } from './compound-query'; import type { BaseQueryFormat } from '../base-query-format'; /** A query that does not perform a search but may perform (e.g., convenience) modifications of other queries */ export type VirtualQueryArgumentsWithType<Base extends SupportedQueryTypes, VirtualArguments extends VirtualCompoundConstraint<Base> = VirtualCompoundConstraint<Base>> = CompoundQueryFormat<Base, VirtualArguments>; export type VirtualQueryExecutor<Query extends BaseQueryFormat, Result extends BaseQueryFormat[]> = (query: Query) => Result; type SupportedVirtualQueries = { [QueryType in VirtualQueryArgumentsWithType<SupportedQueryTypes>['type']]: VirtualQueryExecutor<QueryArgumentsWithType<QueryType>, BaseQueryFormat[]>; }; export declare const SupportedVirtualQueries: { readonly compound: typeof executeCompoundQueries; }; export type SupportedVirtualQueryTypes = keyof typeof SupportedVirtualQueries; export {};