import type { ITerminal } from '@rushstack/terminal';
import { type IFileSelectionSpecifier } from './FileGlobSpecifier';
import type { HeftConfiguration } from '../configuration/HeftConfiguration';
import type { IHeftTaskPlugin } from '../pluginFramework/IHeftPlugin';
import type { IHeftTaskSession } from '../pluginFramework/HeftTaskSession';
/**
 * Used to specify a selection of source files to delete from the specified source folder.
 *
 * @public
 */
export interface IDeleteOperation extends IFileSelectionSpecifier {
}
interface IDeleteFilesPluginOptions {
    deleteOperations: IDeleteOperation[];
}
export declare function deleteFilesAsync(rootFolderPath: string, deleteOperations: Iterable<IDeleteOperation>, terminal: ITerminal): Promise<void>;
export default class DeleteFilesPlugin implements IHeftTaskPlugin<IDeleteFilesPluginOptions> {
    apply(taskSession: IHeftTaskSession, heftConfiguration: HeftConfiguration, pluginOptions: IDeleteFilesPluginOptions): void;
}
export {};
//# sourceMappingURL=DeleteFilesPlugin.d.ts.map