// // Generated code. Do not modify. // source: veilidchat.proto // // @dart = 2.12 // ignore_for_file: annotate_overrides, camel_case_types, comment_references // ignore_for_file: constant_identifier_names, library_prefixes // ignore_for_file: non_constant_identifier_names, prefer_final_fields // ignore_for_file: unnecessary_import, unnecessary_this, unused_import import 'dart:core' as $core; import 'package:fixnum/fixnum.dart' as $fixnum; import 'package:protobuf/protobuf.dart' as $pb; import 'package:veilid_support/proto/dht.pb.dart' as $1; import 'package:veilid_support/proto/veilid.pb.dart' as $0; import 'veilidchat.pbenum.dart'; export 'veilidchat.pbenum.dart'; /// Reference to data on the DHT class DHTDataReference extends $pb.GeneratedMessage { factory DHTDataReference({ $0.TypedKey? dhtData, $0.TypedKey? hash, }) { final $result = create(); if (dhtData != null) { $result.dhtData = dhtData; } if (hash != null) { $result.hash = hash; } return $result; } DHTDataReference._() : super(); factory DHTDataReference.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory DHTDataReference.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DHTDataReference', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM<$0.TypedKey>(1, _omitFieldNames ? '' : 'dhtData', subBuilder: $0.TypedKey.create) ..aOM<$0.TypedKey>(2, _omitFieldNames ? '' : 'hash', subBuilder: $0.TypedKey.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') DHTDataReference clone() => DHTDataReference()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') DHTDataReference copyWith(void Function(DHTDataReference) updates) => super.copyWith((message) => updates(message as DHTDataReference)) as DHTDataReference; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static DHTDataReference create() => DHTDataReference._(); DHTDataReference createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static DHTDataReference getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static DHTDataReference? _defaultInstance; @$pb.TagNumber(1) $0.TypedKey get dhtData => $_getN(0); @$pb.TagNumber(1) set dhtData($0.TypedKey v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasDhtData() => $_has(0); @$pb.TagNumber(1) void clearDhtData() => clearField(1); @$pb.TagNumber(1) $0.TypedKey ensureDhtData() => $_ensure(0); @$pb.TagNumber(2) $0.TypedKey get hash => $_getN(1); @$pb.TagNumber(2) set hash($0.TypedKey v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasHash() => $_has(1); @$pb.TagNumber(2) void clearHash() => clearField(2); @$pb.TagNumber(2) $0.TypedKey ensureHash() => $_ensure(1); } /// Reference to data on the BlockStore class BlockStoreDataReference extends $pb.GeneratedMessage { factory BlockStoreDataReference({ $0.TypedKey? block, }) { final $result = create(); if (block != null) { $result.block = block; } return $result; } BlockStoreDataReference._() : super(); factory BlockStoreDataReference.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory BlockStoreDataReference.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'BlockStoreDataReference', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM<$0.TypedKey>(1, _omitFieldNames ? '' : 'block', subBuilder: $0.TypedKey.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') BlockStoreDataReference clone() => BlockStoreDataReference()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') BlockStoreDataReference copyWith(void Function(BlockStoreDataReference) updates) => super.copyWith((message) => updates(message as BlockStoreDataReference)) as BlockStoreDataReference; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockStoreDataReference create() => BlockStoreDataReference._(); BlockStoreDataReference createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static BlockStoreDataReference getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static BlockStoreDataReference? _defaultInstance; @$pb.TagNumber(1) $0.TypedKey get block => $_getN(0); @$pb.TagNumber(1) set block($0.TypedKey v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasBlock() => $_has(0); @$pb.TagNumber(1) void clearBlock() => clearField(1); @$pb.TagNumber(1) $0.TypedKey ensureBlock() => $_ensure(0); } enum DataReference_Kind { dhtData, blockStoreData, notSet } /// DataReference /// Pointer to data somewhere in Veilid /// Abstraction over DHTData and BlockStore class DataReference extends $pb.GeneratedMessage { factory DataReference({ DHTDataReference? dhtData, BlockStoreDataReference? blockStoreData, }) { final $result = create(); if (dhtData != null) { $result.dhtData = dhtData; } if (blockStoreData != null) { $result.blockStoreData = blockStoreData; } return $result; } DataReference._() : super(); factory DataReference.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory DataReference.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static const $core.Map<$core.int, DataReference_Kind> _DataReference_KindByTag = { 1 : DataReference_Kind.dhtData, 2 : DataReference_Kind.blockStoreData, 0 : DataReference_Kind.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DataReference', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..oo(0, [1, 2]) ..aOM(1, _omitFieldNames ? '' : 'dhtData', subBuilder: DHTDataReference.create) ..aOM(2, _omitFieldNames ? '' : 'blockStoreData', subBuilder: BlockStoreDataReference.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') DataReference clone() => DataReference()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') DataReference copyWith(void Function(DataReference) updates) => super.copyWith((message) => updates(message as DataReference)) as DataReference; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static DataReference create() => DataReference._(); DataReference createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static DataReference getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static DataReference? _defaultInstance; DataReference_Kind whichKind() => _DataReference_KindByTag[$_whichOneof(0)]!; void clearKind() => clearField($_whichOneof(0)); @$pb.TagNumber(1) DHTDataReference get dhtData => $_getN(0); @$pb.TagNumber(1) set dhtData(DHTDataReference v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasDhtData() => $_has(0); @$pb.TagNumber(1) void clearDhtData() => clearField(1); @$pb.TagNumber(1) DHTDataReference ensureDhtData() => $_ensure(0); @$pb.TagNumber(2) BlockStoreDataReference get blockStoreData => $_getN(1); @$pb.TagNumber(2) set blockStoreData(BlockStoreDataReference v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasBlockStoreData() => $_has(1); @$pb.TagNumber(2) void clearBlockStoreData() => clearField(2); @$pb.TagNumber(2) BlockStoreDataReference ensureBlockStoreData() => $_ensure(1); } enum Attachment_Kind { media, notSet } /// A single attachment class Attachment extends $pb.GeneratedMessage { factory Attachment({ AttachmentMedia? media, $0.Signature? signature, }) { final $result = create(); if (media != null) { $result.media = media; } if (signature != null) { $result.signature = signature; } return $result; } Attachment._() : super(); factory Attachment.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Attachment.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static const $core.Map<$core.int, Attachment_Kind> _Attachment_KindByTag = { 1 : Attachment_Kind.media, 0 : Attachment_Kind.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Attachment', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..oo(0, [1]) ..aOM(1, _omitFieldNames ? '' : 'media', subBuilder: AttachmentMedia.create) ..aOM<$0.Signature>(2, _omitFieldNames ? '' : 'signature', subBuilder: $0.Signature.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Attachment clone() => Attachment()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Attachment copyWith(void Function(Attachment) updates) => super.copyWith((message) => updates(message as Attachment)) as Attachment; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Attachment create() => Attachment._(); Attachment createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Attachment getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Attachment? _defaultInstance; Attachment_Kind whichKind() => _Attachment_KindByTag[$_whichOneof(0)]!; void clearKind() => clearField($_whichOneof(0)); @$pb.TagNumber(1) AttachmentMedia get media => $_getN(0); @$pb.TagNumber(1) set media(AttachmentMedia v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasMedia() => $_has(0); @$pb.TagNumber(1) void clearMedia() => clearField(1); @$pb.TagNumber(1) AttachmentMedia ensureMedia() => $_ensure(0); /// Author signature over all attachment fields and content fields and bytes @$pb.TagNumber(2) $0.Signature get signature => $_getN(1); @$pb.TagNumber(2) set signature($0.Signature v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasSignature() => $_has(1); @$pb.TagNumber(2) void clearSignature() => clearField(2); @$pb.TagNumber(2) $0.Signature ensureSignature() => $_ensure(1); } /// A file, audio, image, or video attachment class AttachmentMedia extends $pb.GeneratedMessage { factory AttachmentMedia({ $core.String? mime, $core.String? name, DataReference? content, }) { final $result = create(); if (mime != null) { $result.mime = mime; } if (name != null) { $result.name = name; } if (content != null) { $result.content = content; } return $result; } AttachmentMedia._() : super(); factory AttachmentMedia.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory AttachmentMedia.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'AttachmentMedia', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOS(1, _omitFieldNames ? '' : 'mime') ..aOS(2, _omitFieldNames ? '' : 'name') ..aOM(3, _omitFieldNames ? '' : 'content', subBuilder: DataReference.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') AttachmentMedia clone() => AttachmentMedia()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') AttachmentMedia copyWith(void Function(AttachmentMedia) updates) => super.copyWith((message) => updates(message as AttachmentMedia)) as AttachmentMedia; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static AttachmentMedia create() => AttachmentMedia._(); AttachmentMedia createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static AttachmentMedia getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static AttachmentMedia? _defaultInstance; /// MIME type of the data @$pb.TagNumber(1) $core.String get mime => $_getSZ(0); @$pb.TagNumber(1) set mime($core.String v) { $_setString(0, v); } @$pb.TagNumber(1) $core.bool hasMime() => $_has(0); @$pb.TagNumber(1) void clearMime() => clearField(1); /// Title or filename @$pb.TagNumber(2) $core.String get name => $_getSZ(1); @$pb.TagNumber(2) set name($core.String v) { $_setString(1, v); } @$pb.TagNumber(2) $core.bool hasName() => $_has(1); @$pb.TagNumber(2) void clearName() => clearField(2); /// Pointer to the data content @$pb.TagNumber(3) DataReference get content => $_getN(2); @$pb.TagNumber(3) set content(DataReference v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasContent() => $_has(2); @$pb.TagNumber(3) void clearContent() => clearField(3); @$pb.TagNumber(3) DataReference ensureContent() => $_ensure(2); } /// Permissions of a chat class Permissions extends $pb.GeneratedMessage { factory Permissions({ Scope? canAddMembers, Scope? canEditInfo, $core.bool? moderated, }) { final $result = create(); if (canAddMembers != null) { $result.canAddMembers = canAddMembers; } if (canEditInfo != null) { $result.canEditInfo = canEditInfo; } if (moderated != null) { $result.moderated = moderated; } return $result; } Permissions._() : super(); factory Permissions.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Permissions.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Permissions', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..e(1, _omitFieldNames ? '' : 'canAddMembers', $pb.PbFieldType.OE, defaultOrMaker: Scope.WATCHERS, valueOf: Scope.valueOf, enumValues: Scope.values) ..e(2, _omitFieldNames ? '' : 'canEditInfo', $pb.PbFieldType.OE, defaultOrMaker: Scope.WATCHERS, valueOf: Scope.valueOf, enumValues: Scope.values) ..aOB(3, _omitFieldNames ? '' : 'moderated') ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Permissions clone() => Permissions()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Permissions copyWith(void Function(Permissions) updates) => super.copyWith((message) => updates(message as Permissions)) as Permissions; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Permissions create() => Permissions._(); Permissions createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Permissions getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Permissions? _defaultInstance; /// Parties in this scope or higher can add members to their own group or lower @$pb.TagNumber(1) Scope get canAddMembers => $_getN(0); @$pb.TagNumber(1) set canAddMembers(Scope v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasCanAddMembers() => $_has(0); @$pb.TagNumber(1) void clearCanAddMembers() => clearField(1); /// Parties in this scope or higher can change the 'info' of a group @$pb.TagNumber(2) Scope get canEditInfo => $_getN(1); @$pb.TagNumber(2) set canEditInfo(Scope v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasCanEditInfo() => $_has(1); @$pb.TagNumber(2) void clearCanEditInfo() => clearField(2); /// If moderation is enabled or not. @$pb.TagNumber(3) $core.bool get moderated => $_getBF(2); @$pb.TagNumber(3) set moderated($core.bool v) { $_setBool(2, v); } @$pb.TagNumber(3) $core.bool hasModerated() => $_has(2); @$pb.TagNumber(3) void clearModerated() => clearField(3); } /// The membership of a chat class Membership extends $pb.GeneratedMessage { factory Membership({ $core.Iterable<$0.TypedKey>? watchers, $core.Iterable<$0.TypedKey>? moderated, $core.Iterable<$0.TypedKey>? talkers, $core.Iterable<$0.TypedKey>? moderators, $core.Iterable<$0.TypedKey>? admins, }) { final $result = create(); if (watchers != null) { $result.watchers.addAll(watchers); } if (moderated != null) { $result.moderated.addAll(moderated); } if (talkers != null) { $result.talkers.addAll(talkers); } if (moderators != null) { $result.moderators.addAll(moderators); } if (admins != null) { $result.admins.addAll(admins); } return $result; } Membership._() : super(); factory Membership.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Membership.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Membership', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..pc<$0.TypedKey>(1, _omitFieldNames ? '' : 'watchers', $pb.PbFieldType.PM, subBuilder: $0.TypedKey.create) ..pc<$0.TypedKey>(2, _omitFieldNames ? '' : 'moderated', $pb.PbFieldType.PM, subBuilder: $0.TypedKey.create) ..pc<$0.TypedKey>(3, _omitFieldNames ? '' : 'talkers', $pb.PbFieldType.PM, subBuilder: $0.TypedKey.create) ..pc<$0.TypedKey>(4, _omitFieldNames ? '' : 'moderators', $pb.PbFieldType.PM, subBuilder: $0.TypedKey.create) ..pc<$0.TypedKey>(5, _omitFieldNames ? '' : 'admins', $pb.PbFieldType.PM, subBuilder: $0.TypedKey.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Membership clone() => Membership()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Membership copyWith(void Function(Membership) updates) => super.copyWith((message) => updates(message as Membership)) as Membership; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Membership create() => Membership._(); Membership createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Membership getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Membership? _defaultInstance; /// Conversation keys for parties in the 'watchers' group @$pb.TagNumber(1) $core.List<$0.TypedKey> get watchers => $_getList(0); /// Conversation keys for parties in the 'moderated' group @$pb.TagNumber(2) $core.List<$0.TypedKey> get moderated => $_getList(1); /// Conversation keys for parties in the 'talkers' group @$pb.TagNumber(3) $core.List<$0.TypedKey> get talkers => $_getList(2); /// Conversation keys for parties in the 'moderators' group @$pb.TagNumber(4) $core.List<$0.TypedKey> get moderators => $_getList(3); /// Conversation keys for parties in the 'admins' group @$pb.TagNumber(5) $core.List<$0.TypedKey> get admins => $_getList(4); } /// The chat settings class ChatSettings extends $pb.GeneratedMessage { factory ChatSettings({ $core.String? title, $core.String? description, DataReference? icon, $fixnum.Int64? defaultExpiration, }) { final $result = create(); if (title != null) { $result.title = title; } if (description != null) { $result.description = description; } if (icon != null) { $result.icon = icon; } if (defaultExpiration != null) { $result.defaultExpiration = defaultExpiration; } return $result; } ChatSettings._() : super(); factory ChatSettings.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ChatSettings.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ChatSettings', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOS(1, _omitFieldNames ? '' : 'title') ..aOS(2, _omitFieldNames ? '' : 'description') ..aOM(3, _omitFieldNames ? '' : 'icon', subBuilder: DataReference.create) ..a<$fixnum.Int64>(4, _omitFieldNames ? '' : 'defaultExpiration', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ChatSettings clone() => ChatSettings()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ChatSettings copyWith(void Function(ChatSettings) updates) => super.copyWith((message) => updates(message as ChatSettings)) as ChatSettings; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ChatSettings create() => ChatSettings._(); ChatSettings createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ChatSettings getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ChatSettings? _defaultInstance; /// Title for the chat @$pb.TagNumber(1) $core.String get title => $_getSZ(0); @$pb.TagNumber(1) set title($core.String v) { $_setString(0, v); } @$pb.TagNumber(1) $core.bool hasTitle() => $_has(0); @$pb.TagNumber(1) void clearTitle() => clearField(1); /// Description for the chat @$pb.TagNumber(2) $core.String get description => $_getSZ(1); @$pb.TagNumber(2) set description($core.String v) { $_setString(1, v); } @$pb.TagNumber(2) $core.bool hasDescription() => $_has(1); @$pb.TagNumber(2) void clearDescription() => clearField(2); /// Icon for the chat @$pb.TagNumber(3) DataReference get icon => $_getN(2); @$pb.TagNumber(3) set icon(DataReference v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasIcon() => $_has(2); @$pb.TagNumber(3) void clearIcon() => clearField(3); @$pb.TagNumber(3) DataReference ensureIcon() => $_ensure(2); /// Default message expiration duration (in us) @$pb.TagNumber(4) $fixnum.Int64 get defaultExpiration => $_getI64(3); @$pb.TagNumber(4) set defaultExpiration($fixnum.Int64 v) { $_setInt64(3, v); } @$pb.TagNumber(4) $core.bool hasDefaultExpiration() => $_has(3); @$pb.TagNumber(4) void clearDefaultExpiration() => clearField(4); } /// A text message class Message_Text extends $pb.GeneratedMessage { factory Message_Text({ $core.String? text, $core.String? topic, $core.List<$core.int>? replyId, $fixnum.Int64? expiration, $core.int? viewLimit, $core.Iterable? attachments, }) { final $result = create(); if (text != null) { $result.text = text; } if (topic != null) { $result.topic = topic; } if (replyId != null) { $result.replyId = replyId; } if (expiration != null) { $result.expiration = expiration; } if (viewLimit != null) { $result.viewLimit = viewLimit; } if (attachments != null) { $result.attachments.addAll(attachments); } return $result; } Message_Text._() : super(); factory Message_Text.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_Text.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.Text', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOS(1, _omitFieldNames ? '' : 'text') ..aOS(2, _omitFieldNames ? '' : 'topic') ..a<$core.List<$core.int>>(3, _omitFieldNames ? '' : 'replyId', $pb.PbFieldType.OY) ..a<$fixnum.Int64>(4, _omitFieldNames ? '' : 'expiration', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..a<$core.int>(5, _omitFieldNames ? '' : 'viewLimit', $pb.PbFieldType.OU3) ..pc(6, _omitFieldNames ? '' : 'attachments', $pb.PbFieldType.PM, subBuilder: Attachment.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_Text clone() => Message_Text()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_Text copyWith(void Function(Message_Text) updates) => super.copyWith((message) => updates(message as Message_Text)) as Message_Text; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_Text create() => Message_Text._(); Message_Text createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_Text getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_Text? _defaultInstance; /// Text of the message @$pb.TagNumber(1) $core.String get text => $_getSZ(0); @$pb.TagNumber(1) set text($core.String v) { $_setString(0, v); } @$pb.TagNumber(1) $core.bool hasText() => $_has(0); @$pb.TagNumber(1) void clearText() => clearField(1); /// Topic of the message / Content warning @$pb.TagNumber(2) $core.String get topic => $_getSZ(1); @$pb.TagNumber(2) set topic($core.String v) { $_setString(1, v); } @$pb.TagNumber(2) $core.bool hasTopic() => $_has(1); @$pb.TagNumber(2) void clearTopic() => clearField(2); /// Message id replied to (author id + message id) @$pb.TagNumber(3) $core.List<$core.int> get replyId => $_getN(2); @$pb.TagNumber(3) set replyId($core.List<$core.int> v) { $_setBytes(2, v); } @$pb.TagNumber(3) $core.bool hasReplyId() => $_has(2); @$pb.TagNumber(3) void clearReplyId() => clearField(3); /// Message expiration timestamp @$pb.TagNumber(4) $fixnum.Int64 get expiration => $_getI64(3); @$pb.TagNumber(4) set expiration($fixnum.Int64 v) { $_setInt64(3, v); } @$pb.TagNumber(4) $core.bool hasExpiration() => $_has(3); @$pb.TagNumber(4) void clearExpiration() => clearField(4); /// Message view limit before deletion @$pb.TagNumber(5) $core.int get viewLimit => $_getIZ(4); @$pb.TagNumber(5) set viewLimit($core.int v) { $_setUnsignedInt32(4, v); } @$pb.TagNumber(5) $core.bool hasViewLimit() => $_has(4); @$pb.TagNumber(5) void clearViewLimit() => clearField(5); /// Attachments on the message @$pb.TagNumber(6) $core.List get attachments => $_getList(5); } /// A secret message class Message_Secret extends $pb.GeneratedMessage { factory Message_Secret({ $core.List<$core.int>? ciphertext, $fixnum.Int64? expiration, }) { final $result = create(); if (ciphertext != null) { $result.ciphertext = ciphertext; } if (expiration != null) { $result.expiration = expiration; } return $result; } Message_Secret._() : super(); factory Message_Secret.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_Secret.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.Secret', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..a<$core.List<$core.int>>(1, _omitFieldNames ? '' : 'ciphertext', $pb.PbFieldType.OY) ..a<$fixnum.Int64>(2, _omitFieldNames ? '' : 'expiration', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_Secret clone() => Message_Secret()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_Secret copyWith(void Function(Message_Secret) updates) => super.copyWith((message) => updates(message as Message_Secret)) as Message_Secret; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_Secret create() => Message_Secret._(); Message_Secret createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_Secret getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_Secret? _defaultInstance; /// Text message protobuf encrypted by a key @$pb.TagNumber(1) $core.List<$core.int> get ciphertext => $_getN(0); @$pb.TagNumber(1) set ciphertext($core.List<$core.int> v) { $_setBytes(0, v); } @$pb.TagNumber(1) $core.bool hasCiphertext() => $_has(0); @$pb.TagNumber(1) void clearCiphertext() => clearField(1); /// Secret expiration timestamp /// This is the time after which an un-revealed secret will get deleted @$pb.TagNumber(2) $fixnum.Int64 get expiration => $_getI64(1); @$pb.TagNumber(2) set expiration($fixnum.Int64 v) { $_setInt64(1, v); } @$pb.TagNumber(2) $core.bool hasExpiration() => $_has(1); @$pb.TagNumber(2) void clearExpiration() => clearField(2); } /// A 'delete' control message /// Deletes a set of messages by their ids class Message_ControlDelete extends $pb.GeneratedMessage { factory Message_ControlDelete({ $core.Iterable<$core.List<$core.int>>? ids, }) { final $result = create(); if (ids != null) { $result.ids.addAll(ids); } return $result; } Message_ControlDelete._() : super(); factory Message_ControlDelete.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_ControlDelete.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.ControlDelete', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..p<$core.List<$core.int>>(1, _omitFieldNames ? '' : 'ids', $pb.PbFieldType.PY) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_ControlDelete clone() => Message_ControlDelete()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_ControlDelete copyWith(void Function(Message_ControlDelete) updates) => super.copyWith((message) => updates(message as Message_ControlDelete)) as Message_ControlDelete; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_ControlDelete create() => Message_ControlDelete._(); Message_ControlDelete createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_ControlDelete getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_ControlDelete? _defaultInstance; @$pb.TagNumber(1) $core.List<$core.List<$core.int>> get ids => $_getList(0); } /// An 'erase' control message /// Deletes a set of messages from before some timestamp class Message_ControlErase extends $pb.GeneratedMessage { factory Message_ControlErase({ $fixnum.Int64? timestamp, }) { final $result = create(); if (timestamp != null) { $result.timestamp = timestamp; } return $result; } Message_ControlErase._() : super(); factory Message_ControlErase.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_ControlErase.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.ControlErase', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..a<$fixnum.Int64>(1, _omitFieldNames ? '' : 'timestamp', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_ControlErase clone() => Message_ControlErase()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_ControlErase copyWith(void Function(Message_ControlErase) updates) => super.copyWith((message) => updates(message as Message_ControlErase)) as Message_ControlErase; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_ControlErase create() => Message_ControlErase._(); Message_ControlErase createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_ControlErase getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_ControlErase? _defaultInstance; /// The latest timestamp to delete messages before /// If this is zero then all messages are cleared @$pb.TagNumber(1) $fixnum.Int64 get timestamp => $_getI64(0); @$pb.TagNumber(1) set timestamp($fixnum.Int64 v) { $_setInt64(0, v); } @$pb.TagNumber(1) $core.bool hasTimestamp() => $_has(0); @$pb.TagNumber(1) void clearTimestamp() => clearField(1); } /// A 'change settings' control message class Message_ControlSettings extends $pb.GeneratedMessage { factory Message_ControlSettings({ ChatSettings? settings, }) { final $result = create(); if (settings != null) { $result.settings = settings; } return $result; } Message_ControlSettings._() : super(); factory Message_ControlSettings.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_ControlSettings.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.ControlSettings', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'settings', subBuilder: ChatSettings.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_ControlSettings clone() => Message_ControlSettings()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_ControlSettings copyWith(void Function(Message_ControlSettings) updates) => super.copyWith((message) => updates(message as Message_ControlSettings)) as Message_ControlSettings; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_ControlSettings create() => Message_ControlSettings._(); Message_ControlSettings createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_ControlSettings getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_ControlSettings? _defaultInstance; @$pb.TagNumber(1) ChatSettings get settings => $_getN(0); @$pb.TagNumber(1) set settings(ChatSettings v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasSettings() => $_has(0); @$pb.TagNumber(1) void clearSettings() => clearField(1); @$pb.TagNumber(1) ChatSettings ensureSettings() => $_ensure(0); } /// A 'change permissions' control message /// Changes the permissions of a chat class Message_ControlPermissions extends $pb.GeneratedMessage { factory Message_ControlPermissions({ Permissions? permissions, }) { final $result = create(); if (permissions != null) { $result.permissions = permissions; } return $result; } Message_ControlPermissions._() : super(); factory Message_ControlPermissions.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_ControlPermissions.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.ControlPermissions', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'permissions', subBuilder: Permissions.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_ControlPermissions clone() => Message_ControlPermissions()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_ControlPermissions copyWith(void Function(Message_ControlPermissions) updates) => super.copyWith((message) => updates(message as Message_ControlPermissions)) as Message_ControlPermissions; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_ControlPermissions create() => Message_ControlPermissions._(); Message_ControlPermissions createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_ControlPermissions getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_ControlPermissions? _defaultInstance; @$pb.TagNumber(1) Permissions get permissions => $_getN(0); @$pb.TagNumber(1) set permissions(Permissions v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasPermissions() => $_has(0); @$pb.TagNumber(1) void clearPermissions() => clearField(1); @$pb.TagNumber(1) Permissions ensurePermissions() => $_ensure(0); } /// A 'change membership' control message /// Changes the class Message_ControlMembership extends $pb.GeneratedMessage { factory Message_ControlMembership({ Membership? membership, }) { final $result = create(); if (membership != null) { $result.membership = membership; } return $result; } Message_ControlMembership._() : super(); factory Message_ControlMembership.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_ControlMembership.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.ControlMembership', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'membership', subBuilder: Membership.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_ControlMembership clone() => Message_ControlMembership()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_ControlMembership copyWith(void Function(Message_ControlMembership) updates) => super.copyWith((message) => updates(message as Message_ControlMembership)) as Message_ControlMembership; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_ControlMembership create() => Message_ControlMembership._(); Message_ControlMembership createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_ControlMembership getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_ControlMembership? _defaultInstance; @$pb.TagNumber(1) Membership get membership => $_getN(0); @$pb.TagNumber(1) set membership(Membership v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasMembership() => $_has(0); @$pb.TagNumber(1) void clearMembership() => clearField(1); @$pb.TagNumber(1) Membership ensureMembership() => $_ensure(0); } /// A 'moderation' control message /// Accepts or rejects a set of messages class Message_ControlModeration extends $pb.GeneratedMessage { factory Message_ControlModeration({ $core.Iterable<$core.List<$core.int>>? acceptedIds, $core.Iterable<$core.List<$core.int>>? rejectedIds, }) { final $result = create(); if (acceptedIds != null) { $result.acceptedIds.addAll(acceptedIds); } if (rejectedIds != null) { $result.rejectedIds.addAll(rejectedIds); } return $result; } Message_ControlModeration._() : super(); factory Message_ControlModeration.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_ControlModeration.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.ControlModeration', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..p<$core.List<$core.int>>(1, _omitFieldNames ? '' : 'acceptedIds', $pb.PbFieldType.PY) ..p<$core.List<$core.int>>(2, _omitFieldNames ? '' : 'rejectedIds', $pb.PbFieldType.PY) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_ControlModeration clone() => Message_ControlModeration()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_ControlModeration copyWith(void Function(Message_ControlModeration) updates) => super.copyWith((message) => updates(message as Message_ControlModeration)) as Message_ControlModeration; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_ControlModeration create() => Message_ControlModeration._(); Message_ControlModeration createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_ControlModeration getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_ControlModeration? _defaultInstance; @$pb.TagNumber(1) $core.List<$core.List<$core.int>> get acceptedIds => $_getList(0); @$pb.TagNumber(2) $core.List<$core.List<$core.int>> get rejectedIds => $_getList(1); } /// A 'read receipt' control message class Message_ControlReadReceipt extends $pb.GeneratedMessage { factory Message_ControlReadReceipt({ $core.Iterable<$core.List<$core.int>>? readIds, }) { final $result = create(); if (readIds != null) { $result.readIds.addAll(readIds); } return $result; } Message_ControlReadReceipt._() : super(); factory Message_ControlReadReceipt.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message_ControlReadReceipt.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message.ControlReadReceipt', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..p<$core.List<$core.int>>(1, _omitFieldNames ? '' : 'readIds', $pb.PbFieldType.PY) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message_ControlReadReceipt clone() => Message_ControlReadReceipt()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message_ControlReadReceipt copyWith(void Function(Message_ControlReadReceipt) updates) => super.copyWith((message) => updates(message as Message_ControlReadReceipt)) as Message_ControlReadReceipt; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message_ControlReadReceipt create() => Message_ControlReadReceipt._(); Message_ControlReadReceipt createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message_ControlReadReceipt getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message_ControlReadReceipt? _defaultInstance; @$pb.TagNumber(1) $core.List<$core.List<$core.int>> get readIds => $_getList(0); } enum Message_Kind { text, secret, delete, erase, settings, permissions, membership, moderation, readReceipt, notSet } /// A single message as part of a series of messages class Message extends $pb.GeneratedMessage { factory Message({ $core.List<$core.int>? id, $0.TypedKey? author, $fixnum.Int64? timestamp, Message_Text? text, Message_Secret? secret, Message_ControlDelete? delete, Message_ControlErase? erase, Message_ControlSettings? settings, Message_ControlPermissions? permissions, Message_ControlMembership? membership, Message_ControlModeration? moderation, $0.Signature? signature, Message_ControlReadReceipt? readReceipt, }) { final $result = create(); if (id != null) { $result.id = id; } if (author != null) { $result.author = author; } if (timestamp != null) { $result.timestamp = timestamp; } if (text != null) { $result.text = text; } if (secret != null) { $result.secret = secret; } if (delete != null) { $result.delete = delete; } if (erase != null) { $result.erase = erase; } if (settings != null) { $result.settings = settings; } if (permissions != null) { $result.permissions = permissions; } if (membership != null) { $result.membership = membership; } if (moderation != null) { $result.moderation = moderation; } if (signature != null) { $result.signature = signature; } if (readReceipt != null) { $result.readReceipt = readReceipt; } return $result; } Message._() : super(); factory Message.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Message.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static const $core.Map<$core.int, Message_Kind> _Message_KindByTag = { 4 : Message_Kind.text, 5 : Message_Kind.secret, 6 : Message_Kind.delete, 7 : Message_Kind.erase, 8 : Message_Kind.settings, 9 : Message_Kind.permissions, 10 : Message_Kind.membership, 11 : Message_Kind.moderation, 13 : Message_Kind.readReceipt, 0 : Message_Kind.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Message', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..oo(0, [4, 5, 6, 7, 8, 9, 10, 11, 13]) ..a<$core.List<$core.int>>(1, _omitFieldNames ? '' : 'id', $pb.PbFieldType.OY) ..aOM<$0.TypedKey>(2, _omitFieldNames ? '' : 'author', subBuilder: $0.TypedKey.create) ..a<$fixnum.Int64>(3, _omitFieldNames ? '' : 'timestamp', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..aOM(4, _omitFieldNames ? '' : 'text', subBuilder: Message_Text.create) ..aOM(5, _omitFieldNames ? '' : 'secret', subBuilder: Message_Secret.create) ..aOM(6, _omitFieldNames ? '' : 'delete', subBuilder: Message_ControlDelete.create) ..aOM(7, _omitFieldNames ? '' : 'erase', subBuilder: Message_ControlErase.create) ..aOM(8, _omitFieldNames ? '' : 'settings', subBuilder: Message_ControlSettings.create) ..aOM(9, _omitFieldNames ? '' : 'permissions', subBuilder: Message_ControlPermissions.create) ..aOM(10, _omitFieldNames ? '' : 'membership', subBuilder: Message_ControlMembership.create) ..aOM(11, _omitFieldNames ? '' : 'moderation', subBuilder: Message_ControlModeration.create) ..aOM<$0.Signature>(12, _omitFieldNames ? '' : 'signature', subBuilder: $0.Signature.create) ..aOM(13, _omitFieldNames ? '' : 'readReceipt', protoName: 'readReceipt', subBuilder: Message_ControlReadReceipt.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Message clone() => Message()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Message copyWith(void Function(Message) updates) => super.copyWith((message) => updates(message as Message)) as Message; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Message create() => Message._(); Message createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Message getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Message? _defaultInstance; Message_Kind whichKind() => _Message_KindByTag[$_whichOneof(0)]!; void clearKind() => clearField($_whichOneof(0)); /// Unique id for this author stream /// Calculated from the hash of the previous message from this author @$pb.TagNumber(1) $core.List<$core.int> get id => $_getN(0); @$pb.TagNumber(1) set id($core.List<$core.int> v) { $_setBytes(0, v); } @$pb.TagNumber(1) $core.bool hasId() => $_has(0); @$pb.TagNumber(1) void clearId() => clearField(1); /// Author of the message (identity public key) @$pb.TagNumber(2) $0.TypedKey get author => $_getN(1); @$pb.TagNumber(2) set author($0.TypedKey v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasAuthor() => $_has(1); @$pb.TagNumber(2) void clearAuthor() => clearField(2); @$pb.TagNumber(2) $0.TypedKey ensureAuthor() => $_ensure(1); /// Time the message was sent according to sender @$pb.TagNumber(3) $fixnum.Int64 get timestamp => $_getI64(2); @$pb.TagNumber(3) set timestamp($fixnum.Int64 v) { $_setInt64(2, v); } @$pb.TagNumber(3) $core.bool hasTimestamp() => $_has(2); @$pb.TagNumber(3) void clearTimestamp() => clearField(3); @$pb.TagNumber(4) Message_Text get text => $_getN(3); @$pb.TagNumber(4) set text(Message_Text v) { setField(4, v); } @$pb.TagNumber(4) $core.bool hasText() => $_has(3); @$pb.TagNumber(4) void clearText() => clearField(4); @$pb.TagNumber(4) Message_Text ensureText() => $_ensure(3); @$pb.TagNumber(5) Message_Secret get secret => $_getN(4); @$pb.TagNumber(5) set secret(Message_Secret v) { setField(5, v); } @$pb.TagNumber(5) $core.bool hasSecret() => $_has(4); @$pb.TagNumber(5) void clearSecret() => clearField(5); @$pb.TagNumber(5) Message_Secret ensureSecret() => $_ensure(4); @$pb.TagNumber(6) Message_ControlDelete get delete => $_getN(5); @$pb.TagNumber(6) set delete(Message_ControlDelete v) { setField(6, v); } @$pb.TagNumber(6) $core.bool hasDelete() => $_has(5); @$pb.TagNumber(6) void clearDelete() => clearField(6); @$pb.TagNumber(6) Message_ControlDelete ensureDelete() => $_ensure(5); @$pb.TagNumber(7) Message_ControlErase get erase => $_getN(6); @$pb.TagNumber(7) set erase(Message_ControlErase v) { setField(7, v); } @$pb.TagNumber(7) $core.bool hasErase() => $_has(6); @$pb.TagNumber(7) void clearErase() => clearField(7); @$pb.TagNumber(7) Message_ControlErase ensureErase() => $_ensure(6); @$pb.TagNumber(8) Message_ControlSettings get settings => $_getN(7); @$pb.TagNumber(8) set settings(Message_ControlSettings v) { setField(8, v); } @$pb.TagNumber(8) $core.bool hasSettings() => $_has(7); @$pb.TagNumber(8) void clearSettings() => clearField(8); @$pb.TagNumber(8) Message_ControlSettings ensureSettings() => $_ensure(7); @$pb.TagNumber(9) Message_ControlPermissions get permissions => $_getN(8); @$pb.TagNumber(9) set permissions(Message_ControlPermissions v) { setField(9, v); } @$pb.TagNumber(9) $core.bool hasPermissions() => $_has(8); @$pb.TagNumber(9) void clearPermissions() => clearField(9); @$pb.TagNumber(9) Message_ControlPermissions ensurePermissions() => $_ensure(8); @$pb.TagNumber(10) Message_ControlMembership get membership => $_getN(9); @$pb.TagNumber(10) set membership(Message_ControlMembership v) { setField(10, v); } @$pb.TagNumber(10) $core.bool hasMembership() => $_has(9); @$pb.TagNumber(10) void clearMembership() => clearField(10); @$pb.TagNumber(10) Message_ControlMembership ensureMembership() => $_ensure(9); @$pb.TagNumber(11) Message_ControlModeration get moderation => $_getN(10); @$pb.TagNumber(11) set moderation(Message_ControlModeration v) { setField(11, v); } @$pb.TagNumber(11) $core.bool hasModeration() => $_has(10); @$pb.TagNumber(11) void clearModeration() => clearField(11); @$pb.TagNumber(11) Message_ControlModeration ensureModeration() => $_ensure(10); /// Author signature over all of the fields and attachment signatures @$pb.TagNumber(12) $0.Signature get signature => $_getN(11); @$pb.TagNumber(12) set signature($0.Signature v) { setField(12, v); } @$pb.TagNumber(12) $core.bool hasSignature() => $_has(11); @$pb.TagNumber(12) void clearSignature() => clearField(12); @$pb.TagNumber(12) $0.Signature ensureSignature() => $_ensure(11); @$pb.TagNumber(13) Message_ControlReadReceipt get readReceipt => $_getN(12); @$pb.TagNumber(13) set readReceipt(Message_ControlReadReceipt v) { setField(13, v); } @$pb.TagNumber(13) $core.bool hasReadReceipt() => $_has(12); @$pb.TagNumber(13) void clearReadReceipt() => clearField(13); @$pb.TagNumber(13) Message_ControlReadReceipt ensureReadReceipt() => $_ensure(12); } /// Locally stored messages for chats class ReconciledMessage extends $pb.GeneratedMessage { factory ReconciledMessage({ Message? content, $fixnum.Int64? reconciledTime, }) { final $result = create(); if (content != null) { $result.content = content; } if (reconciledTime != null) { $result.reconciledTime = reconciledTime; } return $result; } ReconciledMessage._() : super(); factory ReconciledMessage.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ReconciledMessage.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ReconciledMessage', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'content', subBuilder: Message.create) ..a<$fixnum.Int64>(2, _omitFieldNames ? '' : 'reconciledTime', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ReconciledMessage clone() => ReconciledMessage()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ReconciledMessage copyWith(void Function(ReconciledMessage) updates) => super.copyWith((message) => updates(message as ReconciledMessage)) as ReconciledMessage; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ReconciledMessage create() => ReconciledMessage._(); ReconciledMessage createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ReconciledMessage getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ReconciledMessage? _defaultInstance; /// The message as sent @$pb.TagNumber(1) Message get content => $_getN(0); @$pb.TagNumber(1) set content(Message v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasContent() => $_has(0); @$pb.TagNumber(1) void clearContent() => clearField(1); @$pb.TagNumber(1) Message ensureContent() => $_ensure(0); /// The timestamp the message was reconciled @$pb.TagNumber(2) $fixnum.Int64 get reconciledTime => $_getI64(1); @$pb.TagNumber(2) set reconciledTime($fixnum.Int64 v) { $_setInt64(1, v); } @$pb.TagNumber(2) $core.bool hasReconciledTime() => $_has(1); @$pb.TagNumber(2) void clearReconciledTime() => clearField(2); } /// The means of direct communications that is synchronized between /// two users. Visible and encrypted for the other party. /// Includes communications for: /// * Profile changes /// * Identity changes /// * 1-1 chat messages /// * Group chat messages /// /// DHT Schema: SMPL(0,1,[identityPublicKey]) /// DHT Key (UnicastOutbox): localConversation /// DHT Secret: None /// Encryption: DH(IdentityA, IdentityB) class Conversation extends $pb.GeneratedMessage { factory Conversation({ Profile? profile, $core.String? superIdentityJson, $0.TypedKey? messages, }) { final $result = create(); if (profile != null) { $result.profile = profile; } if (superIdentityJson != null) { $result.superIdentityJson = superIdentityJson; } if (messages != null) { $result.messages = messages; } return $result; } Conversation._() : super(); factory Conversation.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Conversation.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Conversation', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'profile', subBuilder: Profile.create) ..aOS(2, _omitFieldNames ? '' : 'superIdentityJson') ..aOM<$0.TypedKey>(3, _omitFieldNames ? '' : 'messages', subBuilder: $0.TypedKey.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Conversation clone() => Conversation()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Conversation copyWith(void Function(Conversation) updates) => super.copyWith((message) => updates(message as Conversation)) as Conversation; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Conversation create() => Conversation._(); Conversation createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Conversation getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Conversation? _defaultInstance; /// Profile to publish to friend @$pb.TagNumber(1) Profile get profile => $_getN(0); @$pb.TagNumber(1) set profile(Profile v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasProfile() => $_has(0); @$pb.TagNumber(1) void clearProfile() => clearField(1); @$pb.TagNumber(1) Profile ensureProfile() => $_ensure(0); /// SuperIdentity (JSON) to publish to friend or chat room @$pb.TagNumber(2) $core.String get superIdentityJson => $_getSZ(1); @$pb.TagNumber(2) set superIdentityJson($core.String v) { $_setString(1, v); } @$pb.TagNumber(2) $core.bool hasSuperIdentityJson() => $_has(1); @$pb.TagNumber(2) void clearSuperIdentityJson() => clearField(2); /// Messages DHTLog @$pb.TagNumber(3) $0.TypedKey get messages => $_getN(2); @$pb.TagNumber(3) set messages($0.TypedKey v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasMessages() => $_has(2); @$pb.TagNumber(3) void clearMessages() => clearField(3); @$pb.TagNumber(3) $0.TypedKey ensureMessages() => $_ensure(2); } /// A member of chat which may or may not be associated with a contact class ChatMember extends $pb.GeneratedMessage { factory ChatMember({ $0.TypedKey? remoteIdentityPublicKey, $0.TypedKey? remoteConversationRecordKey, }) { final $result = create(); if (remoteIdentityPublicKey != null) { $result.remoteIdentityPublicKey = remoteIdentityPublicKey; } if (remoteConversationRecordKey != null) { $result.remoteConversationRecordKey = remoteConversationRecordKey; } return $result; } ChatMember._() : super(); factory ChatMember.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ChatMember.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ChatMember', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM<$0.TypedKey>(1, _omitFieldNames ? '' : 'remoteIdentityPublicKey', subBuilder: $0.TypedKey.create) ..aOM<$0.TypedKey>(2, _omitFieldNames ? '' : 'remoteConversationRecordKey', subBuilder: $0.TypedKey.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ChatMember clone() => ChatMember()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ChatMember copyWith(void Function(ChatMember) updates) => super.copyWith((message) => updates(message as ChatMember)) as ChatMember; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ChatMember create() => ChatMember._(); ChatMember createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ChatMember getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ChatMember? _defaultInstance; /// The identity public key most recently associated with the chat member @$pb.TagNumber(1) $0.TypedKey get remoteIdentityPublicKey => $_getN(0); @$pb.TagNumber(1) set remoteIdentityPublicKey($0.TypedKey v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasRemoteIdentityPublicKey() => $_has(0); @$pb.TagNumber(1) void clearRemoteIdentityPublicKey() => clearField(1); @$pb.TagNumber(1) $0.TypedKey ensureRemoteIdentityPublicKey() => $_ensure(0); /// Conversation key for the other party @$pb.TagNumber(2) $0.TypedKey get remoteConversationRecordKey => $_getN(1); @$pb.TagNumber(2) set remoteConversationRecordKey($0.TypedKey v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasRemoteConversationRecordKey() => $_has(1); @$pb.TagNumber(2) void clearRemoteConversationRecordKey() => clearField(2); @$pb.TagNumber(2) $0.TypedKey ensureRemoteConversationRecordKey() => $_ensure(1); } /// A 1-1 chat /// Privately encrypted, this is the local user's copy of the chat class DirectChat extends $pb.GeneratedMessage { factory DirectChat({ ChatSettings? settings, $0.TypedKey? localConversationRecordKey, ChatMember? remoteMember, }) { final $result = create(); if (settings != null) { $result.settings = settings; } if (localConversationRecordKey != null) { $result.localConversationRecordKey = localConversationRecordKey; } if (remoteMember != null) { $result.remoteMember = remoteMember; } return $result; } DirectChat._() : super(); factory DirectChat.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory DirectChat.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DirectChat', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'settings', subBuilder: ChatSettings.create) ..aOM<$0.TypedKey>(2, _omitFieldNames ? '' : 'localConversationRecordKey', subBuilder: $0.TypedKey.create) ..aOM(3, _omitFieldNames ? '' : 'remoteMember', subBuilder: ChatMember.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') DirectChat clone() => DirectChat()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') DirectChat copyWith(void Function(DirectChat) updates) => super.copyWith((message) => updates(message as DirectChat)) as DirectChat; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static DirectChat create() => DirectChat._(); DirectChat createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static DirectChat getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static DirectChat? _defaultInstance; /// Settings @$pb.TagNumber(1) ChatSettings get settings => $_getN(0); @$pb.TagNumber(1) set settings(ChatSettings v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasSettings() => $_has(0); @$pb.TagNumber(1) void clearSettings() => clearField(1); @$pb.TagNumber(1) ChatSettings ensureSettings() => $_ensure(0); /// Conversation key for this user @$pb.TagNumber(2) $0.TypedKey get localConversationRecordKey => $_getN(1); @$pb.TagNumber(2) set localConversationRecordKey($0.TypedKey v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasLocalConversationRecordKey() => $_has(1); @$pb.TagNumber(2) void clearLocalConversationRecordKey() => clearField(2); @$pb.TagNumber(2) $0.TypedKey ensureLocalConversationRecordKey() => $_ensure(1); /// Conversation key for the other party @$pb.TagNumber(3) ChatMember get remoteMember => $_getN(2); @$pb.TagNumber(3) set remoteMember(ChatMember v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasRemoteMember() => $_has(2); @$pb.TagNumber(3) void clearRemoteMember() => clearField(3); @$pb.TagNumber(3) ChatMember ensureRemoteMember() => $_ensure(2); } /// A group chat /// Privately encrypted, this is the local user's copy of the chat class GroupChat extends $pb.GeneratedMessage { factory GroupChat({ ChatSettings? settings, Membership? membership, Permissions? permissions, $0.TypedKey? localConversationRecordKey, $core.Iterable? remoteMembers, }) { final $result = create(); if (settings != null) { $result.settings = settings; } if (membership != null) { $result.membership = membership; } if (permissions != null) { $result.permissions = permissions; } if (localConversationRecordKey != null) { $result.localConversationRecordKey = localConversationRecordKey; } if (remoteMembers != null) { $result.remoteMembers.addAll(remoteMembers); } return $result; } GroupChat._() : super(); factory GroupChat.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory GroupChat.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GroupChat', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'settings', subBuilder: ChatSettings.create) ..aOM(2, _omitFieldNames ? '' : 'membership', subBuilder: Membership.create) ..aOM(3, _omitFieldNames ? '' : 'permissions', subBuilder: Permissions.create) ..aOM<$0.TypedKey>(4, _omitFieldNames ? '' : 'localConversationRecordKey', subBuilder: $0.TypedKey.create) ..pc(5, _omitFieldNames ? '' : 'remoteMembers', $pb.PbFieldType.PM, subBuilder: ChatMember.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') GroupChat clone() => GroupChat()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') GroupChat copyWith(void Function(GroupChat) updates) => super.copyWith((message) => updates(message as GroupChat)) as GroupChat; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static GroupChat create() => GroupChat._(); GroupChat createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static GroupChat getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static GroupChat? _defaultInstance; /// Settings @$pb.TagNumber(1) ChatSettings get settings => $_getN(0); @$pb.TagNumber(1) set settings(ChatSettings v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasSettings() => $_has(0); @$pb.TagNumber(1) void clearSettings() => clearField(1); @$pb.TagNumber(1) ChatSettings ensureSettings() => $_ensure(0); /// Membership @$pb.TagNumber(2) Membership get membership => $_getN(1); @$pb.TagNumber(2) set membership(Membership v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasMembership() => $_has(1); @$pb.TagNumber(2) void clearMembership() => clearField(2); @$pb.TagNumber(2) Membership ensureMembership() => $_ensure(1); /// Permissions @$pb.TagNumber(3) Permissions get permissions => $_getN(2); @$pb.TagNumber(3) set permissions(Permissions v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasPermissions() => $_has(2); @$pb.TagNumber(3) void clearPermissions() => clearField(3); @$pb.TagNumber(3) Permissions ensurePermissions() => $_ensure(2); /// Conversation key for this user @$pb.TagNumber(4) $0.TypedKey get localConversationRecordKey => $_getN(3); @$pb.TagNumber(4) set localConversationRecordKey($0.TypedKey v) { setField(4, v); } @$pb.TagNumber(4) $core.bool hasLocalConversationRecordKey() => $_has(3); @$pb.TagNumber(4) void clearLocalConversationRecordKey() => clearField(4); @$pb.TagNumber(4) $0.TypedKey ensureLocalConversationRecordKey() => $_ensure(3); /// Conversation keys for the other parties @$pb.TagNumber(5) $core.List get remoteMembers => $_getList(4); } enum Chat_Kind { direct, group, notSet } /// Some kind of chat class Chat extends $pb.GeneratedMessage { factory Chat({ DirectChat? direct, GroupChat? group, }) { final $result = create(); if (direct != null) { $result.direct = direct; } if (group != null) { $result.group = group; } return $result; } Chat._() : super(); factory Chat.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Chat.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static const $core.Map<$core.int, Chat_Kind> _Chat_KindByTag = { 1 : Chat_Kind.direct, 2 : Chat_Kind.group, 0 : Chat_Kind.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Chat', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..oo(0, [1, 2]) ..aOM(1, _omitFieldNames ? '' : 'direct', subBuilder: DirectChat.create) ..aOM(2, _omitFieldNames ? '' : 'group', subBuilder: GroupChat.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Chat clone() => Chat()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Chat copyWith(void Function(Chat) updates) => super.copyWith((message) => updates(message as Chat)) as Chat; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Chat create() => Chat._(); Chat createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Chat getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Chat? _defaultInstance; Chat_Kind whichKind() => _Chat_KindByTag[$_whichOneof(0)]!; void clearKind() => clearField($_whichOneof(0)); @$pb.TagNumber(1) DirectChat get direct => $_getN(0); @$pb.TagNumber(1) set direct(DirectChat v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasDirect() => $_has(0); @$pb.TagNumber(1) void clearDirect() => clearField(1); @$pb.TagNumber(1) DirectChat ensureDirect() => $_ensure(0); @$pb.TagNumber(2) GroupChat get group => $_getN(1); @$pb.TagNumber(2) set group(GroupChat v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasGroup() => $_has(1); @$pb.TagNumber(2) void clearGroup() => clearField(2); @$pb.TagNumber(2) GroupChat ensureGroup() => $_ensure(1); } /// Publicly shared profile information for both contacts and accounts /// Contains: /// Name - Friendly name /// Pronouns - Pronouns of user /// Icon - Little picture to represent user in contact list class Profile extends $pb.GeneratedMessage { factory Profile({ $core.String? name, $core.String? pronouns, $core.String? about, $core.String? status, Availability? availability, DataReference? avatar, $fixnum.Int64? timestamp, }) { final $result = create(); if (name != null) { $result.name = name; } if (pronouns != null) { $result.pronouns = pronouns; } if (about != null) { $result.about = about; } if (status != null) { $result.status = status; } if (availability != null) { $result.availability = availability; } if (avatar != null) { $result.avatar = avatar; } if (timestamp != null) { $result.timestamp = timestamp; } return $result; } Profile._() : super(); factory Profile.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Profile.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Profile', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOS(1, _omitFieldNames ? '' : 'name') ..aOS(2, _omitFieldNames ? '' : 'pronouns') ..aOS(3, _omitFieldNames ? '' : 'about') ..aOS(4, _omitFieldNames ? '' : 'status') ..e(5, _omitFieldNames ? '' : 'availability', $pb.PbFieldType.OE, defaultOrMaker: Availability.AVAILABILITY_UNSPECIFIED, valueOf: Availability.valueOf, enumValues: Availability.values) ..aOM(6, _omitFieldNames ? '' : 'avatar', subBuilder: DataReference.create) ..a<$fixnum.Int64>(7, _omitFieldNames ? '' : 'timestamp', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Profile clone() => Profile()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Profile copyWith(void Function(Profile) updates) => super.copyWith((message) => updates(message as Profile)) as Profile; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Profile create() => Profile._(); Profile createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Profile getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Profile? _defaultInstance; /// Friendy name (max length 64) @$pb.TagNumber(1) $core.String get name => $_getSZ(0); @$pb.TagNumber(1) set name($core.String v) { $_setString(0, v); } @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) void clearName() => clearField(1); /// Pronouns of user (max length 64) @$pb.TagNumber(2) $core.String get pronouns => $_getSZ(1); @$pb.TagNumber(2) set pronouns($core.String v) { $_setString(1, v); } @$pb.TagNumber(2) $core.bool hasPronouns() => $_has(1); @$pb.TagNumber(2) void clearPronouns() => clearField(2); /// Description of the user (max length 1024) @$pb.TagNumber(3) $core.String get about => $_getSZ(2); @$pb.TagNumber(3) set about($core.String v) { $_setString(2, v); } @$pb.TagNumber(3) $core.bool hasAbout() => $_has(2); @$pb.TagNumber(3) void clearAbout() => clearField(3); /// Status/away message (max length 128) @$pb.TagNumber(4) $core.String get status => $_getSZ(3); @$pb.TagNumber(4) set status($core.String v) { $_setString(3, v); } @$pb.TagNumber(4) $core.bool hasStatus() => $_has(3); @$pb.TagNumber(4) void clearStatus() => clearField(4); /// Availability @$pb.TagNumber(5) Availability get availability => $_getN(4); @$pb.TagNumber(5) set availability(Availability v) { setField(5, v); } @$pb.TagNumber(5) $core.bool hasAvailability() => $_has(4); @$pb.TagNumber(5) void clearAvailability() => clearField(5); /// Avatar @$pb.TagNumber(6) DataReference get avatar => $_getN(5); @$pb.TagNumber(6) set avatar(DataReference v) { setField(6, v); } @$pb.TagNumber(6) $core.bool hasAvatar() => $_has(5); @$pb.TagNumber(6) void clearAvatar() => clearField(6); @$pb.TagNumber(6) DataReference ensureAvatar() => $_ensure(5); /// Timestamp of last change @$pb.TagNumber(7) $fixnum.Int64 get timestamp => $_getI64(6); @$pb.TagNumber(7) set timestamp($fixnum.Int64 v) { $_setInt64(6, v); } @$pb.TagNumber(7) $core.bool hasTimestamp() => $_has(6); @$pb.TagNumber(7) void clearTimestamp() => clearField(7); } /// A record of an individual account /// Pointed to by the identity account map in the identity key /// /// DHT Schema: DFLT(1) /// DHT Private: accountSecretKey class Account extends $pb.GeneratedMessage { factory Account({ Profile? profile, $core.bool? invisible, $core.int? autoAwayTimeoutMin, $1.OwnedDHTRecordPointer? contactList, $1.OwnedDHTRecordPointer? contactInvitationRecords, $1.OwnedDHTRecordPointer? chatList, $1.OwnedDHTRecordPointer? groupChatList, $core.String? freeMessage, $core.String? busyMessage, $core.String? awayMessage, $core.bool? autodetectAway, }) { final $result = create(); if (profile != null) { $result.profile = profile; } if (invisible != null) { $result.invisible = invisible; } if (autoAwayTimeoutMin != null) { $result.autoAwayTimeoutMin = autoAwayTimeoutMin; } if (contactList != null) { $result.contactList = contactList; } if (contactInvitationRecords != null) { $result.contactInvitationRecords = contactInvitationRecords; } if (chatList != null) { $result.chatList = chatList; } if (groupChatList != null) { $result.groupChatList = groupChatList; } if (freeMessage != null) { $result.freeMessage = freeMessage; } if (busyMessage != null) { $result.busyMessage = busyMessage; } if (awayMessage != null) { $result.awayMessage = awayMessage; } if (autodetectAway != null) { $result.autodetectAway = autodetectAway; } return $result; } Account._() : super(); factory Account.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Account.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Account', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM(1, _omitFieldNames ? '' : 'profile', subBuilder: Profile.create) ..aOB(2, _omitFieldNames ? '' : 'invisible') ..a<$core.int>(3, _omitFieldNames ? '' : 'autoAwayTimeoutMin', $pb.PbFieldType.OU3) ..aOM<$1.OwnedDHTRecordPointer>(4, _omitFieldNames ? '' : 'contactList', subBuilder: $1.OwnedDHTRecordPointer.create) ..aOM<$1.OwnedDHTRecordPointer>(5, _omitFieldNames ? '' : 'contactInvitationRecords', subBuilder: $1.OwnedDHTRecordPointer.create) ..aOM<$1.OwnedDHTRecordPointer>(6, _omitFieldNames ? '' : 'chatList', subBuilder: $1.OwnedDHTRecordPointer.create) ..aOM<$1.OwnedDHTRecordPointer>(7, _omitFieldNames ? '' : 'groupChatList', subBuilder: $1.OwnedDHTRecordPointer.create) ..aOS(8, _omitFieldNames ? '' : 'freeMessage') ..aOS(9, _omitFieldNames ? '' : 'busyMessage') ..aOS(10, _omitFieldNames ? '' : 'awayMessage') ..aOB(11, _omitFieldNames ? '' : 'autodetectAway') ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Account clone() => Account()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Account copyWith(void Function(Account) updates) => super.copyWith((message) => updates(message as Account)) as Account; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Account create() => Account._(); Account createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Account getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Account? _defaultInstance; /// The user's profile that gets shared with contacts @$pb.TagNumber(1) Profile get profile => $_getN(0); @$pb.TagNumber(1) set profile(Profile v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasProfile() => $_has(0); @$pb.TagNumber(1) void clearProfile() => clearField(1); @$pb.TagNumber(1) Profile ensureProfile() => $_ensure(0); /// Invisibility makes you always look 'Offline' @$pb.TagNumber(2) $core.bool get invisible => $_getBF(1); @$pb.TagNumber(2) set invisible($core.bool v) { $_setBool(1, v); } @$pb.TagNumber(2) $core.bool hasInvisible() => $_has(1); @$pb.TagNumber(2) void clearInvisible() => clearField(2); /// Auto-away sets 'away' mode after an inactivity time (only if autodetect_away is set) @$pb.TagNumber(3) $core.int get autoAwayTimeoutMin => $_getIZ(2); @$pb.TagNumber(3) set autoAwayTimeoutMin($core.int v) { $_setUnsignedInt32(2, v); } @$pb.TagNumber(3) $core.bool hasAutoAwayTimeoutMin() => $_has(2); @$pb.TagNumber(3) void clearAutoAwayTimeoutMin() => clearField(3); /// The contacts DHTList for this account /// DHT Private @$pb.TagNumber(4) $1.OwnedDHTRecordPointer get contactList => $_getN(3); @$pb.TagNumber(4) set contactList($1.OwnedDHTRecordPointer v) { setField(4, v); } @$pb.TagNumber(4) $core.bool hasContactList() => $_has(3); @$pb.TagNumber(4) void clearContactList() => clearField(4); @$pb.TagNumber(4) $1.OwnedDHTRecordPointer ensureContactList() => $_ensure(3); /// The ContactInvitationRecord DHTShortArray for this account /// DHT Private @$pb.TagNumber(5) $1.OwnedDHTRecordPointer get contactInvitationRecords => $_getN(4); @$pb.TagNumber(5) set contactInvitationRecords($1.OwnedDHTRecordPointer v) { setField(5, v); } @$pb.TagNumber(5) $core.bool hasContactInvitationRecords() => $_has(4); @$pb.TagNumber(5) void clearContactInvitationRecords() => clearField(5); @$pb.TagNumber(5) $1.OwnedDHTRecordPointer ensureContactInvitationRecords() => $_ensure(4); /// The Chats DHTList for this account /// DHT Private @$pb.TagNumber(6) $1.OwnedDHTRecordPointer get chatList => $_getN(5); @$pb.TagNumber(6) set chatList($1.OwnedDHTRecordPointer v) { setField(6, v); } @$pb.TagNumber(6) $core.bool hasChatList() => $_has(5); @$pb.TagNumber(6) void clearChatList() => clearField(6); @$pb.TagNumber(6) $1.OwnedDHTRecordPointer ensureChatList() => $_ensure(5); /// The GroupChats DHTList for this account /// DHT Private @$pb.TagNumber(7) $1.OwnedDHTRecordPointer get groupChatList => $_getN(6); @$pb.TagNumber(7) set groupChatList($1.OwnedDHTRecordPointer v) { setField(7, v); } @$pb.TagNumber(7) $core.bool hasGroupChatList() => $_has(6); @$pb.TagNumber(7) void clearGroupChatList() => clearField(7); @$pb.TagNumber(7) $1.OwnedDHTRecordPointer ensureGroupChatList() => $_ensure(6); /// Free message (max length 128) @$pb.TagNumber(8) $core.String get freeMessage => $_getSZ(7); @$pb.TagNumber(8) set freeMessage($core.String v) { $_setString(7, v); } @$pb.TagNumber(8) $core.bool hasFreeMessage() => $_has(7); @$pb.TagNumber(8) void clearFreeMessage() => clearField(8); /// Busy message (max length 128) @$pb.TagNumber(9) $core.String get busyMessage => $_getSZ(8); @$pb.TagNumber(9) set busyMessage($core.String v) { $_setString(8, v); } @$pb.TagNumber(9) $core.bool hasBusyMessage() => $_has(8); @$pb.TagNumber(9) void clearBusyMessage() => clearField(9); /// Away message (max length 128) @$pb.TagNumber(10) $core.String get awayMessage => $_getSZ(9); @$pb.TagNumber(10) set awayMessage($core.String v) { $_setString(9, v); } @$pb.TagNumber(10) $core.bool hasAwayMessage() => $_has(9); @$pb.TagNumber(10) void clearAwayMessage() => clearField(10); /// Auto-detect away @$pb.TagNumber(11) $core.bool get autodetectAway => $_getBF(10); @$pb.TagNumber(11) set autodetectAway($core.bool v) { $_setBool(10, v); } @$pb.TagNumber(11) $core.bool hasAutodetectAway() => $_has(10); @$pb.TagNumber(11) void clearAutodetectAway() => clearField(11); } /// A record of a contact that has accepted a contact invitation /// Contains a copy of the most recent remote profile as well as /// a locally edited profile. /// Contains a copy of the most recent identity from the contact's /// Master identity dht key /// /// Stored in ContactList DHTList class Contact extends $pb.GeneratedMessage { factory Contact({ $core.String? nickname, Profile? profile, $core.String? superIdentityJson, $0.TypedKey? identityPublicKey, $0.TypedKey? remoteConversationRecordKey, $0.TypedKey? localConversationRecordKey, $core.bool? showAvailability, $core.String? notes, }) { final $result = create(); if (nickname != null) { $result.nickname = nickname; } if (profile != null) { $result.profile = profile; } if (superIdentityJson != null) { $result.superIdentityJson = superIdentityJson; } if (identityPublicKey != null) { $result.identityPublicKey = identityPublicKey; } if (remoteConversationRecordKey != null) { $result.remoteConversationRecordKey = remoteConversationRecordKey; } if (localConversationRecordKey != null) { $result.localConversationRecordKey = localConversationRecordKey; } if (showAvailability != null) { $result.showAvailability = showAvailability; } if (notes != null) { $result.notes = notes; } return $result; } Contact._() : super(); factory Contact.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory Contact.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Contact', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOS(1, _omitFieldNames ? '' : 'nickname') ..aOM(2, _omitFieldNames ? '' : 'profile', subBuilder: Profile.create) ..aOS(3, _omitFieldNames ? '' : 'superIdentityJson') ..aOM<$0.TypedKey>(4, _omitFieldNames ? '' : 'identityPublicKey', subBuilder: $0.TypedKey.create) ..aOM<$0.TypedKey>(5, _omitFieldNames ? '' : 'remoteConversationRecordKey', subBuilder: $0.TypedKey.create) ..aOM<$0.TypedKey>(6, _omitFieldNames ? '' : 'localConversationRecordKey', subBuilder: $0.TypedKey.create) ..aOB(7, _omitFieldNames ? '' : 'showAvailability') ..aOS(8, _omitFieldNames ? '' : 'notes') ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') Contact clone() => Contact()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') Contact copyWith(void Function(Contact) updates) => super.copyWith((message) => updates(message as Contact)) as Contact; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Contact create() => Contact._(); Contact createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static Contact getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Contact? _defaultInstance; /// Friend's nickname @$pb.TagNumber(1) $core.String get nickname => $_getSZ(0); @$pb.TagNumber(1) set nickname($core.String v) { $_setString(0, v); } @$pb.TagNumber(1) $core.bool hasNickname() => $_has(0); @$pb.TagNumber(1) void clearNickname() => clearField(1); /// Copy of friend's profile from remote conversation @$pb.TagNumber(2) Profile get profile => $_getN(1); @$pb.TagNumber(2) set profile(Profile v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasProfile() => $_has(1); @$pb.TagNumber(2) void clearProfile() => clearField(2); @$pb.TagNumber(2) Profile ensureProfile() => $_ensure(1); /// Copy of friend's SuperIdentity in JSON from remote conversation @$pb.TagNumber(3) $core.String get superIdentityJson => $_getSZ(2); @$pb.TagNumber(3) set superIdentityJson($core.String v) { $_setString(2, v); } @$pb.TagNumber(3) $core.bool hasSuperIdentityJson() => $_has(2); @$pb.TagNumber(3) void clearSuperIdentityJson() => clearField(3); /// Copy of friend's most recent identity public key from their identityMaster @$pb.TagNumber(4) $0.TypedKey get identityPublicKey => $_getN(3); @$pb.TagNumber(4) set identityPublicKey($0.TypedKey v) { setField(4, v); } @$pb.TagNumber(4) $core.bool hasIdentityPublicKey() => $_has(3); @$pb.TagNumber(4) void clearIdentityPublicKey() => clearField(4); @$pb.TagNumber(4) $0.TypedKey ensureIdentityPublicKey() => $_ensure(3); /// Remote conversation key to sync from friend @$pb.TagNumber(5) $0.TypedKey get remoteConversationRecordKey => $_getN(4); @$pb.TagNumber(5) set remoteConversationRecordKey($0.TypedKey v) { setField(5, v); } @$pb.TagNumber(5) $core.bool hasRemoteConversationRecordKey() => $_has(4); @$pb.TagNumber(5) void clearRemoteConversationRecordKey() => clearField(5); @$pb.TagNumber(5) $0.TypedKey ensureRemoteConversationRecordKey() => $_ensure(4); /// Our conversation key for friend to sync @$pb.TagNumber(6) $0.TypedKey get localConversationRecordKey => $_getN(5); @$pb.TagNumber(6) set localConversationRecordKey($0.TypedKey v) { setField(6, v); } @$pb.TagNumber(6) $core.bool hasLocalConversationRecordKey() => $_has(5); @$pb.TagNumber(6) void clearLocalConversationRecordKey() => clearField(6); @$pb.TagNumber(6) $0.TypedKey ensureLocalConversationRecordKey() => $_ensure(5); /// Show availability to this contact @$pb.TagNumber(7) $core.bool get showAvailability => $_getBF(6); @$pb.TagNumber(7) set showAvailability($core.bool v) { $_setBool(6, v); } @$pb.TagNumber(7) $core.bool hasShowAvailability() => $_has(6); @$pb.TagNumber(7) void clearShowAvailability() => clearField(7); /// Notes about this friend @$pb.TagNumber(8) $core.String get notes => $_getSZ(7); @$pb.TagNumber(8) set notes($core.String v) { $_setString(7, v); } @$pb.TagNumber(8) $core.bool hasNotes() => $_has(7); @$pb.TagNumber(8) void clearNotes() => clearField(8); } /// Invitation that is shared for VeilidChat contact connections /// serialized to QR code or data blob, not send over DHT, out of band. /// Writer secret is unique to this invitation. Writer public key is in the ContactRequestPrivate /// in the ContactRequestInbox subkey 0 DHT key class ContactInvitation extends $pb.GeneratedMessage { factory ContactInvitation({ $0.TypedKey? contactRequestInboxKey, $core.List<$core.int>? writerSecret, }) { final $result = create(); if (contactRequestInboxKey != null) { $result.contactRequestInboxKey = contactRequestInboxKey; } if (writerSecret != null) { $result.writerSecret = writerSecret; } return $result; } ContactInvitation._() : super(); factory ContactInvitation.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ContactInvitation.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ContactInvitation', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM<$0.TypedKey>(1, _omitFieldNames ? '' : 'contactRequestInboxKey', subBuilder: $0.TypedKey.create) ..a<$core.List<$core.int>>(2, _omitFieldNames ? '' : 'writerSecret', $pb.PbFieldType.OY) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ContactInvitation clone() => ContactInvitation()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ContactInvitation copyWith(void Function(ContactInvitation) updates) => super.copyWith((message) => updates(message as ContactInvitation)) as ContactInvitation; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ContactInvitation create() => ContactInvitation._(); ContactInvitation createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ContactInvitation getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ContactInvitation? _defaultInstance; /// Contact request DHT record key @$pb.TagNumber(1) $0.TypedKey get contactRequestInboxKey => $_getN(0); @$pb.TagNumber(1) set contactRequestInboxKey($0.TypedKey v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasContactRequestInboxKey() => $_has(0); @$pb.TagNumber(1) void clearContactRequestInboxKey() => clearField(1); @$pb.TagNumber(1) $0.TypedKey ensureContactRequestInboxKey() => $_ensure(0); /// Writer secret key bytes possibly encrypted with nonce appended @$pb.TagNumber(2) $core.List<$core.int> get writerSecret => $_getN(1); @$pb.TagNumber(2) set writerSecret($core.List<$core.int> v) { $_setBytes(1, v); } @$pb.TagNumber(2) $core.bool hasWriterSecret() => $_has(1); @$pb.TagNumber(2) void clearWriterSecret() => clearField(2); } /// Signature of invitation with identity class SignedContactInvitation extends $pb.GeneratedMessage { factory SignedContactInvitation({ $core.List<$core.int>? contactInvitation, $0.Signature? identitySignature, }) { final $result = create(); if (contactInvitation != null) { $result.contactInvitation = contactInvitation; } if (identitySignature != null) { $result.identitySignature = identitySignature; } return $result; } SignedContactInvitation._() : super(); factory SignedContactInvitation.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory SignedContactInvitation.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SignedContactInvitation', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..a<$core.List<$core.int>>(1, _omitFieldNames ? '' : 'contactInvitation', $pb.PbFieldType.OY) ..aOM<$0.Signature>(2, _omitFieldNames ? '' : 'identitySignature', subBuilder: $0.Signature.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') SignedContactInvitation clone() => SignedContactInvitation()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') SignedContactInvitation copyWith(void Function(SignedContactInvitation) updates) => super.copyWith((message) => updates(message as SignedContactInvitation)) as SignedContactInvitation; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static SignedContactInvitation create() => SignedContactInvitation._(); SignedContactInvitation createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static SignedContactInvitation getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static SignedContactInvitation? _defaultInstance; /// The serialized bytes for the contact invitation @$pb.TagNumber(1) $core.List<$core.int> get contactInvitation => $_getN(0); @$pb.TagNumber(1) set contactInvitation($core.List<$core.int> v) { $_setBytes(0, v); } @$pb.TagNumber(1) $core.bool hasContactInvitation() => $_has(0); @$pb.TagNumber(1) void clearContactInvitation() => clearField(1); /// The signature of the contact_invitation bytes with the identity @$pb.TagNumber(2) $0.Signature get identitySignature => $_getN(1); @$pb.TagNumber(2) set identitySignature($0.Signature v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasIdentitySignature() => $_has(1); @$pb.TagNumber(2) void clearIdentitySignature() => clearField(2); @$pb.TagNumber(2) $0.Signature ensureIdentitySignature() => $_ensure(1); } /// Contact request unicastinbox on the DHT /// DHTSchema: SMPL 1 owner key, 1 writer key symmetrically encrypted with writer secret class ContactRequest extends $pb.GeneratedMessage { factory ContactRequest({ EncryptionKeyType? encryptionKeyType, $core.List<$core.int>? private, }) { final $result = create(); if (encryptionKeyType != null) { $result.encryptionKeyType = encryptionKeyType; } if (private != null) { $result.private = private; } return $result; } ContactRequest._() : super(); factory ContactRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ContactRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ContactRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..e(1, _omitFieldNames ? '' : 'encryptionKeyType', $pb.PbFieldType.OE, defaultOrMaker: EncryptionKeyType.ENCRYPTION_KEY_TYPE_UNSPECIFIED, valueOf: EncryptionKeyType.valueOf, enumValues: EncryptionKeyType.values) ..a<$core.List<$core.int>>(2, _omitFieldNames ? '' : 'private', $pb.PbFieldType.OY) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ContactRequest clone() => ContactRequest()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ContactRequest copyWith(void Function(ContactRequest) updates) => super.copyWith((message) => updates(message as ContactRequest)) as ContactRequest; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ContactRequest create() => ContactRequest._(); ContactRequest createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ContactRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ContactRequest? _defaultInstance; /// The kind of encryption used on the unicastinbox writer key @$pb.TagNumber(1) EncryptionKeyType get encryptionKeyType => $_getN(0); @$pb.TagNumber(1) set encryptionKeyType(EncryptionKeyType v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasEncryptionKeyType() => $_has(0); @$pb.TagNumber(1) void clearEncryptionKeyType() => clearField(1); /// The private part encoded and symmetrically encrypted with the unicastinbox writer secret @$pb.TagNumber(2) $core.List<$core.int> get private => $_getN(1); @$pb.TagNumber(2) set private($core.List<$core.int> v) { $_setBytes(1, v); } @$pb.TagNumber(2) $core.bool hasPrivate() => $_has(1); @$pb.TagNumber(2) void clearPrivate() => clearField(2); } /// The private part of a possibly encrypted contact request /// Symmetrically encrypted with writer secret class ContactRequestPrivate extends $pb.GeneratedMessage { factory ContactRequestPrivate({ $0.CryptoKey? writerKey, Profile? profile, $0.TypedKey? superIdentityRecordKey, $0.TypedKey? chatRecordKey, $fixnum.Int64? expiration, }) { final $result = create(); if (writerKey != null) { $result.writerKey = writerKey; } if (profile != null) { $result.profile = profile; } if (superIdentityRecordKey != null) { $result.superIdentityRecordKey = superIdentityRecordKey; } if (chatRecordKey != null) { $result.chatRecordKey = chatRecordKey; } if (expiration != null) { $result.expiration = expiration; } return $result; } ContactRequestPrivate._() : super(); factory ContactRequestPrivate.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ContactRequestPrivate.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ContactRequestPrivate', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM<$0.CryptoKey>(1, _omitFieldNames ? '' : 'writerKey', subBuilder: $0.CryptoKey.create) ..aOM(2, _omitFieldNames ? '' : 'profile', subBuilder: Profile.create) ..aOM<$0.TypedKey>(3, _omitFieldNames ? '' : 'superIdentityRecordKey', subBuilder: $0.TypedKey.create) ..aOM<$0.TypedKey>(4, _omitFieldNames ? '' : 'chatRecordKey', subBuilder: $0.TypedKey.create) ..a<$fixnum.Int64>(5, _omitFieldNames ? '' : 'expiration', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ContactRequestPrivate clone() => ContactRequestPrivate()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ContactRequestPrivate copyWith(void Function(ContactRequestPrivate) updates) => super.copyWith((message) => updates(message as ContactRequestPrivate)) as ContactRequestPrivate; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ContactRequestPrivate create() => ContactRequestPrivate._(); ContactRequestPrivate createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ContactRequestPrivate getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ContactRequestPrivate? _defaultInstance; /// Writer public key for signing writes to contact request unicastinbox @$pb.TagNumber(1) $0.CryptoKey get writerKey => $_getN(0); @$pb.TagNumber(1) set writerKey($0.CryptoKey v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasWriterKey() => $_has(0); @$pb.TagNumber(1) void clearWriterKey() => clearField(1); @$pb.TagNumber(1) $0.CryptoKey ensureWriterKey() => $_ensure(0); /// Snapshot of profile @$pb.TagNumber(2) Profile get profile => $_getN(1); @$pb.TagNumber(2) set profile(Profile v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasProfile() => $_has(1); @$pb.TagNumber(2) void clearProfile() => clearField(2); @$pb.TagNumber(2) Profile ensureProfile() => $_ensure(1); /// SuperIdentity DHT record key @$pb.TagNumber(3) $0.TypedKey get superIdentityRecordKey => $_getN(2); @$pb.TagNumber(3) set superIdentityRecordKey($0.TypedKey v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasSuperIdentityRecordKey() => $_has(2); @$pb.TagNumber(3) void clearSuperIdentityRecordKey() => clearField(3); @$pb.TagNumber(3) $0.TypedKey ensureSuperIdentityRecordKey() => $_ensure(2); /// Local chat DHT record key @$pb.TagNumber(4) $0.TypedKey get chatRecordKey => $_getN(3); @$pb.TagNumber(4) set chatRecordKey($0.TypedKey v) { setField(4, v); } @$pb.TagNumber(4) $core.bool hasChatRecordKey() => $_has(3); @$pb.TagNumber(4) void clearChatRecordKey() => clearField(4); @$pb.TagNumber(4) $0.TypedKey ensureChatRecordKey() => $_ensure(3); /// Expiration timestamp @$pb.TagNumber(5) $fixnum.Int64 get expiration => $_getI64(4); @$pb.TagNumber(5) set expiration($fixnum.Int64 v) { $_setInt64(4, v); } @$pb.TagNumber(5) $core.bool hasExpiration() => $_has(4); @$pb.TagNumber(5) void clearExpiration() => clearField(5); } /// To accept or reject a contact request, fill this out and send to the ContactRequest unicastinbox class ContactResponse extends $pb.GeneratedMessage { factory ContactResponse({ $core.bool? accept, $0.TypedKey? superIdentityRecordKey, $0.TypedKey? remoteConversationRecordKey, }) { final $result = create(); if (accept != null) { $result.accept = accept; } if (superIdentityRecordKey != null) { $result.superIdentityRecordKey = superIdentityRecordKey; } if (remoteConversationRecordKey != null) { $result.remoteConversationRecordKey = remoteConversationRecordKey; } return $result; } ContactResponse._() : super(); factory ContactResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ContactResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ContactResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOB(1, _omitFieldNames ? '' : 'accept') ..aOM<$0.TypedKey>(2, _omitFieldNames ? '' : 'superIdentityRecordKey', subBuilder: $0.TypedKey.create) ..aOM<$0.TypedKey>(3, _omitFieldNames ? '' : 'remoteConversationRecordKey', subBuilder: $0.TypedKey.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ContactResponse clone() => ContactResponse()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ContactResponse copyWith(void Function(ContactResponse) updates) => super.copyWith((message) => updates(message as ContactResponse)) as ContactResponse; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ContactResponse create() => ContactResponse._(); ContactResponse createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ContactResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ContactResponse? _defaultInstance; /// Accept or reject @$pb.TagNumber(1) $core.bool get accept => $_getBF(0); @$pb.TagNumber(1) set accept($core.bool v) { $_setBool(0, v); } @$pb.TagNumber(1) $core.bool hasAccept() => $_has(0); @$pb.TagNumber(1) void clearAccept() => clearField(1); /// Remote SuperIdentity DHT record key @$pb.TagNumber(2) $0.TypedKey get superIdentityRecordKey => $_getN(1); @$pb.TagNumber(2) set superIdentityRecordKey($0.TypedKey v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasSuperIdentityRecordKey() => $_has(1); @$pb.TagNumber(2) void clearSuperIdentityRecordKey() => clearField(2); @$pb.TagNumber(2) $0.TypedKey ensureSuperIdentityRecordKey() => $_ensure(1); /// Remote chat DHT record key if accepted @$pb.TagNumber(3) $0.TypedKey get remoteConversationRecordKey => $_getN(2); @$pb.TagNumber(3) set remoteConversationRecordKey($0.TypedKey v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasRemoteConversationRecordKey() => $_has(2); @$pb.TagNumber(3) void clearRemoteConversationRecordKey() => clearField(3); @$pb.TagNumber(3) $0.TypedKey ensureRemoteConversationRecordKey() => $_ensure(2); } /// Signature of response with identity /// Symmetrically encrypted with writer secret class SignedContactResponse extends $pb.GeneratedMessage { factory SignedContactResponse({ $core.List<$core.int>? contactResponse, $0.Signature? identitySignature, }) { final $result = create(); if (contactResponse != null) { $result.contactResponse = contactResponse; } if (identitySignature != null) { $result.identitySignature = identitySignature; } return $result; } SignedContactResponse._() : super(); factory SignedContactResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory SignedContactResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'SignedContactResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..a<$core.List<$core.int>>(1, _omitFieldNames ? '' : 'contactResponse', $pb.PbFieldType.OY) ..aOM<$0.Signature>(2, _omitFieldNames ? '' : 'identitySignature', subBuilder: $0.Signature.create) ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') SignedContactResponse clone() => SignedContactResponse()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') SignedContactResponse copyWith(void Function(SignedContactResponse) updates) => super.copyWith((message) => updates(message as SignedContactResponse)) as SignedContactResponse; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static SignedContactResponse create() => SignedContactResponse._(); SignedContactResponse createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static SignedContactResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static SignedContactResponse? _defaultInstance; /// Serialized bytes for ContactResponse @$pb.TagNumber(1) $core.List<$core.int> get contactResponse => $_getN(0); @$pb.TagNumber(1) set contactResponse($core.List<$core.int> v) { $_setBytes(0, v); } @$pb.TagNumber(1) $core.bool hasContactResponse() => $_has(0); @$pb.TagNumber(1) void clearContactResponse() => clearField(1); /// Signature of the contact_accept bytes with the identity @$pb.TagNumber(2) $0.Signature get identitySignature => $_getN(1); @$pb.TagNumber(2) set identitySignature($0.Signature v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasIdentitySignature() => $_has(1); @$pb.TagNumber(2) void clearIdentitySignature() => clearField(2); @$pb.TagNumber(2) $0.Signature ensureIdentitySignature() => $_ensure(1); } /// Contact request record kept in Account DHTList to keep track of extant contact invitations class ContactInvitationRecord extends $pb.GeneratedMessage { factory ContactInvitationRecord({ $1.OwnedDHTRecordPointer? contactRequestInbox, $0.CryptoKey? writerKey, $0.CryptoKey? writerSecret, $0.TypedKey? localConversationRecordKey, $fixnum.Int64? expiration, $core.List<$core.int>? invitation, $core.String? message, $core.String? recipient, }) { final $result = create(); if (contactRequestInbox != null) { $result.contactRequestInbox = contactRequestInbox; } if (writerKey != null) { $result.writerKey = writerKey; } if (writerSecret != null) { $result.writerSecret = writerSecret; } if (localConversationRecordKey != null) { $result.localConversationRecordKey = localConversationRecordKey; } if (expiration != null) { $result.expiration = expiration; } if (invitation != null) { $result.invitation = invitation; } if (message != null) { $result.message = message; } if (recipient != null) { $result.recipient = recipient; } return $result; } ContactInvitationRecord._() : super(); factory ContactInvitationRecord.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory ContactInvitationRecord.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ContactInvitationRecord', package: const $pb.PackageName(_omitMessageNames ? '' : 'veilidchat'), createEmptyInstance: create) ..aOM<$1.OwnedDHTRecordPointer>(1, _omitFieldNames ? '' : 'contactRequestInbox', subBuilder: $1.OwnedDHTRecordPointer.create) ..aOM<$0.CryptoKey>(2, _omitFieldNames ? '' : 'writerKey', subBuilder: $0.CryptoKey.create) ..aOM<$0.CryptoKey>(3, _omitFieldNames ? '' : 'writerSecret', subBuilder: $0.CryptoKey.create) ..aOM<$0.TypedKey>(4, _omitFieldNames ? '' : 'localConversationRecordKey', subBuilder: $0.TypedKey.create) ..a<$fixnum.Int64>(5, _omitFieldNames ? '' : 'expiration', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO) ..a<$core.List<$core.int>>(6, _omitFieldNames ? '' : 'invitation', $pb.PbFieldType.OY) ..aOS(7, _omitFieldNames ? '' : 'message') ..aOS(8, _omitFieldNames ? '' : 'recipient') ..hasRequiredFields = false ; @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version') ContactInvitationRecord clone() => ContactInvitationRecord()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') ContactInvitationRecord copyWith(void Function(ContactInvitationRecord) updates) => super.copyWith((message) => updates(message as ContactInvitationRecord)) as ContactInvitationRecord; $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static ContactInvitationRecord create() => ContactInvitationRecord._(); ContactInvitationRecord createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') static ContactInvitationRecord getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static ContactInvitationRecord? _defaultInstance; /// Contact request unicastinbox DHT record key (parent is accountkey) @$pb.TagNumber(1) $1.OwnedDHTRecordPointer get contactRequestInbox => $_getN(0); @$pb.TagNumber(1) set contactRequestInbox($1.OwnedDHTRecordPointer v) { setField(1, v); } @$pb.TagNumber(1) $core.bool hasContactRequestInbox() => $_has(0); @$pb.TagNumber(1) void clearContactRequestInbox() => clearField(1); @$pb.TagNumber(1) $1.OwnedDHTRecordPointer ensureContactRequestInbox() => $_ensure(0); /// Writer key sent to contact for the contact_request_inbox smpl inbox subkey @$pb.TagNumber(2) $0.CryptoKey get writerKey => $_getN(1); @$pb.TagNumber(2) set writerKey($0.CryptoKey v) { setField(2, v); } @$pb.TagNumber(2) $core.bool hasWriterKey() => $_has(1); @$pb.TagNumber(2) void clearWriterKey() => clearField(2); @$pb.TagNumber(2) $0.CryptoKey ensureWriterKey() => $_ensure(1); /// Writer secret sent encrypted in the invitation @$pb.TagNumber(3) $0.CryptoKey get writerSecret => $_getN(2); @$pb.TagNumber(3) set writerSecret($0.CryptoKey v) { setField(3, v); } @$pb.TagNumber(3) $core.bool hasWriterSecret() => $_has(2); @$pb.TagNumber(3) void clearWriterSecret() => clearField(3); @$pb.TagNumber(3) $0.CryptoKey ensureWriterSecret() => $_ensure(2); /// Local chat DHT record key (parent is accountkey, will be moved to Contact if accepted) @$pb.TagNumber(4) $0.TypedKey get localConversationRecordKey => $_getN(3); @$pb.TagNumber(4) set localConversationRecordKey($0.TypedKey v) { setField(4, v); } @$pb.TagNumber(4) $core.bool hasLocalConversationRecordKey() => $_has(3); @$pb.TagNumber(4) void clearLocalConversationRecordKey() => clearField(4); @$pb.TagNumber(4) $0.TypedKey ensureLocalConversationRecordKey() => $_ensure(3); /// Expiration timestamp @$pb.TagNumber(5) $fixnum.Int64 get expiration => $_getI64(4); @$pb.TagNumber(5) set expiration($fixnum.Int64 v) { $_setInt64(4, v); } @$pb.TagNumber(5) $core.bool hasExpiration() => $_has(4); @$pb.TagNumber(5) void clearExpiration() => clearField(5); /// A copy of the raw SignedContactInvitation invitation bytes post-encryption and signing @$pb.TagNumber(6) $core.List<$core.int> get invitation => $_getN(5); @$pb.TagNumber(6) set invitation($core.List<$core.int> v) { $_setBytes(5, v); } @$pb.TagNumber(6) $core.bool hasInvitation() => $_has(5); @$pb.TagNumber(6) void clearInvitation() => clearField(6); /// The message sent along with the invitation @$pb.TagNumber(7) $core.String get message => $_getSZ(6); @$pb.TagNumber(7) set message($core.String v) { $_setString(6, v); } @$pb.TagNumber(7) $core.bool hasMessage() => $_has(6); @$pb.TagNumber(7) void clearMessage() => clearField(7); /// The recipient sent along with the invitation @$pb.TagNumber(8) $core.String get recipient => $_getSZ(7); @$pb.TagNumber(8) set recipient($core.String v) { $_setString(7, v); } @$pb.TagNumber(8) $core.bool hasRecipient() => $_has(7); @$pb.TagNumber(8) void clearRecipient() => clearField(8); } const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names'); const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names');