@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
656 lines • 58.5 kB
TypeScript
import type { CallContextQuery } from './catalog/call-context-query/call-context-query-format';
import type { BaseQueryFormat, BaseQueryResult, BasicQueryData } from './base-query-format';
import type { VirtualQueryArgumentsWithType } from './virtual-query/virtual-queries';
import type { VirtualCompoundConstraint } from './virtual-query/compound-query';
import type { DataflowQuery } from './catalog/dataflow-query/dataflow-query-format';
import type { IdMapQuery } from './catalog/id-map-query/id-map-query-format';
import type { NormalizedAstQuery } from './catalog/normalized-ast-query/normalized-ast-query-format';
import type { LineageQuery } from './catalog/lineage-query/lineage-query-format';
import type { StaticSliceQuery } from './catalog/static-slice-query/static-slice-query-format';
import type { DataflowClusterQuery } from './catalog/cluster-query/cluster-query-format';
import type { DependenciesQuery } from './catalog/dependencies-query/dependencies-query-format';
import type { OutputFormatter } from '../util/ansi';
import type { PipelineOutput } from '../core/steps/pipeline/pipeline';
import type { DEFAULT_DATAFLOW_PIPELINE } from '../core/steps/pipeline/default-pipelines';
import Joi from 'joi';
import type { LocationMapQuery } from './catalog/location-map-query/location-map-query-format';
import type { ConfigQuery } from './catalog/config-query/config-query-format';
import type { SearchQuery } from './catalog/search-query/search-query-format';
import type { HappensBeforeQuery } from './catalog/happens-before-query/happens-before-query-format';
import type { ResolveValueQuery } from './catalog/resolve-value-query/resolve-value-query-format';
import type { DataflowLensQuery } from './catalog/dataflow-lens-query/dataflow-lens-query-format';
import type { ProjectQuery } from './catalog/project-query/project-query-format';
export type Query = CallContextQuery | ConfigQuery | SearchQuery | DataflowQuery | DataflowLensQuery | NormalizedAstQuery | IdMapQuery | DataflowClusterQuery | StaticSliceQuery | LineageQuery | DependenciesQuery | LocationMapQuery | HappensBeforeQuery | ResolveValueQuery | ProjectQuery;
export type QueryArgumentsWithType<QueryType extends BaseQueryFormat['type']> = Query & {
type: QueryType;
};
export type QueryExecutor<Query extends BaseQueryFormat, Result extends BaseQueryResult> = (data: BasicQueryData, query: readonly Query[]) => Result;
type SupportedQueries = {
[QueryType in Query['type']]: SupportedQuery<QueryType>;
};
export interface SupportedQuery<QueryType extends BaseQueryFormat['type']> {
executor: QueryExecutor<QueryArgumentsWithType<QueryType>, BaseQueryResult>;
asciiSummarizer: (formatter: OutputFormatter, processed: PipelineOutput<typeof DEFAULT_DATAFLOW_PIPELINE>, queryResults: BaseQueryResult, resultStrings: string[]) => boolean;
schema: Joi.ObjectSchema;
}
export declare const SupportedQueries: {
readonly 'call-context': {
readonly executor: typeof import("./catalog/call-context-query/call-context-query-executor").executeCallContextQueries;
readonly asciiSummarizer: (formatter: OutputFormatter, processed: PipelineOutput<typeof DEFAULT_DATAFLOW_PIPELINE>, queryResults: BaseQueryResult, result: string[]) => boolean;
readonly schema: Joi.ObjectSchema<any>;
};
readonly config: {
readonly executor: typeof import("./catalog/config-query/config-query-executor").executeConfigQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: unknown, queryResults: BaseQueryResult, result: string[]) => boolean;
readonly schema: Joi.ObjectSchema<any>;
};
readonly dataflow: {
readonly executor: typeof import("./catalog/dataflow-query/dataflow-query-executor").executeDataflowQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'dataflow-lens': {
readonly executor: typeof import("./catalog/dataflow-lens-query/dataflow-lens-query-executor").executeDataflowLensQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'id-map': {
readonly executor: typeof import("./catalog/id-map-query/id-map-query-executor").executeIdMapQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'normalized-ast': {
readonly executor: typeof import("./catalog/normalized-ast-query/normalized-ast-query-executor").executeNormalizedAstQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'dataflow-cluster': {
readonly executor: typeof import("./catalog/cluster-query/cluster-query-executor").executeDataflowClusterQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'static-slice': {
readonly executor: typeof import("./catalog/static-slice-query/static-slice-query-executor").executeStaticSliceQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly lineage: {
readonly executor: typeof import("./catalog/lineage-query/lineage-query-executor").executeLineageQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly dependencies: {
readonly executor: typeof import("./catalog/dependencies-query/dependencies-query-executor").executeDependenciesQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'location-map': {
readonly executor: typeof import("./catalog/location-map-query/location-map-query-executor").executeLocationMapQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: unknown, queryResults: BaseQueryResult, result: string[]) => boolean;
readonly schema: Joi.ObjectSchema<any>;
};
readonly search: {
readonly executor: typeof import("./catalog/search-query/search-query-executor").executeSearch;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'happens-before': {
readonly executor: typeof import("./catalog/happens-before-query/happens-before-query-executor").executeHappensBefore;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../r-bridge/lang-4.x/ast/model/model").RNode<import("../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/normalize-printer").normalizedAstToJson;
readonly 5: typeof import("../core/print/normalize-printer").normalizedAstToQuads;
readonly 3: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaid;
readonly 4: typeof import("../core/print/normalize-printer").printNormalizedAstToMermaidUrl;
};
readonly dependencies: readonly ["parse"];
readonly requiredInput: import("../core/steps/all/core/10-normalize").NormalizeRequiredInput;
} | {
readonly humanReadableName: "dataflow";
readonly processor: (results: {
normalize?: import("../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
}, input: {
request?: import("../r-bridge/retriever").RParseRequests;
parser?: import("../r-bridge/parser").Parser<import("../r-bridge/parser").KnownParserType>;
}) => import("../dataflow/info").DataflowInformation;
readonly requiredInput: {};
readonly name: "dataflow";
readonly description: "Construct the dataflow graph";
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: typeof import("../core/print/dataflow-printer").dataflowGraphToJson;
readonly 5: typeof import("../core/print/dataflow-printer").dataflowGraphToQuads;
readonly 3: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaid;
readonly 4: typeof import("../core/print/dataflow-printer").dataflowGraphToMermaidUrl;
};
readonly dependencies: readonly ["normalize"];
}>>, queryResults: BaseQueryResult, result: string[]) => true;
readonly schema: Joi.ObjectSchema<any>;
};
readonly 'resolve-value': {
readonly executor: typeof import("./catalog/resolve-value-query/resolve-value-query-executor").executeResolveValueQuery;
readonly asciiSummarizer: (formatter: OutputFormatter, _processed: PipelineOutput<import("../core/steps/pipeline/pipeline").Pipeline<{
readonly name: "parse";
readonly humanReadableName: "parse with R shell";
readonly description: "Parse the given R code into an AST";
readonly processor: (_results: unknown, input: Partial<import("../r-bridge/parser").ParseRequiredInput<string>>) => Promise<import("../r-bridge/parser").ParseStepOutput<string>>;
readonly executed: import("../core/steps/pipeline-step").PipelineStepStage.OncePerFile;
readonly printer: {
readonly 0: typeof import("../core/print/print").internalPrinter;
readonly 2: {
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
};
readonly 5: ({ parsed }: import("../r-bridge/parser").ParseStepOutput<string>, config: import("../util/quads").QuadSerializationConfiguration) => string;
};
readonly dependencies: readonly [];
readonly requiredInput: import("../r-bridge/parser").ParseRequiredInput<string>;
} | {
readonly name: "normalize";
readonly humanReadableName: "normalize";
readonly description: "Normalize the AST to flowR's AST";
readonly processor: (results: {
parse?: import("../r-bridge/parser").ParseStepOutput<string>;
}, input: Partial<import("../core/steps/all/core/10-normalize").NormalizeRequiredInput>) => import("../r-bridge/lang-