Group class

A community group, as a caller who may see it sees it. Members a caller may not see are absent: memberCount only to those who may see the group's members, managers and credentialAuthorityValidUntil only to its managers.

Constructors

Group({required GroupId groupId, required String groupDid, required GroupName name, GroupDescription? description, required GroupKind kind, DynamicRule? rule, JoinPolicy? joinPolicy, required GroupAudience visibility, required GroupAudience showMembers, required bool issuesCredentials, required bool carriesAuthority, int? memberCount, List<String>? managers, String? credentialAuthorityValidUntil, required String createdAt, EntryId? createdBy, String? updatedAt, Ext? ext})
const
Group.fromJson(Map<String, dynamic> json)
Read this payload from a decoded JSON object.
factory

Properties

carriesAuthority → bool
true while the group has a grants or role binding. Such a group is static and closed for as long as it does.
final
createdAt → String
final
createdBy → String?
The creating administrator's directory entry, where they have one.
final
credentialAuthorityValidUntil → String?
When the community's authorization credential to the group expires. The community renews it well before.
final
description → String?
final
ext → Ext?
Ecosystem-defined extension members per SPEC.md §4.5.1. An extension member MUST NOT carry authority.
final
groupDid → String
The group's own DID, minted by the community's VTA for this group alone. It issues the group's membership credentials. Its DID document carries no name or description.
final
groupId → String
final
hashCode → int
The hash code for this object.
no setterinherited
issuesCredentials → bool
Whether the group's DID issues its members a membership credential. Default true.
final
joinPolicy → JoinPolicy?
Present exactly when kind is static.
final
kind → GroupKind
final
managers → List<String>?
Entries holding vtc.groups.manage qualified to this group, read from the access-control list. Informational: managers are appointed by an access-control grant (vtc/groups/managers/add), never by this record.
final
memberCount → int?
Active members. Only to callers who may see the member list.
final
name → String
final
rule → DynamicRule?
Present exactly when kind is dynamic.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
showMembers → GroupAudience
Who may see the group's member list. Separate from visibility: a group everyone sees may show its members only to administrators. Never wider than visibility.
final
updatedAt → String?
final
visibility → GroupAudience
Who may see that the group exists, and its name and description.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
Serialize to a JSON-encodable map, omitting absent members.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited