import type { Workspace } from '../../pm/index.ts';
import type { DeplintPackageConfig } from '../package/index.ts';
import type { DeplintPickPlacement } from './editXyConfigPackages.ts';
import type { DeplintDiagnostic } from './types.ts';
export type DeplintPickSelection = DeplintPickPlacement | 'none';
export interface DeplintPickRow {
    /** Existing package entry in the config file (if any). */
    currentConfig?: DeplintPackageConfig;
    /** Effective placement currently written in config, if any. */
    currentPlacement?: DeplintPickPlacement;
    dependency: string;
    /** Directory that owns the xy config to edit for this row. */
    editDir: string;
    /** Existing config file path when present. */
    existingConfigPath?: string;
    /** Default selection when the prompt opens. */
    initialSelection: DeplintPickSelection;
    /** Why this row is listed. */
    reason: 'both' | 'configured' | 'review';
    /** Human label for the scope column (workspace name or "root"). */
    scope: string;
    /** Workspace(s) that contributed a borderline review, when applicable. */
    workspaces: string[];
}
/**
 * Collect interactive pick rows from:
 * 1. `dep.dependencies.aei-review` diagnostics (borderline AEI scores)
 * 2. Packages already declared under `commands.deplint.packages` in xy configs
 *
 * Each row targets a single config directory (workspace or monorepo root).
 * Borderline items that already have placement config are skipped by deplint
 * itself; they only appear via the configured-packages scan.
 */
export declare function collectDeplintPickRows(cwd: string, workspaces: readonly Workspace[], diagnostics: readonly DeplintDiagnostic[]): DeplintPickRow[];
//# sourceMappingURL=collectPickRows.d.ts.map