syntax = "proto3";

// Stored encrypted on the server in the members columns.
message EncryptedGroupState {
    repeated int64 memberIds = 1; 
    repeated int64 adminIds = 2; 
    string groupName = 3;
    optional int64 deleteMessagesAfterMilliseconds = 4;
    bytes padding = 5;
}

message EncryptedAppendedGroupState {
    enum Type {
        LEFT_GROUP = 0;
    }
    Type type = 1;
}

message EncryptedGroupStateEnvelop {
    bytes nonce = 1;
    bytes encryptedGroupState = 2;
    bytes mac = 3;
}