# Functions

NewChangeSetBuilder creates a new ChangeSetBuilder, which is empty by default.
NewSelector creates a new Selector from a state string and version.
NoSelector returns an empty Selector.
ToStorableItems converts a list of FDv2 events to a list of collections suitable for insertion into a data store.

# Constants

ChangeTypeDelete represents an object being deleted.
ChangeTypePut represents an object being upserted.
EventDeleteObject specifies that an object should be removed from the data set.
EventError specifies that an error occurred while serving the connection.
EventGoodbye specifies that the server is about to close the connection.
EventHeartbeat keeps the connection alive.
EventPayloadTransferred specifies that that all data required to bring the existing data set to a new version has been transferred.
EventPutObject specifies that an object should be added to the data set with upsert semantics.
EventServerIntent specifies the server's intent.
FlagKind is a flag.
IntentNone means the server intends to send no data (payload is up to date).
IntentTransferChanges means the server intends to send only the necessary changes to bring an existing data set up-to-date.
IntentTransferFull means the server intends to send a full data set.
SegmentKind is a segment.

# Structs

Change represents a change to a piece of data, such as an update or deletion.
ChangeSet represents a list of changes to be applied.
ChangeSetBuilder is a helper for constructing a ChangeSet.
DeleteObject specifies the deletion of a particular object.
Error represents an error event.
Goodbye represents a goodbye event.
Payload represents a payload delivered in a streaming response.
PollingPayload represents a payload that is delivered in a polling response.
PutObject specifies the addition of a particular object with upsert semantics.
RawEvent is a partially deserialized event that allows the the event name to be extracted before the rest of the event is deserialized.
Selector represents a particular snapshot of data.
ServerIntent represents the server's intent.

# Interfaces

Event represents an event that can be sent by the server.

# Type aliases

ChangeType specifies if an object is being upserted or deleted.
EventName is the name of the event.
IntentCode represents the various intents that can be sent by the server.
ObjectKind represents the kind of object.