import * as Y from 'yjs';
export interface YTextChange {
    start: number;
    end: number;
    text: string;
}
export declare namespace YTextChange {
    function sort(changes: YTextChange[]): YTextChange[];
}
export interface YTextChangeDelta {
    insert?: string | object | Y.AbstractType<any>;
    delete?: number;
    retain?: number;
    attributes?: Record<string, any>;
}
export declare namespace YTextChangeDelta {
    function isInsert(delta: YTextChangeDelta): delta is {
        insert: string;
    };
    function isDelete(delta: YTextChangeDelta): delta is {
        delete: number;
    };
    function isRetain(delta: YTextChangeDelta): delta is {
        retain: number;
    };
    function toChanges(delta: YTextChangeDelta[]): YTextChange[];
}
//# sourceMappingURL=ytext-change-tracker.d.ts.map