Module PocketMeshPeer
module Peers: { ... };
Represents a list of peers (friends).
module Crdt: Automerge.CommonAPI with type Crdt.actorId = Peer.Id.t;
Replicated data type that represents application-specific content for a group of peers.
module InitConfig: { ... };
Initial configuration of the library that is passed into the
init
function.
module PeersConnections: { ... };
Manages P2P connections and their state.
module PeersStatuses: { ... };
Stores online statuses of all friends.
module PeerInGroup: { ... };
Record describing membership of a peer in a group. Currently only stores his permissions.
module PeersGroup: { ... };
Module that represents one group of peers with its replicated content.
module IdGenerator: { ... };
Generates various globally unique identifiers.
module PeersGroups: { ... };
Represents a list of all local groups.
module ThisPeer: { ... };
All info about the local peer.
module SignalChannel: { ... };
All info about the signal channel.
module Msg: { ... };
Library message type and constructors for the public messages. Messages are meant to be passed to the
update
function.
module DbState: { ... };
Represents the part of library state that is persisted in the local database.
module RuntimeState: { ... };
Represents runtime state of the library that is lost after closing the app.
module State: { ... };
Represents the whole state of the library.
let init: InitConfig.t => (State.t, BlackTea.Cmd.t(Msg.t));
Initializes state of the library.