import { Note, Notes } from "../commons/Note";
import { NoteEdit } from "./NoteEdit";
/**
 * API d’édition cohérente autour d'un {@link Notes}.
 */
export declare class NotesEdit {
    private readonly target;
    constructor(target: Notes);
    get value(): Notes;
    /**
     * Crée une {@link Note}, l’ajoute en fin de liste et renvoie sa facade d’édition.
     */
    addNew(initialLines?: readonly string[] | null): NoteEdit;
    add(note: Note): this;
    insertAt(index: number, note: Note): this;
    insertNewAt(index: number, initialLines?: readonly string[] | null): NoteEdit;
    removeLast(): this;
    indexOfNote(note: Note): number;
    removeNote(note: Note): boolean;
    replaceAt(index: number, note: Note): this;
    removeAt(index: number): this;
    clear(): this;
    at(index: number): NoteEdit;
}
export declare function editNotes(notes: Notes): NotesEdit;
