import type { RParseRequestFromFile, RParseRequestFromText, RShell } from '@eagleoutice/flowr/r-bridge'; import type { FeatureSelection, FeatureStatistics } from './features'; import type { MetaStatistics } from './meta-statistics'; import type { StepResults } from '@eagleoutice/flowr/core'; /** * By default, {@link extractUsageStatistics} requires a generator, but sometimes you already know all the files * that you want to process. This function simply reps your requests as a generator. */ export declare function staticRequests(...requests: (RParseRequestFromText | RParseRequestFromFile)[]): AsyncGenerator; /** * Extract all wanted statistic information from a set of requests using the presented R session. * * @param shell - The R session to use * @param onRequest - A callback that is called at the beginning of each request, this may be used to debug the requests. * @param features - The features to extract (see {@link allFeatureNames}). * @param requests - The requests to extract the features from. May generate them on demand (e.g., by traversing a folder). * If your request is statically known, you can use {@link staticRequests} to create this generator. * @param rootPath - The root path to the project, this is used to relativize the file paths in the statistics. */ export declare function extractUsageStatistics(shell: RShell, onRequest: (request: T) => void, features: FeatureSelection, requests: AsyncGenerator, rootPath?: string): Promise<{ features: FeatureStatistics; meta: MetaStatistics; outputs: Map>; }>;