Skip to main content

@fluidframework/container-definitions Package

This library contains the interfaces and types concerning the Loader and loading the Container.

Interfaces

Interface Alerts Modifiers Description
ContainerWarning Legacy, Alpha Represents warnings raised on container.
IAudience Represents all clients connected to the op stream, both read-only and read/write.
IAudienceEvents Interface describing Audience events
IAudienceOwner Legacy, Alpha Manages the state and the members for IAudience
IBatchMessage Legacy, Alpha Payload type for IContainerContext.submitBatchFn()
ICodeDetailsLoader Legacy, Alpha Fluid code loader resolves a code module matching the document schema, i.e. code details, such as a package name and package version range.
IConnectionDetails Legacy, Alpha Contract representing the result of a newly established connection to the server for syncing deltas.
IContainer Legacy, Alpha The Host's view of a Container and its connection to storage
IContainerContext Legacy, Alpha IContainerContext is fundamentally just the set of things that an IRuntimeFactory (and IRuntime) will consume from the loader layer. It gets passed into the instantiateRuntime(context, existing) call.
IContainerEvents Legacy, Alpha Events emitted by the IContainer "upwards" to the Loader and Host.
IContainerLoadMode Legacy, Alpha
IDeltaManager Legacy, Alpha sealed Manages the transmission of ops between the runtime and storage.
IDeltaManagerEvents Legacy, Alpha sealed Events emitted by IDeltaManager.
IDeltaQueue Legacy, Alpha sealed Queue of ops to be sent to or processed from storage
IDeltaQueueEvents Legacy, Alpha sealed Events emitted by IDeltaQueue.
IDeltaSender Legacy, Alpha sealed Contract supporting delivery of outbound messages to the server
IFluidBrowserPackage Legacy, Alpha A Fluid package for specification for browser environments
IFluidBrowserPackageEnvironment Legacy, Alpha A specific Fluid package environment for browsers
IFluidCodeDetails Legacy, Alpha Data structure used to describe the code to load on the Fluid document
IFluidCodeDetailsComparer Legacy, Alpha Provides capability to compare Fluid code details.
IFluidCodeDetailsConfig Legacy, Alpha Package manager configuration. Provides a key value mapping of config values
IFluidModule Legacy, Alpha
IFluidModuleWithDetails Legacy, Alpha Encapsulates a module entry point with corresponding code details.
IFluidPackage Legacy, Alpha Fluid-specific properties expected on a package to be loaded by the code loader. While compatible with the npm package format it is not necessary that that package is an npm package: https://stackoverflow.com/questions/10065564/add-custom-metadata-or-config-to-package-json-is-it-valid
IFluidPackageEnvironment Legacy, Alpha Specifies an environment on Fluid property of a IFluidPackage.
IGetPendingLocalStateProps Legacy, Alpha Defines list of properties expected for getPendingLocalState
IHostLoader Legacy, Alpha The Host's view of the Loader, used for loading Containers
ILoader Legacy, Alpha The Runtime's view of the Loader, used for loading Containers
IProvideFluidCodeDetailsComparer Legacy, Alpha
IProvideLoader Legacy, Alpha
IProvideRuntimeFactory Legacy, Alpha
IRuntime Legacy, Alpha The IRuntime represents an instantiation of a code package within a Container. Primarily held by the ContainerContext to be able to interact with the running instance of the Container.
IRuntimeFactory Legacy, Alpha

Exported module definition

Provides the entry point for the ContainerContext to load the proper IRuntime to start up the running instance of the Container.

ISelf Return type of getSelf(). Please see remarks for getSelf() to learn more details on promises.
ISnapshotTreeWithBlobContents Legacy, Alpha This is used when we rehydrate a container from the snapshot. Here we put the blob contents in separate property: blobsContents.

Enumerations

