/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { BaseSegment, ISegment } from "./mergeTreeNodes";
import { IJSONSegment } from "./ops";
import { PropertySet } from "./properties";
export declare const TextSegmentGranularity = 256;
export interface IJSONTextSegment extends IJSONSegment {
    text: string;
}
export declare class TextSegment extends BaseSegment {
    text: string;
    static readonly type = "TextSegment";
    static is(segment: ISegment): segment is TextSegment;
    static make(text: string, props?: PropertySet): TextSegment;
    static fromJSONObject(spec: any): TextSegment | undefined;
    readonly type = "TextSegment";
    constructor(text: string);
    toJSONObject(): string | {
        text: string;
        props: PropertySet;
    };
    clone(start?: number, end?: number): TextSegment;
    canAppend(segment: ISegment): boolean;
    toString(): string;
    append(segment: ISegment): void;
    removeRange(start: number, end: number): boolean;
    protected createSplitSegmentAt(pos: number): TextSegment | undefined;
}
export interface IMergeTreeTextHelper {
    getText(refSeq: number, clientId: number, placeholder: string, start?: number, end?: number): string;
}
//# sourceMappingURL=textSegment.d.ts.map