import { FlowrAnalyzerFilePlugin } from './flowr-analyzer-file-plugin';
import { SemVer } from 'semver';
import type { PathLike } from 'fs';
import type { FlowrAnalyzerContext } from '../../context/flowr-analyzer-context';
import type { FlowrFileProvider } from '../../context/flowr-file';
/** `Rprofile.site` is the site-wide, `.Rprofile` the user/project profile. */
export declare const RprofileFilePattern: RegExp;
/** `.Renviron` is the user/project environment file, `Renviron.site` the site-wide one. */
export declare const RenvironFilePattern: RegExp;
/**
 * Marks R startup files: profiles (`.Rprofile`, `Rprofile.site`) are R source, so they get
 * {@link FileRole.Startup} and {@link FileRole.Source}; environment files (`.Renviron`, `Renviron.site`) hold
 * `KEY=value` definitions rather than R code, so they only get {@link FileRole.Environment}.
 * The {@link FlowrAnalyzerLoadingOrderRprofilePlugin} moves the profile files to the front of the loading order.
 */
export declare class FlowrAnalyzerRprofileFilePlugin extends FlowrAnalyzerFilePlugin {
    readonly name = "flowr-analyzer-rprofile-file-plugin";
    readonly description = "Marks R startup files (.Rprofile, Rprofile.site, .Renviron, Renviron.site).";
    readonly version: SemVer;
    private readonly profilePattern;
    private readonly environPattern;
    constructor(profilePattern?: RegExp, environPattern?: RegExp);
    applies(file: PathLike): boolean;
    process(_ctx: FlowrAnalyzerContext, file: FlowrFileProvider): [FlowrFileProvider, true];
}
