@fluidframework/protocol-definitions Package

Packages > @fluidframework/protocol-definitions

Enumerations

List of enums contained in this package or namespace
Enumeration Description
FileMode
MessageType
NackErrorType Type of the Nack. InvalidScopeError: Client's token is not valid for the intended op. ThrottlingError: Retryable after retryAfter number. BadRequestError: Clients op is invalid and should retry immediately with a valid op. LimitExceededError: Service is having issues. Client should not retry.
ScopeType
SummaryType
TreeEntry Type of entries that can be stored in a tree

Interfaces

List of interfaces contained in this package or namespace
Interface Description
IActorClient
IAttachment
IBlob Raw blob stored within the tree
IBranchOrigin Branch origin information
ICapabilities
IClient
IClientConfiguration Key value store of service configuration properties provided to the client as part of connection
IClientDetails
IClientJoin Contents sent with a ClientJoin message
IConnect Message sent to connect to the given document
IConnected Message sent to indicate a client has connected to the server
ICreateBlobResponse
IDocumentAttributes
IDocumentMessage Document specific message
IDocumentSystemMessage Document Message with optional system level data field.
IHelpMessage Represents a message containing tasks.
INack
INackContent Interface for nack content.
IPendingProposal A proposal that has been propposed, but not yet accepted or committed
IProcessMessageResult
IProposal Proposal to set the given key/value pair.Consensus on the proposal is achieved if the MSN is >= the sequence number at which the proposal is made and no client within the collaboration window rejects the proposal.
IProtocolState
IQueueMessage Represents a message in task queue to be processed.
IQuorum Interface combining tracking of clients as well as proposals in the Quorum.
IQuorumClients Interface for tracking clients in the Quorum.
IQuorumClientsEvents Events fired by a Quorum in response to client tracking.
IQuorumProposals Interface for tracking proposals in the Quorum.
IQuorumProposalsEvents Events fired by a Quorum in response to proposal tracking.
ISequencedClient
ISequencedDocumentAugmentedMessage
ISequencedDocumentMessage Sequenced message for a distributed document
ISequencedDocumentSystemMessage
IServerError General errors returned from the server. May want to add error code or something similar in the future.
ISignalClient
ISignalMessage
ISnapshotTree
ISnapshotTreeEx
ISummaryAck Contents of summary ack expected from the server.
ISummaryAttachment
ISummaryAuthor
ISummaryBlob
ISummaryCommitter
ISummaryConfiguration
ISummaryContent
ISummaryHandle
ISummaryNack Contents of summary nack expected from the server.
ISummaryProposal Data about the original proposed summary op.
ISummaryTokenClaims
ISummaryTree
ITokenClaims
ITokenProvider
ITokenService The ITokenService abstracts the discovery of claims contained within a token
ITrace Messages to track latency trace
ITree
IUploadedSummaryDetails
IUser Base user definition. It is valid to extend this interface when adding new details to the user object.
IVersion Represents a version of the snapshot of a data store

Type Aliases

List of type aliases contained in this package or namespace
Type Alias Description
ConnectionMode
IApprovedProposal Adds the sequence number at which the message was approved to an ISequencedProposal
ICommittedProposal Adds the sequence number at which the message was committed to an IApprovedProposal
IQuorumEvents All events fired by an IQuorum, both client tracking and proposal tracking.
ISequencedProposal Similar to IProposal except includes the sequence number when it was made in addition to the fields on IProposal
ITreeEntry A tree entry wraps a path with a type of node
SummaryObject
SummaryTree
SummaryTypeNoHandle

Enumerations

FileMode enum

Signature:

export declare enum FileMode 

Enumeration Members

List of members in use in this enum
Member Value Description
Commit "160000"
Directory "040000"
Executable "100755"
File "100644"
Symlink "120000"

MessageType enum

Signature:

export declare enum MessageType 

Enumeration Members

List of members in use in this enum
Member Value Description
ClientJoin "join"
ClientLeave "leave"
Control "control"
NoClient "noClient"
NoOp "noop"
Operation "op"
Propose "propose"
Reject "reject"
RemoteHelp "remoteHelp"
RoundTrip "tripComplete"
Save "saveOp"
Summarize "summarize"
SummaryAck "summaryAck"
SummaryNack "summaryNack"

NackErrorType enum

Type of the Nack. InvalidScopeError: Client’s token is not valid for the intended op. ThrottlingError: Retryable after retryAfter number. BadRequestError: Clients op is invalid and should retry immediately with a valid op. LimitExceededError: Service is having issues. Client should not retry.

Signature:

export declare enum NackErrorType 

Enumeration Members

List of members in use in this enum
Member Value Description
BadRequestError "BadRequestError"
InvalidScopeError "InvalidScopeError"
LimitExceededError "LimitExceededError"
ThrottlingError "ThrottlingError"

ScopeType enum

Signature:

export declare enum ScopeType 

Enumeration Members

List of members in use in this enum
Member Value Description
DocRead "doc:read"
DocWrite "doc:write"
SummaryWrite "summary:write"

SummaryType enum

Signature:

export declare const enum SummaryType 

Enumeration Members

List of members in use in this enum
Member Value Description
Attachment 4
Blob 2
Handle 3
Tree 1

TreeEntry enum

Type of entries that can be stored in a tree

Signature:

export declare enum TreeEntry 

Enumeration Members

List of members in use in this enum
Member Value Description
Attachment "Attachment"
Blob "Blob"
Commit "Commit"
Tree "Tree"

Type Aliases

ConnectionMode

Signature:

export declare type ConnectionMode = "write" | "read";

IApprovedProposal

Adds the sequence number at which the message was approved to an ISequencedProposal

Signature:

export declare type IApprovedProposal = {
    approvalSequenceNumber: number;
} & ISequencedProposal;

ICommittedProposal

Adds the sequence number at which the message was committed to an IApprovedProposal

Signature:

export declare type ICommittedProposal = {
    commitSequenceNumber: number;
} & IApprovedProposal;

IQuorumEvents

All events fired by an IQuorum, both client tracking and proposal tracking.

Signature:

export declare type IQuorumEvents = IQuorumClientsEvents & IQuorumProposalsEvents;

ISequencedProposal

Similar to IProposal except includes the sequence number when it was made in addition to the fields on IProposal

Signature:

export declare type ISequencedProposal = {
    sequenceNumber: number;
} & IProposal;

ITreeEntry

A tree entry wraps a path with a type of node

Signature:

export declare type ITreeEntry = {
    path: string;
    mode: FileMode;
} & ({
    type: TreeEntry.Blob;
    value: IBlob;
} | {
    type: TreeEntry.Commit;
    value: string;
} | {
    type: TreeEntry.Tree;
    value: ITree;
} | {
    type: TreeEntry.Attachment;
    value: IAttachment;
});

SummaryObject

Signature:

export declare type SummaryObject = ISummaryTree | ISummaryBlob | ISummaryHandle | ISummaryAttachment;

SummaryTree

Signature:

export declare type SummaryTree = ISummaryTree | ISummaryHandle;

SummaryTypeNoHandle

Signature:

export declare type SummaryTypeNoHandle = SummaryType.Tree | SummaryType.Blob | SummaryType.Attachment;