import type { CleanGitignoreBackend } from './cleanGitignore.ts';
import { type CleanFullMode } from './cleanPlan.ts';
export interface PackageCleanOptions {
    /**
     * Extra package-relative clean patterns treated like `commands.clean.patterns`.
     * When `skipConfigLoad` is false, these are merged with config patterns.
     */
    extraPatterns?: string[];
    /**
     * When not `none`, also delete all gitignored paths under the package.
     * `full-all` additionally ignores config/default exclude (only `.git` is protected).
     */
    fullMode?: CleanFullMode;
    /** Injectable gitignore backend (tests). */
    gitignore?: CleanGitignoreBackend;
    pkg?: string;
    pkgName?: string;
    /**
     * Monorepo root used for the outside-root safety check.
     * Defaults to {@link findWorkspaceRoot} for `pkg`.
     */
    rootDir?: string;
    /**
     * When true, skip loading `commands.clean` from xy.config and only use
     * `extraPatterns` / defaults. Used by callers that already loaded config.
     */
    skipConfigLoad?: boolean;
}
export declare const packageCleanOutputs: (options?: PackageCleanOptions) => Promise<number>;
//# sourceMappingURL=clean-outputs.d.ts.map