import { Reference } from 'alinea/core/Reference';
import { ListEditor } from 'alinea/core/field/ListField';
import type { ListRow } from 'alinea/core/shape/ListShape';
export declare class LinkEditor<StoredValue extends Reference> {
    row?: StoredValue;
    add(type: StoredValue['_type'], value: Omit<StoredValue, '_type' | '_id'>): this;
    addUrl(data: {
        url: string;
        title: string;
        target?: string;
    }, fields?: Record<string, unknown>): this;
    addEntry(entryId: string, fields?: Record<string, unknown>): this;
    addImage(entryId: string, fields?: Record<string, unknown>): this;
    addFile(entryId: string, fields?: Record<string, unknown>): this;
    value(): StoredValue;
}
export declare class LinksEditor<StoredValue extends ListRow> extends ListEditor<StoredValue> {
    addUrl(data: {
        url: string;
        title: string;
        target?: string;
    }, fields?: Record<string, unknown>): this;
    addEntry(entryId: string, fields?: Record<string, unknown>): this;
    addImage(entryId: string, fields?: Record<string, unknown>): this;
    addFile(entryId: string, fields?: Record<string, unknown>): this;
}