Enum Alerts Description
AttachState The attachment state of some Fluid data (e.g. a container or data store), denoting whether it is uploaded to the service. The transition from detached to attached state is a one-way transition.
LoaderHeader Legacy, Alpha Accepted header keys for requests coming to the Loader

Types

TypeAlias Alerts Description
ConnectionState Type defining the different states of connectivity a Container can be in.
ContainerErrorTypes Legacy, Alpha Different error types the ClientSession may report out to the Host.
ICriticalContainerError Represents errors raised on container.
ILoaderOptions Legacy, Alpha Options to configure various behaviors of the ILoader.
ReadOnlyInfo Legacy, Alpha

Functions

Function Alerts Return Type Description
isFluidBrowserPackage(maybePkg) Legacy, Alpha maybePkg is Readonly<IFluidBrowserPackage> Determines if any object is an IFluidBrowserPackage
isFluidPackage(pkg) Legacy, Alpha pkg is Readonly<IFluidPackage> Check if the package.json defines a Fluid package

Variables

Variable Alerts Modifiers Type Description
ContainerErrorTypes Legacy, Alpha readonly { readonly clientSessionExpiredError: "clientSessionExpiredError"; readonly genericError: "genericError"; readonly throttlingError: "throttlingError"; readonly dataCorruptionError: "dataCorruptionError"; readonly dataProcessingError: "dataProcessingError"; readonly usageError: "usageError"; } Different error types the ClientSession may report out to the Host.
IFluidCodeDetailsComparer Legacy, Alpha readonly keyof IProvideFluidCodeDetailsComparer
IRuntimeFactory Legacy, Alpha readonly keyof IProvideRuntimeFactory

Namespaces

Namespace Description
ConnectionState Namespace for the different connection states a container can be in. PLEASE NOTE: The sequence of the numerical values does no correspond to the typical connection state progression.

Function Details

isFluidBrowserPackage

Determines if any object is an IFluidBrowserPackage

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

To use, import via @fluidframework/container-definitions/legacy.

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

Signature

isFluidBrowserPackage: (maybePkg: unknown) => maybePkg is Readonly<IFluidBrowserPackage>

Parameters

Parameter Type Description
maybePkg unknown The object to check for compatibility with IFluidBrowserPackage

Returns

Return type: maybePkg is Readonly<IFluidBrowserPackage>

isFluidPackage

Check if the package.json defines a Fluid package

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

To use, import via @fluidframework/container-definitions/legacy.

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

Signature

isFluidPackage: (pkg: unknown) => pkg is Readonly<IFluidPackage>

Parameters

Parameter Type Description
pkg unknown the package json data to check if it is a Fluid package.

Returns

Return type: pkg is Readonly<IFluidPackage>

Variable Details

ContainerErrorTypes

Different error types the ClientSession may report out to the Host.

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

To use, import via @fluidframework/container-definitions/legacy.

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

Signature

ContainerErrorTypes: {
readonly clientSessionExpiredError: "clientSessionExpiredError";
readonly genericError: "genericError";
readonly throttlingError: "throttlingError";
readonly dataCorruptionError: "dataCorruptionError";
readonly dataProcessingError: "dataProcessingError";
readonly usageError: "usageError";
}

Type: { readonly clientSessionExpiredError: "clientSessionExpiredError"; readonly genericError: "genericError"; readonly throttlingError: "throttlingError"; readonly dataCorruptionError: "dataCorruptionError"; readonly dataProcessingError: "dataProcessingError"; readonly usageError: "usageError"; }

IFluidCodeDetailsComparer

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

To use, import via @fluidframework/container-definitions/legacy.

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

Signature

IFluidCodeDetailsComparer: keyof IProvideFluidCodeDetailsComparer

Type: keyof IProvideFluidCodeDetailsComparer

IRuntimeFactory

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

To use, import via @fluidframework/container-definitions/legacy.

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

Signature

IRuntimeFactory: keyof IProvideRuntimeFactory

Type: keyof IProvideRuntimeFactory