Skip to main content
Version: v1

@fluidframework/runtime-definitions Package

Interfaces

Interface Description
IAttachMessage Message send by client attaching local data structure. Contains snapshot of data structure which is the current state of this data structure.
IContainerRuntimeBase A reduced set of functionality of IContainerRuntime that a data store context/data store runtime will need TODO: this should be merged into IFluidDataStoreContext
IContainerRuntimeBaseEvents
IDataStore A fluid router with the capability of being assigned an alias
IEnvelope An envelope wraps the contents with the intended target
IFluidDataStoreChannel

Minimal interface a data store runtime need to provide for IFluidDataStoreContext to bind to control

Functionality include attach, snapshot, op/signal processing, request routes, and connection state notifications

IFluidDataStoreContext Represents the context for the data store. It is used by the data store runtime to get information and call functionality to the container.
IFluidDataStoreContextDetached
IFluidDataStoreContextEvents
IFluidDataStoreFactory IFluidDataStoreFactory create data stores. It is associated with an identifier (its type member) and usually provided to consumers using this mapping through a data store registry.
IFluidDataStoreRegistry An association of identifiers to data store registry entries, where the entries can be used to create data stores.
IGarbageCollectionData Garbage collection data returned by nodes in a Container. Used for running GC in the Container.
IGarbageCollectionDetailsBase GC details provided to each node during creation.
IGarbageCollectionNodeData The garbage collection data of each node in the reference graph.
IGarbageCollectionState The garbage collection state of the reference graph. It contains a list of all the nodes in the graph and their GC data.
IInboundSignalMessage Represents ISignalMessage with its type.
IProvideFluidDataStoreFactory
IProvideFluidDataStoreRegistry
ISignalEnvelope
ISummarizeInternalResult Contains the same data as ISummaryResult but in order to avoid naming colisions, the data store summaries are wrapped around an array of labels identified by pathPartsForChildren. Ex: id:"" pathPartsForChildren: ["path1"] stats: ... summary: ... "path1":
ISummarizeResult Represents a summary at a current sequence number.
ISummarizerNode
ISummarizerNodeConfig
ISummarizerNodeConfigWithGC
ISummarizerNodeWithGC Extends the functionality of ISummarizerNode to support garbage collection. It adds / udpates the following APIs: - usedRoutes - The routes in this node that are currently in use. - getGCData - A new API that can be used to get the garbage collection data for this node. - summarize - Added a trackState flag which indicates whether the summarizer node should track the state of the summary or not. - createChild - Added the following params: - getGCDataFn - This gets the GC data from the caller. This must be provided in order for getGCData to work. - getInitialGCDetailsFn - This gets the initial GC details from the caller. - deleteChild - Deletes a child node. - isReferenced - This tells whether this node is referenced in the document or not. - updateUsedRoutes - Used to notify this node of routes that are currently in use in it.
ISummaryStats Contains the aggregation data from a Tree/Subtree.
ISummaryTreeWithStats Represents the summary tree for a node along with the statistics for that tree. For example, for a given data store, it contains the data for data store along with a subtree for each of its DDS. Any component that implements IChannelContext, IFluidDataStoreChannel or extends SharedObject will be taking part of the summarization process.
ITelemetryContext Contains telemetry data relevant to summarization workflows. This object is expected to be modified directly by various summarize methods.

Enumerations

Enum Description
CreateSummarizerNodeSource
FlushMode Runtime flush mode handling

Types

TypeAlias Alerts Description
AliasResult

Encapsulates the return codes of the aliasing API.

'Success' - the datastore has been successfully aliased. It can now be used. 'Conflict' - there is already a datastore bound to the provided alias. To acquire a handle to it, use the IContainerRuntime.getRootDataStore function. The current datastore should be discarded and will be garbage collected. The current datastore cannot be aliased to a different value. 'Aliasing' (deprecated) - this value is never returned. 'AlreadyAliased' - the datastore has already been previously bound to another alias name.

CreateChildSummarizerNodeFn
CreateChildSummarizerNodeParam
FluidDataStoreRegistryEntry A single registry entry that may be used to create data stores It has to have either factory or registry, or both.
IGarbageCollectionSummaryDetails Deprecated
InboundAttachMessage This type should be used when reading an incoming attach op, but it should not be used when creating a new attach op. Older versions of attach messages could have null snapshots, so this gives correct typings for writing backward compatible code.
NamedFluidDataStoreRegistryEntries An iterable identifier/registry entry pair list
NamedFluidDataStoreRegistryEntry An associated pair of an identifier and registry entry. Registry entries may be dynamically loaded.
SummarizeInternalFn
VisibilityState_2

Variables

Variable Type Description
blobCountPropertyName
channelsTreeName
gcBlobKey
IFluidDataStoreFactory keyof IProvideFluidDataStoreFactory
IFluidDataStoreRegistry keyof IProvideFluidDataStoreRegistry
totalBlobSizePropertyName
VisibilityState_2 { NotVisible: string; LocallyVisible: string; GloballyVisible: string; } This tells the visibility state of a Fluid object. It basically tracks whether the object is not visible, visible locally within the container only or visible globally to all clients.

Variable Details

blobCountPropertyName

Signature

blobCountPropertyName = "BlobCount"

channelsTreeName

Signature

channelsTreeName = ".channels"

gcBlobKey

Signature

gcBlobKey = "gc"

IFluidDataStoreFactory

Signature

IFluidDataStoreFactory: keyof IProvideFluidDataStoreFactory

Type: keyof IProvideFluidDataStoreFactory

IFluidDataStoreRegistry

Signature

IFluidDataStoreRegistry: keyof IProvideFluidDataStoreRegistry

Type: keyof IProvideFluidDataStoreRegistry

totalBlobSizePropertyName

Signature

totalBlobSizePropertyName = "TotalBlobSize"

VisibilityState_2

This tells the visibility state of a Fluid object. It basically tracks whether the object is not visible, visible locally within the container only or visible globally to all clients.

Signature

VisibilityState: {
NotVisible: string;
LocallyVisible: string;
GloballyVisible: string;
}

Type: { NotVisible: string; LocallyVisible: string; GloballyVisible: string; }