github.com/keybase/client/go@v0.0.0-20241007131713-f10651d043c8/protocol/chat1/notify.go (about)

     1  // Auto-generated to Go types and interfaces using avdl-compiler v1.4.10 (https://github.com/keybase/node-avdl-compiler)
     2  //   Input file: avdl/chat1/notify.avdl
     3  
     4  package chat1
     5  
     6  import (
     7  	"errors"
     8  	"fmt"
     9  	keybase1 "github.com/keybase/client/go/protocol/keybase1"
    10  	"github.com/keybase/go-framed-msgpack-rpc/rpc"
    11  	context "golang.org/x/net/context"
    12  	"time"
    13  )
    14  
    15  type ChatActivitySource int
    16  
    17  const (
    18  	ChatActivitySource_LOCAL  ChatActivitySource = 0
    19  	ChatActivitySource_REMOTE ChatActivitySource = 1
    20  )
    21  
    22  func (o ChatActivitySource) DeepCopy() ChatActivitySource { return o }
    23  
    24  var ChatActivitySourceMap = map[string]ChatActivitySource{
    25  	"LOCAL":  0,
    26  	"REMOTE": 1,
    27  }
    28  
    29  var ChatActivitySourceRevMap = map[ChatActivitySource]string{
    30  	0: "LOCAL",
    31  	1: "REMOTE",
    32  }
    33  
    34  func (e ChatActivitySource) String() string {
    35  	if v, ok := ChatActivitySourceRevMap[e]; ok {
    36  		return v
    37  	}
    38  	return fmt.Sprintf("%v", int(e))
    39  }
    40  
    41  type ChatActivityType int
    42  
    43  const (
    44  	ChatActivityType_RESERVED                      ChatActivityType = 0
    45  	ChatActivityType_INCOMING_MESSAGE              ChatActivityType = 1
    46  	ChatActivityType_READ_MESSAGE                  ChatActivityType = 2
    47  	ChatActivityType_NEW_CONVERSATION              ChatActivityType = 3
    48  	ChatActivityType_SET_STATUS                    ChatActivityType = 4
    49  	ChatActivityType_FAILED_MESSAGE                ChatActivityType = 5
    50  	ChatActivityType_MEMBERS_UPDATE                ChatActivityType = 6
    51  	ChatActivityType_SET_APP_NOTIFICATION_SETTINGS ChatActivityType = 7
    52  	ChatActivityType_TEAMTYPE                      ChatActivityType = 8
    53  	ChatActivityType_EXPUNGE                       ChatActivityType = 9
    54  	ChatActivityType_EPHEMERAL_PURGE               ChatActivityType = 10
    55  	ChatActivityType_REACTION_UPDATE               ChatActivityType = 11
    56  	ChatActivityType_MESSAGES_UPDATED              ChatActivityType = 12
    57  )
    58  
    59  func (o ChatActivityType) DeepCopy() ChatActivityType { return o }
    60  
    61  var ChatActivityTypeMap = map[string]ChatActivityType{
    62  	"RESERVED":                      0,
    63  	"INCOMING_MESSAGE":              1,
    64  	"READ_MESSAGE":                  2,
    65  	"NEW_CONVERSATION":              3,
    66  	"SET_STATUS":                    4,
    67  	"FAILED_MESSAGE":                5,
    68  	"MEMBERS_UPDATE":                6,
    69  	"SET_APP_NOTIFICATION_SETTINGS": 7,
    70  	"TEAMTYPE":                      8,
    71  	"EXPUNGE":                       9,
    72  	"EPHEMERAL_PURGE":               10,
    73  	"REACTION_UPDATE":               11,
    74  	"MESSAGES_UPDATED":              12,
    75  }
    76  
    77  var ChatActivityTypeRevMap = map[ChatActivityType]string{
    78  	0:  "RESERVED",
    79  	1:  "INCOMING_MESSAGE",
    80  	2:  "READ_MESSAGE",
    81  	3:  "NEW_CONVERSATION",
    82  	4:  "SET_STATUS",
    83  	5:  "FAILED_MESSAGE",
    84  	6:  "MEMBERS_UPDATE",
    85  	7:  "SET_APP_NOTIFICATION_SETTINGS",
    86  	8:  "TEAMTYPE",
    87  	9:  "EXPUNGE",
    88  	10: "EPHEMERAL_PURGE",
    89  	11: "REACTION_UPDATE",
    90  	12: "MESSAGES_UPDATED",
    91  }
    92  
    93  func (e ChatActivityType) String() string {
    94  	if v, ok := ChatActivityTypeRevMap[e]; ok {
    95  		return v
    96  	}
    97  	return fmt.Sprintf("%v", int(e))
    98  }
    99  
   100  type IncomingMessage struct {
   101  	Message                    UIMessage      `codec:"message" json:"message"`
   102  	ModifiedMessage            *UIMessage     `codec:"modifiedMessage,omitempty" json:"modifiedMessage,omitempty"`
   103  	ConvID                     ConversationID `codec:"convID" json:"convID"`
   104  	DisplayDesktopNotification bool           `codec:"displayDesktopNotification" json:"displayDesktopNotification"`
   105  	DesktopNotificationSnippet string         `codec:"desktopNotificationSnippet" json:"desktopNotificationSnippet"`
   106  	Conv                       *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
   107  	Pagination                 *UIPagination  `codec:"pagination,omitempty" json:"pagination,omitempty"`
   108  }
   109  
   110  func (o IncomingMessage) DeepCopy() IncomingMessage {
   111  	return IncomingMessage{
   112  		Message: o.Message.DeepCopy(),
   113  		ModifiedMessage: (func(x *UIMessage) *UIMessage {
   114  			if x == nil {
   115  				return nil
   116  			}
   117  			tmp := (*x).DeepCopy()
   118  			return &tmp
   119  		})(o.ModifiedMessage),
   120  		ConvID:                     o.ConvID.DeepCopy(),
   121  		DisplayDesktopNotification: o.DisplayDesktopNotification,
   122  		DesktopNotificationSnippet: o.DesktopNotificationSnippet,
   123  		Conv: (func(x *InboxUIItem) *InboxUIItem {
   124  			if x == nil {
   125  				return nil
   126  			}
   127  			tmp := (*x).DeepCopy()
   128  			return &tmp
   129  		})(o.Conv),
   130  		Pagination: (func(x *UIPagination) *UIPagination {
   131  			if x == nil {
   132  				return nil
   133  			}
   134  			tmp := (*x).DeepCopy()
   135  			return &tmp
   136  		})(o.Pagination),
   137  	}
   138  }
   139  
   140  type ReadMessageInfo struct {
   141  	ConvID ConversationID `codec:"convID" json:"convID"`
   142  	MsgID  MessageID      `codec:"msgID" json:"msgID"`
   143  	Conv   *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
   144  }
   145  
   146  func (o ReadMessageInfo) DeepCopy() ReadMessageInfo {
   147  	return ReadMessageInfo{
   148  		ConvID: o.ConvID.DeepCopy(),
   149  		MsgID:  o.MsgID.DeepCopy(),
   150  		Conv: (func(x *InboxUIItem) *InboxUIItem {
   151  			if x == nil {
   152  				return nil
   153  			}
   154  			tmp := (*x).DeepCopy()
   155  			return &tmp
   156  		})(o.Conv),
   157  	}
   158  }
   159  
   160  type NewConversationInfo struct {
   161  	ConvID ConversationID `codec:"convID" json:"convID"`
   162  	Conv   *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
   163  }
   164  
   165  func (o NewConversationInfo) DeepCopy() NewConversationInfo {
   166  	return NewConversationInfo{
   167  		ConvID: o.ConvID.DeepCopy(),
   168  		Conv: (func(x *InboxUIItem) *InboxUIItem {
   169  			if x == nil {
   170  				return nil
   171  			}
   172  			tmp := (*x).DeepCopy()
   173  			return &tmp
   174  		})(o.Conv),
   175  	}
   176  }
   177  
   178  type SetStatusInfo struct {
   179  	ConvID ConversationID     `codec:"convID" json:"convID"`
   180  	Status ConversationStatus `codec:"status" json:"status"`
   181  	Conv   *InboxUIItem       `codec:"conv,omitempty" json:"conv,omitempty"`
   182  }
   183  
   184  func (o SetStatusInfo) DeepCopy() SetStatusInfo {
   185  	return SetStatusInfo{
   186  		ConvID: o.ConvID.DeepCopy(),
   187  		Status: o.Status.DeepCopy(),
   188  		Conv: (func(x *InboxUIItem) *InboxUIItem {
   189  			if x == nil {
   190  				return nil
   191  			}
   192  			tmp := (*x).DeepCopy()
   193  			return &tmp
   194  		})(o.Conv),
   195  	}
   196  }
   197  
   198  type SetAppNotificationSettingsInfo struct {
   199  	ConvID   ConversationID               `codec:"convID" json:"convID"`
   200  	Settings ConversationNotificationInfo `codec:"settings" json:"settings"`
   201  }
   202  
   203  func (o SetAppNotificationSettingsInfo) DeepCopy() SetAppNotificationSettingsInfo {
   204  	return SetAppNotificationSettingsInfo{
   205  		ConvID:   o.ConvID.DeepCopy(),
   206  		Settings: o.Settings.DeepCopy(),
   207  	}
   208  }
   209  
   210  type FailedMessageInfo struct {
   211  	OutboxRecords    []OutboxRecord `codec:"outboxRecords" json:"outboxRecords"`
   212  	IsEphemeralPurge bool           `codec:"isEphemeralPurge" json:"isEphemeralPurge"`
   213  	Conv             *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
   214  }
   215  
   216  func (o FailedMessageInfo) DeepCopy() FailedMessageInfo {
   217  	return FailedMessageInfo{
   218  		OutboxRecords: (func(x []OutboxRecord) []OutboxRecord {
   219  			if x == nil {
   220  				return nil
   221  			}
   222  			ret := make([]OutboxRecord, len(x))
   223  			for i, v := range x {
   224  				vCopy := v.DeepCopy()
   225  				ret[i] = vCopy
   226  			}
   227  			return ret
   228  		})(o.OutboxRecords),
   229  		IsEphemeralPurge: o.IsEphemeralPurge,
   230  		Conv: (func(x *InboxUIItem) *InboxUIItem {
   231  			if x == nil {
   232  				return nil
   233  			}
   234  			tmp := (*x).DeepCopy()
   235  			return &tmp
   236  		})(o.Conv),
   237  	}
   238  }
   239  
   240  type MemberInfo struct {
   241  	Member string                   `codec:"member" json:"member"`
   242  	Status ConversationMemberStatus `codec:"status" json:"status"`
   243  }
   244  
   245  func (o MemberInfo) DeepCopy() MemberInfo {
   246  	return MemberInfo{
   247  		Member: o.Member,
   248  		Status: o.Status.DeepCopy(),
   249  	}
   250  }
   251  
   252  type MembersUpdateInfo struct {
   253  	ConvID  ConversationID `codec:"convID" json:"convID"`
   254  	Members []MemberInfo   `codec:"members" json:"members"`
   255  }
   256  
   257  func (o MembersUpdateInfo) DeepCopy() MembersUpdateInfo {
   258  	return MembersUpdateInfo{
   259  		ConvID: o.ConvID.DeepCopy(),
   260  		Members: (func(x []MemberInfo) []MemberInfo {
   261  			if x == nil {
   262  				return nil
   263  			}
   264  			ret := make([]MemberInfo, len(x))
   265  			for i, v := range x {
   266  				vCopy := v.DeepCopy()
   267  				ret[i] = vCopy
   268  			}
   269  			return ret
   270  		})(o.Members),
   271  	}
   272  }
   273  
   274  type TeamTypeInfo struct {
   275  	ConvID   ConversationID `codec:"convID" json:"convID"`
   276  	TeamType TeamType       `codec:"teamType" json:"teamType"`
   277  	Conv     *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
   278  }
   279  
   280  func (o TeamTypeInfo) DeepCopy() TeamTypeInfo {
   281  	return TeamTypeInfo{
   282  		ConvID:   o.ConvID.DeepCopy(),
   283  		TeamType: o.TeamType.DeepCopy(),
   284  		Conv: (func(x *InboxUIItem) *InboxUIItem {
   285  			if x == nil {
   286  				return nil
   287  			}
   288  			tmp := (*x).DeepCopy()
   289  			return &tmp
   290  		})(o.Conv),
   291  	}
   292  }
   293  
   294  type ExpungeInfo struct {
   295  	ConvID  ConversationID `codec:"convID" json:"convID"`
   296  	Expunge Expunge        `codec:"expunge" json:"expunge"`
   297  }
   298  
   299  func (o ExpungeInfo) DeepCopy() ExpungeInfo {
   300  	return ExpungeInfo{
   301  		ConvID:  o.ConvID.DeepCopy(),
   302  		Expunge: o.Expunge.DeepCopy(),
   303  	}
   304  }
   305  
   306  type EphemeralPurgeNotifInfo struct {
   307  	ConvID ConversationID `codec:"convID" json:"convID"`
   308  	Msgs   []UIMessage    `codec:"msgs" json:"msgs"`
   309  }
   310  
   311  func (o EphemeralPurgeNotifInfo) DeepCopy() EphemeralPurgeNotifInfo {
   312  	return EphemeralPurgeNotifInfo{
   313  		ConvID: o.ConvID.DeepCopy(),
   314  		Msgs: (func(x []UIMessage) []UIMessage {
   315  			if x == nil {
   316  				return nil
   317  			}
   318  			ret := make([]UIMessage, len(x))
   319  			for i, v := range x {
   320  				vCopy := v.DeepCopy()
   321  				ret[i] = vCopy
   322  			}
   323  			return ret
   324  		})(o.Msgs),
   325  	}
   326  }
   327  
   328  type ReactionUpdate struct {
   329  	Reactions   UIReactionMap `codec:"reactions" json:"reactions"`
   330  	TargetMsgID MessageID     `codec:"targetMsgID" json:"targetMsgID"`
   331  }
   332  
   333  func (o ReactionUpdate) DeepCopy() ReactionUpdate {
   334  	return ReactionUpdate{
   335  		Reactions:   o.Reactions.DeepCopy(),
   336  		TargetMsgID: o.TargetMsgID.DeepCopy(),
   337  	}
   338  }
   339  
   340  type ReactionUpdateNotif struct {
   341  	ConvID          ConversationID       `codec:"convID" json:"convID"`
   342  	UserReacjis     keybase1.UserReacjis `codec:"userReacjis" json:"userReacjis"`
   343  	ReactionUpdates []ReactionUpdate     `codec:"reactionUpdates" json:"reactionUpdates"`
   344  }
   345  
   346  func (o ReactionUpdateNotif) DeepCopy() ReactionUpdateNotif {
   347  	return ReactionUpdateNotif{
   348  		ConvID:      o.ConvID.DeepCopy(),
   349  		UserReacjis: o.UserReacjis.DeepCopy(),
   350  		ReactionUpdates: (func(x []ReactionUpdate) []ReactionUpdate {
   351  			if x == nil {
   352  				return nil
   353  			}
   354  			ret := make([]ReactionUpdate, len(x))
   355  			for i, v := range x {
   356  				vCopy := v.DeepCopy()
   357  				ret[i] = vCopy
   358  			}
   359  			return ret
   360  		})(o.ReactionUpdates),
   361  	}
   362  }
   363  
   364  type MessagesUpdated struct {
   365  	ConvID  ConversationID `codec:"convID" json:"convID"`
   366  	Updates []UIMessage    `codec:"updates" json:"updates"`
   367  }
   368  
   369  func (o MessagesUpdated) DeepCopy() MessagesUpdated {
   370  	return MessagesUpdated{
   371  		ConvID: o.ConvID.DeepCopy(),
   372  		Updates: (func(x []UIMessage) []UIMessage {
   373  			if x == nil {
   374  				return nil
   375  			}
   376  			ret := make([]UIMessage, len(x))
   377  			for i, v := range x {
   378  				vCopy := v.DeepCopy()
   379  				ret[i] = vCopy
   380  			}
   381  			return ret
   382  		})(o.Updates),
   383  	}
   384  }
   385  
   386  type ChatActivity struct {
   387  	ActivityType__               ChatActivityType                `codec:"activityType" json:"activityType"`
   388  	IncomingMessage__            *IncomingMessage                `codec:"incomingMessage,omitempty" json:"incomingMessage,omitempty"`
   389  	ReadMessage__                *ReadMessageInfo                `codec:"readMessage,omitempty" json:"readMessage,omitempty"`
   390  	NewConversation__            *NewConversationInfo            `codec:"newConversation,omitempty" json:"newConversation,omitempty"`
   391  	SetStatus__                  *SetStatusInfo                  `codec:"setStatus,omitempty" json:"setStatus,omitempty"`
   392  	FailedMessage__              *FailedMessageInfo              `codec:"failedMessage,omitempty" json:"failedMessage,omitempty"`
   393  	MembersUpdate__              *MembersUpdateInfo              `codec:"membersUpdate,omitempty" json:"membersUpdate,omitempty"`
   394  	SetAppNotificationSettings__ *SetAppNotificationSettingsInfo `codec:"setAppNotificationSettings,omitempty" json:"setAppNotificationSettings,omitempty"`
   395  	Teamtype__                   *TeamTypeInfo                   `codec:"teamtype,omitempty" json:"teamtype,omitempty"`
   396  	Expunge__                    *ExpungeInfo                    `codec:"expunge,omitempty" json:"expunge,omitempty"`
   397  	EphemeralPurge__             *EphemeralPurgeNotifInfo        `codec:"ephemeralPurge,omitempty" json:"ephemeralPurge,omitempty"`
   398  	ReactionUpdate__             *ReactionUpdateNotif            `codec:"reactionUpdate,omitempty" json:"reactionUpdate,omitempty"`
   399  	MessagesUpdated__            *MessagesUpdated                `codec:"messagesUpdated,omitempty" json:"messagesUpdated,omitempty"`
   400  }
   401  
   402  func (o *ChatActivity) ActivityType() (ret ChatActivityType, err error) {
   403  	switch o.ActivityType__ {
   404  	case ChatActivityType_INCOMING_MESSAGE:
   405  		if o.IncomingMessage__ == nil {
   406  			err = errors.New("unexpected nil value for IncomingMessage__")
   407  			return ret, err
   408  		}
   409  	case ChatActivityType_READ_MESSAGE:
   410  		if o.ReadMessage__ == nil {
   411  			err = errors.New("unexpected nil value for ReadMessage__")
   412  			return ret, err
   413  		}
   414  	case ChatActivityType_NEW_CONVERSATION:
   415  		if o.NewConversation__ == nil {
   416  			err = errors.New("unexpected nil value for NewConversation__")
   417  			return ret, err
   418  		}
   419  	case ChatActivityType_SET_STATUS:
   420  		if o.SetStatus__ == nil {
   421  			err = errors.New("unexpected nil value for SetStatus__")
   422  			return ret, err
   423  		}
   424  	case ChatActivityType_FAILED_MESSAGE:
   425  		if o.FailedMessage__ == nil {
   426  			err = errors.New("unexpected nil value for FailedMessage__")
   427  			return ret, err
   428  		}
   429  	case ChatActivityType_MEMBERS_UPDATE:
   430  		if o.MembersUpdate__ == nil {
   431  			err = errors.New("unexpected nil value for MembersUpdate__")
   432  			return ret, err
   433  		}
   434  	case ChatActivityType_SET_APP_NOTIFICATION_SETTINGS:
   435  		if o.SetAppNotificationSettings__ == nil {
   436  			err = errors.New("unexpected nil value for SetAppNotificationSettings__")
   437  			return ret, err
   438  		}
   439  	case ChatActivityType_TEAMTYPE:
   440  		if o.Teamtype__ == nil {
   441  			err = errors.New("unexpected nil value for Teamtype__")
   442  			return ret, err
   443  		}
   444  	case ChatActivityType_EXPUNGE:
   445  		if o.Expunge__ == nil {
   446  			err = errors.New("unexpected nil value for Expunge__")
   447  			return ret, err
   448  		}
   449  	case ChatActivityType_EPHEMERAL_PURGE:
   450  		if o.EphemeralPurge__ == nil {
   451  			err = errors.New("unexpected nil value for EphemeralPurge__")
   452  			return ret, err
   453  		}
   454  	case ChatActivityType_REACTION_UPDATE:
   455  		if o.ReactionUpdate__ == nil {
   456  			err = errors.New("unexpected nil value for ReactionUpdate__")
   457  			return ret, err
   458  		}
   459  	case ChatActivityType_MESSAGES_UPDATED:
   460  		if o.MessagesUpdated__ == nil {
   461  			err = errors.New("unexpected nil value for MessagesUpdated__")
   462  			return ret, err
   463  		}
   464  	}
   465  	return o.ActivityType__, nil
   466  }
   467  
   468  func (o ChatActivity) IncomingMessage() (res IncomingMessage) {
   469  	if o.ActivityType__ != ChatActivityType_INCOMING_MESSAGE {
   470  		panic("wrong case accessed")
   471  	}
   472  	if o.IncomingMessage__ == nil {
   473  		return
   474  	}
   475  	return *o.IncomingMessage__
   476  }
   477  
   478  func (o ChatActivity) ReadMessage() (res ReadMessageInfo) {
   479  	if o.ActivityType__ != ChatActivityType_READ_MESSAGE {
   480  		panic("wrong case accessed")
   481  	}
   482  	if o.ReadMessage__ == nil {
   483  		return
   484  	}
   485  	return *o.ReadMessage__
   486  }
   487  
   488  func (o ChatActivity) NewConversation() (res NewConversationInfo) {
   489  	if o.ActivityType__ != ChatActivityType_NEW_CONVERSATION {
   490  		panic("wrong case accessed")
   491  	}
   492  	if o.NewConversation__ == nil {
   493  		return
   494  	}
   495  	return *o.NewConversation__
   496  }
   497  
   498  func (o ChatActivity) SetStatus() (res SetStatusInfo) {
   499  	if o.ActivityType__ != ChatActivityType_SET_STATUS {
   500  		panic("wrong case accessed")
   501  	}
   502  	if o.SetStatus__ == nil {
   503  		return
   504  	}
   505  	return *o.SetStatus__
   506  }
   507  
   508  func (o ChatActivity) FailedMessage() (res FailedMessageInfo) {
   509  	if o.ActivityType__ != ChatActivityType_FAILED_MESSAGE {
   510  		panic("wrong case accessed")
   511  	}
   512  	if o.FailedMessage__ == nil {
   513  		return
   514  	}
   515  	return *o.FailedMessage__
   516  }
   517  
   518  func (o ChatActivity) MembersUpdate() (res MembersUpdateInfo) {
   519  	if o.ActivityType__ != ChatActivityType_MEMBERS_UPDATE {
   520  		panic("wrong case accessed")
   521  	}
   522  	if o.MembersUpdate__ == nil {
   523  		return
   524  	}
   525  	return *o.MembersUpdate__
   526  }
   527  
   528  func (o ChatActivity) SetAppNotificationSettings() (res SetAppNotificationSettingsInfo) {
   529  	if o.ActivityType__ != ChatActivityType_SET_APP_NOTIFICATION_SETTINGS {
   530  		panic("wrong case accessed")
   531  	}
   532  	if o.SetAppNotificationSettings__ == nil {
   533  		return
   534  	}
   535  	return *o.SetAppNotificationSettings__
   536  }
   537  
   538  func (o ChatActivity) Teamtype() (res TeamTypeInfo) {
   539  	if o.ActivityType__ != ChatActivityType_TEAMTYPE {
   540  		panic("wrong case accessed")
   541  	}
   542  	if o.Teamtype__ == nil {
   543  		return
   544  	}
   545  	return *o.Teamtype__
   546  }
   547  
   548  func (o ChatActivity) Expunge() (res ExpungeInfo) {
   549  	if o.ActivityType__ != ChatActivityType_EXPUNGE {
   550  		panic("wrong case accessed")
   551  	}
   552  	if o.Expunge__ == nil {
   553  		return
   554  	}
   555  	return *o.Expunge__
   556  }
   557  
   558  func (o ChatActivity) EphemeralPurge() (res EphemeralPurgeNotifInfo) {
   559  	if o.ActivityType__ != ChatActivityType_EPHEMERAL_PURGE {
   560  		panic("wrong case accessed")
   561  	}
   562  	if o.EphemeralPurge__ == nil {
   563  		return
   564  	}
   565  	return *o.EphemeralPurge__
   566  }
   567  
   568  func (o ChatActivity) ReactionUpdate() (res ReactionUpdateNotif) {
   569  	if o.ActivityType__ != ChatActivityType_REACTION_UPDATE {
   570  		panic("wrong case accessed")
   571  	}
   572  	if o.ReactionUpdate__ == nil {
   573  		return
   574  	}
   575  	return *o.ReactionUpdate__
   576  }
   577  
   578  func (o ChatActivity) MessagesUpdated() (res MessagesUpdated) {
   579  	if o.ActivityType__ != ChatActivityType_MESSAGES_UPDATED {
   580  		panic("wrong case accessed")
   581  	}
   582  	if o.MessagesUpdated__ == nil {
   583  		return
   584  	}
   585  	return *o.MessagesUpdated__
   586  }
   587  
   588  func NewChatActivityWithIncomingMessage(v IncomingMessage) ChatActivity {
   589  	return ChatActivity{
   590  		ActivityType__:    ChatActivityType_INCOMING_MESSAGE,
   591  		IncomingMessage__: &v,
   592  	}
   593  }
   594  
   595  func NewChatActivityWithReadMessage(v ReadMessageInfo) ChatActivity {
   596  	return ChatActivity{
   597  		ActivityType__: ChatActivityType_READ_MESSAGE,
   598  		ReadMessage__:  &v,
   599  	}
   600  }
   601  
   602  func NewChatActivityWithNewConversation(v NewConversationInfo) ChatActivity {
   603  	return ChatActivity{
   604  		ActivityType__:    ChatActivityType_NEW_CONVERSATION,
   605  		NewConversation__: &v,
   606  	}
   607  }
   608  
   609  func NewChatActivityWithSetStatus(v SetStatusInfo) ChatActivity {
   610  	return ChatActivity{
   611  		ActivityType__: ChatActivityType_SET_STATUS,
   612  		SetStatus__:    &v,
   613  	}
   614  }
   615  
   616  func NewChatActivityWithFailedMessage(v FailedMessageInfo) ChatActivity {
   617  	return ChatActivity{
   618  		ActivityType__:  ChatActivityType_FAILED_MESSAGE,
   619  		FailedMessage__: &v,
   620  	}
   621  }
   622  
   623  func NewChatActivityWithMembersUpdate(v MembersUpdateInfo) ChatActivity {
   624  	return ChatActivity{
   625  		ActivityType__:  ChatActivityType_MEMBERS_UPDATE,
   626  		MembersUpdate__: &v,
   627  	}
   628  }
   629  
   630  func NewChatActivityWithSetAppNotificationSettings(v SetAppNotificationSettingsInfo) ChatActivity {
   631  	return ChatActivity{
   632  		ActivityType__:               ChatActivityType_SET_APP_NOTIFICATION_SETTINGS,
   633  		SetAppNotificationSettings__: &v,
   634  	}
   635  }
   636  
   637  func NewChatActivityWithTeamtype(v TeamTypeInfo) ChatActivity {
   638  	return ChatActivity{
   639  		ActivityType__: ChatActivityType_TEAMTYPE,
   640  		Teamtype__:     &v,
   641  	}
   642  }
   643  
   644  func NewChatActivityWithExpunge(v ExpungeInfo) ChatActivity {
   645  	return ChatActivity{
   646  		ActivityType__: ChatActivityType_EXPUNGE,
   647  		Expunge__:      &v,
   648  	}
   649  }
   650  
   651  func NewChatActivityWithEphemeralPurge(v EphemeralPurgeNotifInfo) ChatActivity {
   652  	return ChatActivity{
   653  		ActivityType__:   ChatActivityType_EPHEMERAL_PURGE,
   654  		EphemeralPurge__: &v,
   655  	}
   656  }
   657  
   658  func NewChatActivityWithReactionUpdate(v ReactionUpdateNotif) ChatActivity {
   659  	return ChatActivity{
   660  		ActivityType__:   ChatActivityType_REACTION_UPDATE,
   661  		ReactionUpdate__: &v,
   662  	}
   663  }
   664  
   665  func NewChatActivityWithMessagesUpdated(v MessagesUpdated) ChatActivity {
   666  	return ChatActivity{
   667  		ActivityType__:    ChatActivityType_MESSAGES_UPDATED,
   668  		MessagesUpdated__: &v,
   669  	}
   670  }
   671  
   672  func (o ChatActivity) DeepCopy() ChatActivity {
   673  	return ChatActivity{
   674  		ActivityType__: o.ActivityType__.DeepCopy(),
   675  		IncomingMessage__: (func(x *IncomingMessage) *IncomingMessage {
   676  			if x == nil {
   677  				return nil
   678  			}
   679  			tmp := (*x).DeepCopy()
   680  			return &tmp
   681  		})(o.IncomingMessage__),
   682  		ReadMessage__: (func(x *ReadMessageInfo) *ReadMessageInfo {
   683  			if x == nil {
   684  				return nil
   685  			}
   686  			tmp := (*x).DeepCopy()
   687  			return &tmp
   688  		})(o.ReadMessage__),
   689  		NewConversation__: (func(x *NewConversationInfo) *NewConversationInfo {
   690  			if x == nil {
   691  				return nil
   692  			}
   693  			tmp := (*x).DeepCopy()
   694  			return &tmp
   695  		})(o.NewConversation__),
   696  		SetStatus__: (func(x *SetStatusInfo) *SetStatusInfo {
   697  			if x == nil {
   698  				return nil
   699  			}
   700  			tmp := (*x).DeepCopy()
   701  			return &tmp
   702  		})(o.SetStatus__),
   703  		FailedMessage__: (func(x *FailedMessageInfo) *FailedMessageInfo {
   704  			if x == nil {
   705  				return nil
   706  			}
   707  			tmp := (*x).DeepCopy()
   708  			return &tmp
   709  		})(o.FailedMessage__),
   710  		MembersUpdate__: (func(x *MembersUpdateInfo) *MembersUpdateInfo {
   711  			if x == nil {
   712  				return nil
   713  			}
   714  			tmp := (*x).DeepCopy()
   715  			return &tmp
   716  		})(o.MembersUpdate__),
   717  		SetAppNotificationSettings__: (func(x *SetAppNotificationSettingsInfo) *SetAppNotificationSettingsInfo {
   718  			if x == nil {
   719  				return nil
   720  			}
   721  			tmp := (*x).DeepCopy()
   722  			return &tmp
   723  		})(o.SetAppNotificationSettings__),
   724  		Teamtype__: (func(x *TeamTypeInfo) *TeamTypeInfo {
   725  			if x == nil {
   726  				return nil
   727  			}
   728  			tmp := (*x).DeepCopy()
   729  			return &tmp
   730  		})(o.Teamtype__),
   731  		Expunge__: (func(x *ExpungeInfo) *ExpungeInfo {
   732  			if x == nil {
   733  				return nil
   734  			}
   735  			tmp := (*x).DeepCopy()
   736  			return &tmp
   737  		})(o.Expunge__),
   738  		EphemeralPurge__: (func(x *EphemeralPurgeNotifInfo) *EphemeralPurgeNotifInfo {
   739  			if x == nil {
   740  				return nil
   741  			}
   742  			tmp := (*x).DeepCopy()
   743  			return &tmp
   744  		})(o.EphemeralPurge__),
   745  		ReactionUpdate__: (func(x *ReactionUpdateNotif) *ReactionUpdateNotif {
   746  			if x == nil {
   747  				return nil
   748  			}
   749  			tmp := (*x).DeepCopy()
   750  			return &tmp
   751  		})(o.ReactionUpdate__),
   752  		MessagesUpdated__: (func(x *MessagesUpdated) *MessagesUpdated {
   753  			if x == nil {
   754  				return nil
   755  			}
   756  			tmp := (*x).DeepCopy()
   757  			return &tmp
   758  		})(o.MessagesUpdated__),
   759  	}
   760  }
   761  
   762  type TyperInfo struct {
   763  	Uid      keybase1.UID      `codec:"uid" json:"uid"`
   764  	Username string            `codec:"username" json:"username"`
   765  	DeviceID keybase1.DeviceID `codec:"deviceID" json:"deviceID"`
   766  }
   767  
   768  func (o TyperInfo) DeepCopy() TyperInfo {
   769  	return TyperInfo{
   770  		Uid:      o.Uid.DeepCopy(),
   771  		Username: o.Username,
   772  		DeviceID: o.DeviceID.DeepCopy(),
   773  	}
   774  }
   775  
   776  type ConvTypingUpdate struct {
   777  	ConvID ConversationID `codec:"convID" json:"convID"`
   778  	Typers []TyperInfo    `codec:"typers" json:"typers"`
   779  }
   780  
   781  func (o ConvTypingUpdate) DeepCopy() ConvTypingUpdate {
   782  	return ConvTypingUpdate{
   783  		ConvID: o.ConvID.DeepCopy(),
   784  		Typers: (func(x []TyperInfo) []TyperInfo {
   785  			if x == nil {
   786  				return nil
   787  			}
   788  			ret := make([]TyperInfo, len(x))
   789  			for i, v := range x {
   790  				vCopy := v.DeepCopy()
   791  				ret[i] = vCopy
   792  			}
   793  			return ret
   794  		})(o.Typers),
   795  	}
   796  }
   797  
   798  type StaleUpdateType int
   799  
   800  const (
   801  	StaleUpdateType_CLEAR       StaleUpdateType = 0
   802  	StaleUpdateType_NEWACTIVITY StaleUpdateType = 1
   803  )
   804  
   805  func (o StaleUpdateType) DeepCopy() StaleUpdateType { return o }
   806  
   807  var StaleUpdateTypeMap = map[string]StaleUpdateType{
   808  	"CLEAR":       0,
   809  	"NEWACTIVITY": 1,
   810  }
   811  
   812  var StaleUpdateTypeRevMap = map[StaleUpdateType]string{
   813  	0: "CLEAR",
   814  	1: "NEWACTIVITY",
   815  }
   816  
   817  func (e StaleUpdateType) String() string {
   818  	if v, ok := StaleUpdateTypeRevMap[e]; ok {
   819  		return v
   820  	}
   821  	return fmt.Sprintf("%v", int(e))
   822  }
   823  
   824  type ConversationStaleUpdate struct {
   825  	ConvID     ConversationID  `codec:"convID" json:"convID"`
   826  	UpdateType StaleUpdateType `codec:"updateType" json:"updateType"`
   827  }
   828  
   829  func (o ConversationStaleUpdate) DeepCopy() ConversationStaleUpdate {
   830  	return ConversationStaleUpdate{
   831  		ConvID:     o.ConvID.DeepCopy(),
   832  		UpdateType: o.UpdateType.DeepCopy(),
   833  	}
   834  }
   835  
   836  type ChatSyncIncrementalConv struct {
   837  	Conv        UnverifiedInboxUIItem `codec:"conv" json:"conv"`
   838  	ShouldUnbox bool                  `codec:"shouldUnbox" json:"shouldUnbox"`
   839  }
   840  
   841  func (o ChatSyncIncrementalConv) DeepCopy() ChatSyncIncrementalConv {
   842  	return ChatSyncIncrementalConv{
   843  		Conv:        o.Conv.DeepCopy(),
   844  		ShouldUnbox: o.ShouldUnbox,
   845  	}
   846  }
   847  
   848  type ChatSyncIncrementalInfo struct {
   849  	Items    []ChatSyncIncrementalConv `codec:"items" json:"items"`
   850  	Removals []string                  `codec:"removals" json:"removals"`
   851  }
   852  
   853  func (o ChatSyncIncrementalInfo) DeepCopy() ChatSyncIncrementalInfo {
   854  	return ChatSyncIncrementalInfo{
   855  		Items: (func(x []ChatSyncIncrementalConv) []ChatSyncIncrementalConv {
   856  			if x == nil {
   857  				return nil
   858  			}
   859  			ret := make([]ChatSyncIncrementalConv, len(x))
   860  			for i, v := range x {
   861  				vCopy := v.DeepCopy()
   862  				ret[i] = vCopy
   863  			}
   864  			return ret
   865  		})(o.Items),
   866  		Removals: (func(x []string) []string {
   867  			if x == nil {
   868  				return nil
   869  			}
   870  			ret := make([]string, len(x))
   871  			for i, v := range x {
   872  				vCopy := v
   873  				ret[i] = vCopy
   874  			}
   875  			return ret
   876  		})(o.Removals),
   877  	}
   878  }
   879  
   880  type ChatSyncResult struct {
   881  	SyncType__    SyncInboxResType         `codec:"syncType" json:"syncType"`
   882  	Incremental__ *ChatSyncIncrementalInfo `codec:"incremental,omitempty" json:"incremental,omitempty"`
   883  }
   884  
   885  func (o *ChatSyncResult) SyncType() (ret SyncInboxResType, err error) {
   886  	switch o.SyncType__ {
   887  	case SyncInboxResType_INCREMENTAL:
   888  		if o.Incremental__ == nil {
   889  			err = errors.New("unexpected nil value for Incremental__")
   890  			return ret, err
   891  		}
   892  	}
   893  	return o.SyncType__, nil
   894  }
   895  
   896  func (o ChatSyncResult) Incremental() (res ChatSyncIncrementalInfo) {
   897  	if o.SyncType__ != SyncInboxResType_INCREMENTAL {
   898  		panic("wrong case accessed")
   899  	}
   900  	if o.Incremental__ == nil {
   901  		return
   902  	}
   903  	return *o.Incremental__
   904  }
   905  
   906  func NewChatSyncResultWithCurrent() ChatSyncResult {
   907  	return ChatSyncResult{
   908  		SyncType__: SyncInboxResType_CURRENT,
   909  	}
   910  }
   911  
   912  func NewChatSyncResultWithClear() ChatSyncResult {
   913  	return ChatSyncResult{
   914  		SyncType__: SyncInboxResType_CLEAR,
   915  	}
   916  }
   917  
   918  func NewChatSyncResultWithIncremental(v ChatSyncIncrementalInfo) ChatSyncResult {
   919  	return ChatSyncResult{
   920  		SyncType__:    SyncInboxResType_INCREMENTAL,
   921  		Incremental__: &v,
   922  	}
   923  }
   924  
   925  func (o ChatSyncResult) DeepCopy() ChatSyncResult {
   926  	return ChatSyncResult{
   927  		SyncType__: o.SyncType__.DeepCopy(),
   928  		Incremental__: (func(x *ChatSyncIncrementalInfo) *ChatSyncIncrementalInfo {
   929  			if x == nil {
   930  				return nil
   931  			}
   932  			tmp := (*x).DeepCopy()
   933  			return &tmp
   934  		})(o.Incremental__),
   935  	}
   936  }
   937  
   938  type NewChatActivityArg struct {
   939  	Uid      keybase1.UID       `codec:"uid" json:"uid"`
   940  	Activity ChatActivity       `codec:"activity" json:"activity"`
   941  	Source   ChatActivitySource `codec:"source" json:"source"`
   942  }
   943  
   944  type ChatIdentifyUpdateArg struct {
   945  	Update keybase1.CanonicalTLFNameAndIDWithBreaks `codec:"update" json:"update"`
   946  }
   947  
   948  type ChatTLFFinalizeArg struct {
   949  	Uid          keybase1.UID             `codec:"uid" json:"uid"`
   950  	ConvID       ConversationID           `codec:"convID" json:"convID"`
   951  	FinalizeInfo ConversationFinalizeInfo `codec:"finalizeInfo" json:"finalizeInfo"`
   952  	Conv         *InboxUIItem             `codec:"conv,omitempty" json:"conv,omitempty"`
   953  }
   954  
   955  type ChatTLFResolveArg struct {
   956  	Uid         keybase1.UID            `codec:"uid" json:"uid"`
   957  	ConvID      ConversationID          `codec:"convID" json:"convID"`
   958  	ResolveInfo ConversationResolveInfo `codec:"resolveInfo" json:"resolveInfo"`
   959  }
   960  
   961  type ChatInboxStaleArg struct {
   962  	Uid keybase1.UID `codec:"uid" json:"uid"`
   963  }
   964  
   965  type ChatThreadsStaleArg struct {
   966  	Uid     keybase1.UID              `codec:"uid" json:"uid"`
   967  	Updates []ConversationStaleUpdate `codec:"updates" json:"updates"`
   968  }
   969  
   970  type ChatTypingUpdateArg struct {
   971  	TypingUpdates []ConvTypingUpdate `codec:"typingUpdates" json:"typingUpdates"`
   972  }
   973  
   974  type ChatJoinedConversationArg struct {
   975  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
   976  	ConvID ConversationID `codec:"convID" json:"convID"`
   977  	Conv   *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
   978  }
   979  
   980  type ChatLeftConversationArg struct {
   981  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
   982  	ConvID ConversationID `codec:"convID" json:"convID"`
   983  }
   984  
   985  type ChatResetConversationArg struct {
   986  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
   987  	ConvID ConversationID `codec:"convID" json:"convID"`
   988  }
   989  
   990  type ChatInboxSyncStartedArg struct {
   991  	Uid keybase1.UID `codec:"uid" json:"uid"`
   992  }
   993  
   994  type ChatInboxSyncedArg struct {
   995  	Uid     keybase1.UID   `codec:"uid" json:"uid"`
   996  	SyncRes ChatSyncResult `codec:"syncRes" json:"syncRes"`
   997  }
   998  
   999  type ChatSetConvRetentionArg struct {
  1000  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1001  	ConvID ConversationID `codec:"convID" json:"convID"`
  1002  	Conv   *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
  1003  }
  1004  
  1005  type ChatSetTeamRetentionArg struct {
  1006  	Uid    keybase1.UID    `codec:"uid" json:"uid"`
  1007  	TeamID keybase1.TeamID `codec:"teamID" json:"teamID"`
  1008  	Convs  []InboxUIItem   `codec:"convs" json:"convs"`
  1009  }
  1010  
  1011  type ChatSetConvSettingsArg struct {
  1012  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1013  	ConvID ConversationID `codec:"convID" json:"convID"`
  1014  	Conv   *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
  1015  }
  1016  
  1017  type ChatSubteamRenameArg struct {
  1018  	Uid   keybase1.UID  `codec:"uid" json:"uid"`
  1019  	Convs []InboxUIItem `codec:"convs" json:"convs"`
  1020  }
  1021  
  1022  type ChatKBFSToImpteamUpgradeArg struct {
  1023  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1024  	ConvID ConversationID `codec:"convID" json:"convID"`
  1025  }
  1026  
  1027  type ChatAttachmentUploadStartArg struct {
  1028  	Uid      keybase1.UID   `codec:"uid" json:"uid"`
  1029  	ConvID   ConversationID `codec:"convID" json:"convID"`
  1030  	OutboxID OutboxID       `codec:"outboxID" json:"outboxID"`
  1031  }
  1032  
  1033  type ChatAttachmentUploadProgressArg struct {
  1034  	Uid           keybase1.UID   `codec:"uid" json:"uid"`
  1035  	ConvID        ConversationID `codec:"convID" json:"convID"`
  1036  	OutboxID      OutboxID       `codec:"outboxID" json:"outboxID"`
  1037  	BytesComplete int64          `codec:"bytesComplete" json:"bytesComplete"`
  1038  	BytesTotal    int64          `codec:"bytesTotal" json:"bytesTotal"`
  1039  }
  1040  
  1041  type ChatAttachmentDownloadProgressArg struct {
  1042  	Uid           keybase1.UID   `codec:"uid" json:"uid"`
  1043  	ConvID        ConversationID `codec:"convID" json:"convID"`
  1044  	MsgID         MessageID      `codec:"msgID" json:"msgID"`
  1045  	BytesComplete int64          `codec:"bytesComplete" json:"bytesComplete"`
  1046  	BytesTotal    int64          `codec:"bytesTotal" json:"bytesTotal"`
  1047  }
  1048  
  1049  type ChatAttachmentDownloadCompleteArg struct {
  1050  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1051  	ConvID ConversationID `codec:"convID" json:"convID"`
  1052  	MsgID  MessageID      `codec:"msgID" json:"msgID"`
  1053  }
  1054  
  1055  type ChatArchiveProgressArg struct {
  1056  	JobID            ArchiveJobID `codec:"jobID" json:"jobID"`
  1057  	MessagesComplete int64        `codec:"messagesComplete" json:"messagesComplete"`
  1058  	MessagesTotal    int64        `codec:"messagesTotal" json:"messagesTotal"`
  1059  }
  1060  
  1061  type ChatArchiveCompleteArg struct {
  1062  	JobID ArchiveJobID `codec:"jobID" json:"jobID"`
  1063  }
  1064  
  1065  type ChatPaymentInfoArg struct {
  1066  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1067  	ConvID ConversationID `codec:"convID" json:"convID"`
  1068  	MsgID  MessageID      `codec:"msgID" json:"msgID"`
  1069  	Info   UIPaymentInfo  `codec:"info" json:"info"`
  1070  }
  1071  
  1072  type ChatRequestInfoArg struct {
  1073  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1074  	ConvID ConversationID `codec:"convID" json:"convID"`
  1075  	MsgID  MessageID      `codec:"msgID" json:"msgID"`
  1076  	Info   UIRequestInfo  `codec:"info" json:"info"`
  1077  }
  1078  
  1079  type ChatPromptUnfurlArg struct {
  1080  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1081  	ConvID ConversationID `codec:"convID" json:"convID"`
  1082  	MsgID  MessageID      `codec:"msgID" json:"msgID"`
  1083  	Domain string         `codec:"domain" json:"domain"`
  1084  }
  1085  
  1086  type ChatConvUpdateArg struct {
  1087  	Uid    keybase1.UID   `codec:"uid" json:"uid"`
  1088  	ConvID ConversationID `codec:"convID" json:"convID"`
  1089  	Conv   *InboxUIItem   `codec:"conv,omitempty" json:"conv,omitempty"`
  1090  }
  1091  
  1092  type ChatWelcomeMessageLoadedArg struct {
  1093  	TeamID  keybase1.TeamID       `codec:"teamID" json:"teamID"`
  1094  	Message WelcomeMessageDisplay `codec:"message" json:"message"`
  1095  }
  1096  
  1097  type ChatParticipantsInfoArg struct {
  1098  	Participants map[ConvIDStr][]UIParticipant `codec:"participants" json:"participants"`
  1099  }
  1100  
  1101  type NotifyChatInterface interface {
  1102  	NewChatActivity(context.Context, NewChatActivityArg) error
  1103  	ChatIdentifyUpdate(context.Context, keybase1.CanonicalTLFNameAndIDWithBreaks) error
  1104  	ChatTLFFinalize(context.Context, ChatTLFFinalizeArg) error
  1105  	ChatTLFResolve(context.Context, ChatTLFResolveArg) error
  1106  	ChatInboxStale(context.Context, keybase1.UID) error
  1107  	ChatThreadsStale(context.Context, ChatThreadsStaleArg) error
  1108  	ChatTypingUpdate(context.Context, []ConvTypingUpdate) error
  1109  	ChatJoinedConversation(context.Context, ChatJoinedConversationArg) error
  1110  	ChatLeftConversation(context.Context, ChatLeftConversationArg) error
  1111  	ChatResetConversation(context.Context, ChatResetConversationArg) error
  1112  	ChatInboxSyncStarted(context.Context, keybase1.UID) error
  1113  	ChatInboxSynced(context.Context, ChatInboxSyncedArg) error
  1114  	ChatSetConvRetention(context.Context, ChatSetConvRetentionArg) error
  1115  	ChatSetTeamRetention(context.Context, ChatSetTeamRetentionArg) error
  1116  	ChatSetConvSettings(context.Context, ChatSetConvSettingsArg) error
  1117  	ChatSubteamRename(context.Context, ChatSubteamRenameArg) error
  1118  	ChatKBFSToImpteamUpgrade(context.Context, ChatKBFSToImpteamUpgradeArg) error
  1119  	ChatAttachmentUploadStart(context.Context, ChatAttachmentUploadStartArg) error
  1120  	ChatAttachmentUploadProgress(context.Context, ChatAttachmentUploadProgressArg) error
  1121  	ChatAttachmentDownloadProgress(context.Context, ChatAttachmentDownloadProgressArg) error
  1122  	ChatAttachmentDownloadComplete(context.Context, ChatAttachmentDownloadCompleteArg) error
  1123  	ChatArchiveProgress(context.Context, ChatArchiveProgressArg) error
  1124  	ChatArchiveComplete(context.Context, ArchiveJobID) error
  1125  	ChatPaymentInfo(context.Context, ChatPaymentInfoArg) error
  1126  	ChatRequestInfo(context.Context, ChatRequestInfoArg) error
  1127  	ChatPromptUnfurl(context.Context, ChatPromptUnfurlArg) error
  1128  	ChatConvUpdate(context.Context, ChatConvUpdateArg) error
  1129  	ChatWelcomeMessageLoaded(context.Context, ChatWelcomeMessageLoadedArg) error
  1130  	ChatParticipantsInfo(context.Context, map[ConvIDStr][]UIParticipant) error
  1131  }
  1132  
  1133  func NotifyChatProtocol(i NotifyChatInterface) rpc.Protocol {
  1134  	return rpc.Protocol{
  1135  		Name: "chat.1.NotifyChat",
  1136  		Methods: map[string]rpc.ServeHandlerDescription{
  1137  			"NewChatActivity": {
  1138  				MakeArg: func() interface{} {
  1139  					var ret [1]NewChatActivityArg
  1140  					return &ret
  1141  				},
  1142  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1143  					typedArgs, ok := args.(*[1]NewChatActivityArg)
  1144  					if !ok {
  1145  						err = rpc.NewTypeError((*[1]NewChatActivityArg)(nil), args)
  1146  						return
  1147  					}
  1148  					err = i.NewChatActivity(ctx, typedArgs[0])
  1149  					return
  1150  				},
  1151  			},
  1152  			"ChatIdentifyUpdate": {
  1153  				MakeArg: func() interface{} {
  1154  					var ret [1]ChatIdentifyUpdateArg
  1155  					return &ret
  1156  				},
  1157  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1158  					typedArgs, ok := args.(*[1]ChatIdentifyUpdateArg)
  1159  					if !ok {
  1160  						err = rpc.NewTypeError((*[1]ChatIdentifyUpdateArg)(nil), args)
  1161  						return
  1162  					}
  1163  					err = i.ChatIdentifyUpdate(ctx, typedArgs[0].Update)
  1164  					return
  1165  				},
  1166  			},
  1167  			"ChatTLFFinalize": {
  1168  				MakeArg: func() interface{} {
  1169  					var ret [1]ChatTLFFinalizeArg
  1170  					return &ret
  1171  				},
  1172  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1173  					typedArgs, ok := args.(*[1]ChatTLFFinalizeArg)
  1174  					if !ok {
  1175  						err = rpc.NewTypeError((*[1]ChatTLFFinalizeArg)(nil), args)
  1176  						return
  1177  					}
  1178  					err = i.ChatTLFFinalize(ctx, typedArgs[0])
  1179  					return
  1180  				},
  1181  			},
  1182  			"ChatTLFResolve": {
  1183  				MakeArg: func() interface{} {
  1184  					var ret [1]ChatTLFResolveArg
  1185  					return &ret
  1186  				},
  1187  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1188  					typedArgs, ok := args.(*[1]ChatTLFResolveArg)
  1189  					if !ok {
  1190  						err = rpc.NewTypeError((*[1]ChatTLFResolveArg)(nil), args)
  1191  						return
  1192  					}
  1193  					err = i.ChatTLFResolve(ctx, typedArgs[0])
  1194  					return
  1195  				},
  1196  			},
  1197  			"ChatInboxStale": {
  1198  				MakeArg: func() interface{} {
  1199  					var ret [1]ChatInboxStaleArg
  1200  					return &ret
  1201  				},
  1202  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1203  					typedArgs, ok := args.(*[1]ChatInboxStaleArg)
  1204  					if !ok {
  1205  						err = rpc.NewTypeError((*[1]ChatInboxStaleArg)(nil), args)
  1206  						return
  1207  					}
  1208  					err = i.ChatInboxStale(ctx, typedArgs[0].Uid)
  1209  					return
  1210  				},
  1211  			},
  1212  			"ChatThreadsStale": {
  1213  				MakeArg: func() interface{} {
  1214  					var ret [1]ChatThreadsStaleArg
  1215  					return &ret
  1216  				},
  1217  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1218  					typedArgs, ok := args.(*[1]ChatThreadsStaleArg)
  1219  					if !ok {
  1220  						err = rpc.NewTypeError((*[1]ChatThreadsStaleArg)(nil), args)
  1221  						return
  1222  					}
  1223  					err = i.ChatThreadsStale(ctx, typedArgs[0])
  1224  					return
  1225  				},
  1226  			},
  1227  			"ChatTypingUpdate": {
  1228  				MakeArg: func() interface{} {
  1229  					var ret [1]ChatTypingUpdateArg
  1230  					return &ret
  1231  				},
  1232  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1233  					typedArgs, ok := args.(*[1]ChatTypingUpdateArg)
  1234  					if !ok {
  1235  						err = rpc.NewTypeError((*[1]ChatTypingUpdateArg)(nil), args)
  1236  						return
  1237  					}
  1238  					err = i.ChatTypingUpdate(ctx, typedArgs[0].TypingUpdates)
  1239  					return
  1240  				},
  1241  			},
  1242  			"ChatJoinedConversation": {
  1243  				MakeArg: func() interface{} {
  1244  					var ret [1]ChatJoinedConversationArg
  1245  					return &ret
  1246  				},
  1247  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1248  					typedArgs, ok := args.(*[1]ChatJoinedConversationArg)
  1249  					if !ok {
  1250  						err = rpc.NewTypeError((*[1]ChatJoinedConversationArg)(nil), args)
  1251  						return
  1252  					}
  1253  					err = i.ChatJoinedConversation(ctx, typedArgs[0])
  1254  					return
  1255  				},
  1256  			},
  1257  			"ChatLeftConversation": {
  1258  				MakeArg: func() interface{} {
  1259  					var ret [1]ChatLeftConversationArg
  1260  					return &ret
  1261  				},
  1262  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1263  					typedArgs, ok := args.(*[1]ChatLeftConversationArg)
  1264  					if !ok {
  1265  						err = rpc.NewTypeError((*[1]ChatLeftConversationArg)(nil), args)
  1266  						return
  1267  					}
  1268  					err = i.ChatLeftConversation(ctx, typedArgs[0])
  1269  					return
  1270  				},
  1271  			},
  1272  			"ChatResetConversation": {
  1273  				MakeArg: func() interface{} {
  1274  					var ret [1]ChatResetConversationArg
  1275  					return &ret
  1276  				},
  1277  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1278  					typedArgs, ok := args.(*[1]ChatResetConversationArg)
  1279  					if !ok {
  1280  						err = rpc.NewTypeError((*[1]ChatResetConversationArg)(nil), args)
  1281  						return
  1282  					}
  1283  					err = i.ChatResetConversation(ctx, typedArgs[0])
  1284  					return
  1285  				},
  1286  			},
  1287  			"ChatInboxSyncStarted": {
  1288  				MakeArg: func() interface{} {
  1289  					var ret [1]ChatInboxSyncStartedArg
  1290  					return &ret
  1291  				},
  1292  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1293  					typedArgs, ok := args.(*[1]ChatInboxSyncStartedArg)
  1294  					if !ok {
  1295  						err = rpc.NewTypeError((*[1]ChatInboxSyncStartedArg)(nil), args)
  1296  						return
  1297  					}
  1298  					err = i.ChatInboxSyncStarted(ctx, typedArgs[0].Uid)
  1299  					return
  1300  				},
  1301  			},
  1302  			"ChatInboxSynced": {
  1303  				MakeArg: func() interface{} {
  1304  					var ret [1]ChatInboxSyncedArg
  1305  					return &ret
  1306  				},
  1307  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1308  					typedArgs, ok := args.(*[1]ChatInboxSyncedArg)
  1309  					if !ok {
  1310  						err = rpc.NewTypeError((*[1]ChatInboxSyncedArg)(nil), args)
  1311  						return
  1312  					}
  1313  					err = i.ChatInboxSynced(ctx, typedArgs[0])
  1314  					return
  1315  				},
  1316  			},
  1317  			"ChatSetConvRetention": {
  1318  				MakeArg: func() interface{} {
  1319  					var ret [1]ChatSetConvRetentionArg
  1320  					return &ret
  1321  				},
  1322  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1323  					typedArgs, ok := args.(*[1]ChatSetConvRetentionArg)
  1324  					if !ok {
  1325  						err = rpc.NewTypeError((*[1]ChatSetConvRetentionArg)(nil), args)
  1326  						return
  1327  					}
  1328  					err = i.ChatSetConvRetention(ctx, typedArgs[0])
  1329  					return
  1330  				},
  1331  			},
  1332  			"ChatSetTeamRetention": {
  1333  				MakeArg: func() interface{} {
  1334  					var ret [1]ChatSetTeamRetentionArg
  1335  					return &ret
  1336  				},
  1337  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1338  					typedArgs, ok := args.(*[1]ChatSetTeamRetentionArg)
  1339  					if !ok {
  1340  						err = rpc.NewTypeError((*[1]ChatSetTeamRetentionArg)(nil), args)
  1341  						return
  1342  					}
  1343  					err = i.ChatSetTeamRetention(ctx, typedArgs[0])
  1344  					return
  1345  				},
  1346  			},
  1347  			"ChatSetConvSettings": {
  1348  				MakeArg: func() interface{} {
  1349  					var ret [1]ChatSetConvSettingsArg
  1350  					return &ret
  1351  				},
  1352  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1353  					typedArgs, ok := args.(*[1]ChatSetConvSettingsArg)
  1354  					if !ok {
  1355  						err = rpc.NewTypeError((*[1]ChatSetConvSettingsArg)(nil), args)
  1356  						return
  1357  					}
  1358  					err = i.ChatSetConvSettings(ctx, typedArgs[0])
  1359  					return
  1360  				},
  1361  			},
  1362  			"ChatSubteamRename": {
  1363  				MakeArg: func() interface{} {
  1364  					var ret [1]ChatSubteamRenameArg
  1365  					return &ret
  1366  				},
  1367  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1368  					typedArgs, ok := args.(*[1]ChatSubteamRenameArg)
  1369  					if !ok {
  1370  						err = rpc.NewTypeError((*[1]ChatSubteamRenameArg)(nil), args)
  1371  						return
  1372  					}
  1373  					err = i.ChatSubteamRename(ctx, typedArgs[0])
  1374  					return
  1375  				},
  1376  			},
  1377  			"ChatKBFSToImpteamUpgrade": {
  1378  				MakeArg: func() interface{} {
  1379  					var ret [1]ChatKBFSToImpteamUpgradeArg
  1380  					return &ret
  1381  				},
  1382  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1383  					typedArgs, ok := args.(*[1]ChatKBFSToImpteamUpgradeArg)
  1384  					if !ok {
  1385  						err = rpc.NewTypeError((*[1]ChatKBFSToImpteamUpgradeArg)(nil), args)
  1386  						return
  1387  					}
  1388  					err = i.ChatKBFSToImpteamUpgrade(ctx, typedArgs[0])
  1389  					return
  1390  				},
  1391  			},
  1392  			"ChatAttachmentUploadStart": {
  1393  				MakeArg: func() interface{} {
  1394  					var ret [1]ChatAttachmentUploadStartArg
  1395  					return &ret
  1396  				},
  1397  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1398  					typedArgs, ok := args.(*[1]ChatAttachmentUploadStartArg)
  1399  					if !ok {
  1400  						err = rpc.NewTypeError((*[1]ChatAttachmentUploadStartArg)(nil), args)
  1401  						return
  1402  					}
  1403  					err = i.ChatAttachmentUploadStart(ctx, typedArgs[0])
  1404  					return
  1405  				},
  1406  			},
  1407  			"ChatAttachmentUploadProgress": {
  1408  				MakeArg: func() interface{} {
  1409  					var ret [1]ChatAttachmentUploadProgressArg
  1410  					return &ret
  1411  				},
  1412  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1413  					typedArgs, ok := args.(*[1]ChatAttachmentUploadProgressArg)
  1414  					if !ok {
  1415  						err = rpc.NewTypeError((*[1]ChatAttachmentUploadProgressArg)(nil), args)
  1416  						return
  1417  					}
  1418  					err = i.ChatAttachmentUploadProgress(ctx, typedArgs[0])
  1419  					return
  1420  				},
  1421  			},
  1422  			"ChatAttachmentDownloadProgress": {
  1423  				MakeArg: func() interface{} {
  1424  					var ret [1]ChatAttachmentDownloadProgressArg
  1425  					return &ret
  1426  				},
  1427  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1428  					typedArgs, ok := args.(*[1]ChatAttachmentDownloadProgressArg)
  1429  					if !ok {
  1430  						err = rpc.NewTypeError((*[1]ChatAttachmentDownloadProgressArg)(nil), args)
  1431  						return
  1432  					}
  1433  					err = i.ChatAttachmentDownloadProgress(ctx, typedArgs[0])
  1434  					return
  1435  				},
  1436  			},
  1437  			"ChatAttachmentDownloadComplete": {
  1438  				MakeArg: func() interface{} {
  1439  					var ret [1]ChatAttachmentDownloadCompleteArg
  1440  					return &ret
  1441  				},
  1442  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1443  					typedArgs, ok := args.(*[1]ChatAttachmentDownloadCompleteArg)
  1444  					if !ok {
  1445  						err = rpc.NewTypeError((*[1]ChatAttachmentDownloadCompleteArg)(nil), args)
  1446  						return
  1447  					}
  1448  					err = i.ChatAttachmentDownloadComplete(ctx, typedArgs[0])
  1449  					return
  1450  				},
  1451  			},
  1452  			"ChatArchiveProgress": {
  1453  				MakeArg: func() interface{} {
  1454  					var ret [1]ChatArchiveProgressArg
  1455  					return &ret
  1456  				},
  1457  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1458  					typedArgs, ok := args.(*[1]ChatArchiveProgressArg)
  1459  					if !ok {
  1460  						err = rpc.NewTypeError((*[1]ChatArchiveProgressArg)(nil), args)
  1461  						return
  1462  					}
  1463  					err = i.ChatArchiveProgress(ctx, typedArgs[0])
  1464  					return
  1465  				},
  1466  			},
  1467  			"ChatArchiveComplete": {
  1468  				MakeArg: func() interface{} {
  1469  					var ret [1]ChatArchiveCompleteArg
  1470  					return &ret
  1471  				},
  1472  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1473  					typedArgs, ok := args.(*[1]ChatArchiveCompleteArg)
  1474  					if !ok {
  1475  						err = rpc.NewTypeError((*[1]ChatArchiveCompleteArg)(nil), args)
  1476  						return
  1477  					}
  1478  					err = i.ChatArchiveComplete(ctx, typedArgs[0].JobID)
  1479  					return
  1480  				},
  1481  			},
  1482  			"ChatPaymentInfo": {
  1483  				MakeArg: func() interface{} {
  1484  					var ret [1]ChatPaymentInfoArg
  1485  					return &ret
  1486  				},
  1487  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1488  					typedArgs, ok := args.(*[1]ChatPaymentInfoArg)
  1489  					if !ok {
  1490  						err = rpc.NewTypeError((*[1]ChatPaymentInfoArg)(nil), args)
  1491  						return
  1492  					}
  1493  					err = i.ChatPaymentInfo(ctx, typedArgs[0])
  1494  					return
  1495  				},
  1496  			},
  1497  			"ChatRequestInfo": {
  1498  				MakeArg: func() interface{} {
  1499  					var ret [1]ChatRequestInfoArg
  1500  					return &ret
  1501  				},
  1502  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1503  					typedArgs, ok := args.(*[1]ChatRequestInfoArg)
  1504  					if !ok {
  1505  						err = rpc.NewTypeError((*[1]ChatRequestInfoArg)(nil), args)
  1506  						return
  1507  					}
  1508  					err = i.ChatRequestInfo(ctx, typedArgs[0])
  1509  					return
  1510  				},
  1511  			},
  1512  			"ChatPromptUnfurl": {
  1513  				MakeArg: func() interface{} {
  1514  					var ret [1]ChatPromptUnfurlArg
  1515  					return &ret
  1516  				},
  1517  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1518  					typedArgs, ok := args.(*[1]ChatPromptUnfurlArg)
  1519  					if !ok {
  1520  						err = rpc.NewTypeError((*[1]ChatPromptUnfurlArg)(nil), args)
  1521  						return
  1522  					}
  1523  					err = i.ChatPromptUnfurl(ctx, typedArgs[0])
  1524  					return
  1525  				},
  1526  			},
  1527  			"ChatConvUpdate": {
  1528  				MakeArg: func() interface{} {
  1529  					var ret [1]ChatConvUpdateArg
  1530  					return &ret
  1531  				},
  1532  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1533  					typedArgs, ok := args.(*[1]ChatConvUpdateArg)
  1534  					if !ok {
  1535  						err = rpc.NewTypeError((*[1]ChatConvUpdateArg)(nil), args)
  1536  						return
  1537  					}
  1538  					err = i.ChatConvUpdate(ctx, typedArgs[0])
  1539  					return
  1540  				},
  1541  			},
  1542  			"ChatWelcomeMessageLoaded": {
  1543  				MakeArg: func() interface{} {
  1544  					var ret [1]ChatWelcomeMessageLoadedArg
  1545  					return &ret
  1546  				},
  1547  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1548  					typedArgs, ok := args.(*[1]ChatWelcomeMessageLoadedArg)
  1549  					if !ok {
  1550  						err = rpc.NewTypeError((*[1]ChatWelcomeMessageLoadedArg)(nil), args)
  1551  						return
  1552  					}
  1553  					err = i.ChatWelcomeMessageLoaded(ctx, typedArgs[0])
  1554  					return
  1555  				},
  1556  			},
  1557  			"ChatParticipantsInfo": {
  1558  				MakeArg: func() interface{} {
  1559  					var ret [1]ChatParticipantsInfoArg
  1560  					return &ret
  1561  				},
  1562  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1563  					typedArgs, ok := args.(*[1]ChatParticipantsInfoArg)
  1564  					if !ok {
  1565  						err = rpc.NewTypeError((*[1]ChatParticipantsInfoArg)(nil), args)
  1566  						return
  1567  					}
  1568  					err = i.ChatParticipantsInfo(ctx, typedArgs[0].Participants)
  1569  					return
  1570  				},
  1571  			},
  1572  		},
  1573  	}
  1574  }
  1575  
  1576  type NotifyChatClient struct {
  1577  	Cli rpc.GenericClient
  1578  }
  1579  
  1580  func (c NotifyChatClient) NewChatActivity(ctx context.Context, __arg NewChatActivityArg) (err error) {
  1581  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.NewChatActivity", []interface{}{__arg}, 0*time.Millisecond)
  1582  	return
  1583  }
  1584  
  1585  func (c NotifyChatClient) ChatIdentifyUpdate(ctx context.Context, update keybase1.CanonicalTLFNameAndIDWithBreaks) (err error) {
  1586  	__arg := ChatIdentifyUpdateArg{Update: update}
  1587  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatIdentifyUpdate", []interface{}{__arg}, 0*time.Millisecond)
  1588  	return
  1589  }
  1590  
  1591  func (c NotifyChatClient) ChatTLFFinalize(ctx context.Context, __arg ChatTLFFinalizeArg) (err error) {
  1592  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatTLFFinalize", []interface{}{__arg}, 0*time.Millisecond)
  1593  	return
  1594  }
  1595  
  1596  func (c NotifyChatClient) ChatTLFResolve(ctx context.Context, __arg ChatTLFResolveArg) (err error) {
  1597  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatTLFResolve", []interface{}{__arg}, 0*time.Millisecond)
  1598  	return
  1599  }
  1600  
  1601  func (c NotifyChatClient) ChatInboxStale(ctx context.Context, uid keybase1.UID) (err error) {
  1602  	__arg := ChatInboxStaleArg{Uid: uid}
  1603  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatInboxStale", []interface{}{__arg}, 0*time.Millisecond)
  1604  	return
  1605  }
  1606  
  1607  func (c NotifyChatClient) ChatThreadsStale(ctx context.Context, __arg ChatThreadsStaleArg) (err error) {
  1608  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatThreadsStale", []interface{}{__arg}, 0*time.Millisecond)
  1609  	return
  1610  }
  1611  
  1612  func (c NotifyChatClient) ChatTypingUpdate(ctx context.Context, typingUpdates []ConvTypingUpdate) (err error) {
  1613  	__arg := ChatTypingUpdateArg{TypingUpdates: typingUpdates}
  1614  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatTypingUpdate", []interface{}{__arg}, 0*time.Millisecond)
  1615  	return
  1616  }
  1617  
  1618  func (c NotifyChatClient) ChatJoinedConversation(ctx context.Context, __arg ChatJoinedConversationArg) (err error) {
  1619  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatJoinedConversation", []interface{}{__arg}, 0*time.Millisecond)
  1620  	return
  1621  }
  1622  
  1623  func (c NotifyChatClient) ChatLeftConversation(ctx context.Context, __arg ChatLeftConversationArg) (err error) {
  1624  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatLeftConversation", []interface{}{__arg}, 0*time.Millisecond)
  1625  	return
  1626  }
  1627  
  1628  func (c NotifyChatClient) ChatResetConversation(ctx context.Context, __arg ChatResetConversationArg) (err error) {
  1629  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatResetConversation", []interface{}{__arg}, 0*time.Millisecond)
  1630  	return
  1631  }
  1632  
  1633  func (c NotifyChatClient) ChatInboxSyncStarted(ctx context.Context, uid keybase1.UID) (err error) {
  1634  	__arg := ChatInboxSyncStartedArg{Uid: uid}
  1635  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatInboxSyncStarted", []interface{}{__arg}, 0*time.Millisecond)
  1636  	return
  1637  }
  1638  
  1639  func (c NotifyChatClient) ChatInboxSynced(ctx context.Context, __arg ChatInboxSyncedArg) (err error) {
  1640  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatInboxSynced", []interface{}{__arg}, 0*time.Millisecond)
  1641  	return
  1642  }
  1643  
  1644  func (c NotifyChatClient) ChatSetConvRetention(ctx context.Context, __arg ChatSetConvRetentionArg) (err error) {
  1645  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatSetConvRetention", []interface{}{__arg}, 0*time.Millisecond)
  1646  	return
  1647  }
  1648  
  1649  func (c NotifyChatClient) ChatSetTeamRetention(ctx context.Context, __arg ChatSetTeamRetentionArg) (err error) {
  1650  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatSetTeamRetention", []interface{}{__arg}, 0*time.Millisecond)
  1651  	return
  1652  }
  1653  
  1654  func (c NotifyChatClient) ChatSetConvSettings(ctx context.Context, __arg ChatSetConvSettingsArg) (err error) {
  1655  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatSetConvSettings", []interface{}{__arg}, 0*time.Millisecond)
  1656  	return
  1657  }
  1658  
  1659  func (c NotifyChatClient) ChatSubteamRename(ctx context.Context, __arg ChatSubteamRenameArg) (err error) {
  1660  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatSubteamRename", []interface{}{__arg}, 0*time.Millisecond)
  1661  	return
  1662  }
  1663  
  1664  func (c NotifyChatClient) ChatKBFSToImpteamUpgrade(ctx context.Context, __arg ChatKBFSToImpteamUpgradeArg) (err error) {
  1665  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatKBFSToImpteamUpgrade", []interface{}{__arg}, 0*time.Millisecond)
  1666  	return
  1667  }
  1668  
  1669  func (c NotifyChatClient) ChatAttachmentUploadStart(ctx context.Context, __arg ChatAttachmentUploadStartArg) (err error) {
  1670  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatAttachmentUploadStart", []interface{}{__arg}, 0*time.Millisecond)
  1671  	return
  1672  }
  1673  
  1674  func (c NotifyChatClient) ChatAttachmentUploadProgress(ctx context.Context, __arg ChatAttachmentUploadProgressArg) (err error) {
  1675  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatAttachmentUploadProgress", []interface{}{__arg}, 0*time.Millisecond)
  1676  	return
  1677  }
  1678  
  1679  func (c NotifyChatClient) ChatAttachmentDownloadProgress(ctx context.Context, __arg ChatAttachmentDownloadProgressArg) (err error) {
  1680  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatAttachmentDownloadProgress", []interface{}{__arg}, 0*time.Millisecond)
  1681  	return
  1682  }
  1683  
  1684  func (c NotifyChatClient) ChatAttachmentDownloadComplete(ctx context.Context, __arg ChatAttachmentDownloadCompleteArg) (err error) {
  1685  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatAttachmentDownloadComplete", []interface{}{__arg}, 0*time.Millisecond)
  1686  	return
  1687  }
  1688  
  1689  func (c NotifyChatClient) ChatArchiveProgress(ctx context.Context, __arg ChatArchiveProgressArg) (err error) {
  1690  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatArchiveProgress", []interface{}{__arg}, 0*time.Millisecond)
  1691  	return
  1692  }
  1693  
  1694  func (c NotifyChatClient) ChatArchiveComplete(ctx context.Context, jobID ArchiveJobID) (err error) {
  1695  	__arg := ChatArchiveCompleteArg{JobID: jobID}
  1696  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatArchiveComplete", []interface{}{__arg}, 0*time.Millisecond)
  1697  	return
  1698  }
  1699  
  1700  func (c NotifyChatClient) ChatPaymentInfo(ctx context.Context, __arg ChatPaymentInfoArg) (err error) {
  1701  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatPaymentInfo", []interface{}{__arg}, 0*time.Millisecond)
  1702  	return
  1703  }
  1704  
  1705  func (c NotifyChatClient) ChatRequestInfo(ctx context.Context, __arg ChatRequestInfoArg) (err error) {
  1706  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatRequestInfo", []interface{}{__arg}, 0*time.Millisecond)
  1707  	return
  1708  }
  1709  
  1710  func (c NotifyChatClient) ChatPromptUnfurl(ctx context.Context, __arg ChatPromptUnfurlArg) (err error) {
  1711  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatPromptUnfurl", []interface{}{__arg}, 0*time.Millisecond)
  1712  	return
  1713  }
  1714  
  1715  func (c NotifyChatClient) ChatConvUpdate(ctx context.Context, __arg ChatConvUpdateArg) (err error) {
  1716  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatConvUpdate", []interface{}{__arg}, 0*time.Millisecond)
  1717  	return
  1718  }
  1719  
  1720  func (c NotifyChatClient) ChatWelcomeMessageLoaded(ctx context.Context, __arg ChatWelcomeMessageLoadedArg) (err error) {
  1721  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatWelcomeMessageLoaded", []interface{}{__arg}, 0*time.Millisecond)
  1722  	return
  1723  }
  1724  
  1725  func (c NotifyChatClient) ChatParticipantsInfo(ctx context.Context, participants map[ConvIDStr][]UIParticipant) (err error) {
  1726  	__arg := ChatParticipantsInfoArg{Participants: participants}
  1727  	err = c.Cli.Notify(ctx, "chat.1.NotifyChat.ChatParticipantsInfo", []interface{}{__arg}, 0*time.Millisecond)
  1728  	return
  1729  }