IMergeTreeOptions Interface

Packages > @fluidframework/merge-tree > IMergeTreeOptions

This API is provided for existing users, but is not recommended for new users.

To use, import via @fluidframework/merge-tree/legacy.

For more information about our API support guarantees, see here .

Signature

export interface IMergeTreeOptions

Properties

Property Alerts Modifiers Default Value Type Description
attribution Alpha optional IMergeTreeAttributionOptions Options related to attribution
catchUpBlobName Alpha optional string
mergeTreeEnableObliterate Alpha optional boolean

Enables support for the obliterate operation -- a stronger form of remove which deletes concurrently inserted segments

Obliterate is currently experimental and may not work in all scenarios.

Default value: false

mergeTreeEnableObliterateReconnect Alpha optional false boolean

Enables support for reconnecting when obliterate operations are present

Obliterate is currently experimental and may not work in all scenarios.

mergeTreeEnableSidedObliterate Alpha optional false boolean Enables support for obliterate endpoint expansion. When enabled, obliterate operations can have sidedness specified for their endpoints. If an endpoint is externally anchored (aka the start is after a given position, or the end is before a given position), then concurrent inserts adjacent to the exclusive endpoint of an obliterated range will be included in the obliteration
mergeTreeReferencesCanSlideToEndpoint Alpha optional boolean

Whether or not reference positions can slide to special endpoint segments denoting the positions immediately before the start and immediately after the end of the string.

This is primarily useful in the case of interval stickiness.

mergeTreeSnapshotChunkSize Alpha optional number
newMergeTreeSnapshotFormat Alpha optional boolean

Whether to use the SnapshotV1 format over SnapshotLegacy.

SnapshotV1 stores a view of the merge-tree at the current sequence number, preserving merge metadata (e.g. clientId, seq, etc.) only for segment changes within the collab window.

SnapshotLegacy stores a view of the merge-tree at the minimum sequence number along with the ops between the minimum sequence number and the current sequence number.

Both formats merge segments where possible (see canAppend(segment))

default: false

Property Details

attribution

Options related to attribution

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

attribution?: IMergeTreeAttributionOptions;

Type: IMergeTreeAttributionOptions

catchUpBlobName

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

catchUpBlobName?: string;

Type: string

mergeTreeEnableObliterate

Enables support for the obliterate operation – a stronger form of remove which deletes concurrently inserted segments

Obliterate is currently experimental and may not work in all scenarios.

Default value: false

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

mergeTreeEnableObliterate?: boolean;

Type: boolean

mergeTreeEnableObliterateReconnect

Enables support for reconnecting when obliterate operations are present

Obliterate is currently experimental and may not work in all scenarios.

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

mergeTreeEnableObliterateReconnect?: boolean;

Type: boolean

mergeTreeEnableSidedObliterate

Enables support for obliterate endpoint expansion. When enabled, obliterate operations can have sidedness specified for their endpoints. If an endpoint is externally anchored (aka the start is after a given position, or the end is before a given position), then concurrent inserts adjacent to the exclusive endpoint of an obliterated range will be included in the obliteration

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

mergeTreeEnableSidedObliterate?: boolean;

Type: boolean

mergeTreeReferencesCanSlideToEndpoint

Whether or not reference positions can slide to special endpoint segments denoting the positions immediately before the start and immediately after the end of the string.

This is primarily useful in the case of interval stickiness.

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

mergeTreeReferencesCanSlideToEndpoint?: boolean;

Type: boolean

mergeTreeSnapshotChunkSize

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

mergeTreeSnapshotChunkSize?: number;

Type: number

newMergeTreeSnapshotFormat

Whether to use the SnapshotV1 format over SnapshotLegacy.

SnapshotV1 stores a view of the merge-tree at the current sequence number, preserving merge metadata (e.g. clientId, seq, etc.) only for segment changes within the collab window.

SnapshotLegacy stores a view of the merge-tree at the minimum sequence number along with the ops between the minimum sequence number and the current sequence number.

Both formats merge segments where possible (see canAppend(segment) )

default: false

This API is provided as an alpha preview and may change without notice.

To use, import via @fluidframework/merge-tree/alpha.

For more information about our API support guarantees, see here .

Signature

newMergeTreeSnapshotFormat?: boolean;

Type: boolean

Remarks

Despite the “legacy”/“V1” naming, both formats are actively used at the time of writing. SharedString uses legacy and Matrix uses V1.