import { type BuiltinPlugin, BuiltinPluginName } from '../binding';
import type { Compilation } from '../Compilation';
import type { Compiler } from '../Compiler';
import type { Module } from '../Module';
import { RspackBuiltinPlugin } from './base';
export type CircularCheckRspackPluginOptions = {
    /**
     * Exclude detection of files based on a RegExp.
     */
    exclude?: RegExp;
    /**
     * Include specific files based on a RegExp.
     */
    include?: RegExp;
    /**
     * Add errors to rspack instead of warnings.
     */
    failOnError?: boolean;
    /**
     * Called for each detected circular dependency.
     */
    onDetected?(args: {
        module: Module;
        paths: string[];
        compilation: Compilation;
    }): void;
};
export declare class CircularCheckRspackPlugin extends RspackBuiltinPlugin {
    name: BuiltinPluginName;
    _options: CircularCheckRspackPluginOptions;
    constructor(options?: CircularCheckRspackPluginOptions);
    raw(compiler: Compiler): BuiltinPlugin;
}
