@@ -90,6 +90,9 @@ class InitialSnapshot {
9090 /// Search for "realm_wildcard_mention_policy" in https://zulip.com/api/register-queue.
9191 final RealmWildcardMentionPolicy realmWildcardMentionPolicy;
9292
93+ @JsonKey (unknownEnumValue: RealmTopicsPolicy .unknown)
94+ final RealmTopicsPolicy ? realmTopicsPolicy; // TODO(server-11)
95+
9396 final bool realmMandatoryTopics;
9497
9598 final String realmName;
@@ -183,6 +186,7 @@ class InitialSnapshot {
183186 required this .realmCanDeleteOwnMessageGroup,
184187 required this .realmDeleteOwnMessagePolicy,
185188 required this .realmWildcardMentionPolicy,
189+ required this .realmTopicsPolicy,
186190 required this .realmMandatoryTopics,
187191 required this .realmName,
188192 required this .realmWaitingPeriodThreshold,
@@ -238,6 +242,23 @@ enum RealmDeleteOwnMessagePolicy {
238242 int toJson () => apiValue;
239243}
240244
245+ /// A value of [InitialSnapshot.realmTopicsPolicy] .
246+ ///
247+ /// For docs, search for "realm_topics_policy"
248+ /// in <https://zulip.com/api/register-queue#response>.
249+ @JsonEnum (valueField: 'apiValue' )
250+ enum RealmTopicsPolicy {
251+ allowEmptyTopic (apiValue: 'allow_empty_topic' ),
252+ disableEmptyTopic (apiValue: 'disable_empty_topic' ),
253+ unknown (apiValue: null );
254+
255+ const RealmTopicsPolicy ({required this .apiValue});
256+
257+ final String ? apiValue;
258+
259+ String ? toJson () => apiValue;
260+ }
261+
241262/// An item in `realm_default_external_accounts` .
242263///
243264/// For docs, search for "realm_default_external_accounts:"
0 commit comments