github.com/keybase/client/go@v0.0.0-20241007131713-f10651d043c8/protocol/chat1/remote.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/remote.avdl
     3  
     4  package chat1
     5  
     6  import (
     7  	"errors"
     8  	"fmt"
     9  	gregor1 "github.com/keybase/client/go/protocol/gregor1"
    10  	keybase1 "github.com/keybase/client/go/protocol/keybase1"
    11  	"github.com/keybase/go-framed-msgpack-rpc/rpc"
    12  	context "golang.org/x/net/context"
    13  	"time"
    14  )
    15  
    16  type MessageBoxed struct {
    17  	Version          MessageBoxedVersion  `codec:"version" json:"version"`
    18  	ServerHeader     *MessageServerHeader `codec:"serverHeader,omitempty" json:"serverHeader,omitempty"`
    19  	ClientHeader     MessageClientHeader  `codec:"clientHeader" json:"clientHeader"`
    20  	HeaderCiphertext SealedData           `codec:"headerCiphertext" json:"headerCiphertext"`
    21  	BodyCiphertext   EncryptedData        `codec:"bodyCiphertext" json:"bodyCiphertext"`
    22  	VerifyKey        []byte               `codec:"verifyKey" json:"verifyKey"`
    23  	KeyGeneration    int                  `codec:"keyGeneration" json:"keyGeneration"`
    24  }
    25  
    26  func (o MessageBoxed) DeepCopy() MessageBoxed {
    27  	return MessageBoxed{
    28  		Version: o.Version.DeepCopy(),
    29  		ServerHeader: (func(x *MessageServerHeader) *MessageServerHeader {
    30  			if x == nil {
    31  				return nil
    32  			}
    33  			tmp := (*x).DeepCopy()
    34  			return &tmp
    35  		})(o.ServerHeader),
    36  		ClientHeader:     o.ClientHeader.DeepCopy(),
    37  		HeaderCiphertext: o.HeaderCiphertext.DeepCopy(),
    38  		BodyCiphertext:   o.BodyCiphertext.DeepCopy(),
    39  		VerifyKey: (func(x []byte) []byte {
    40  			if x == nil {
    41  				return nil
    42  			}
    43  			return append([]byte{}, x...)
    44  		})(o.VerifyKey),
    45  		KeyGeneration: o.KeyGeneration,
    46  	}
    47  }
    48  
    49  type MessageBoxedVersion int
    50  
    51  const (
    52  	MessageBoxedVersion_VNONE MessageBoxedVersion = 0
    53  	MessageBoxedVersion_V1    MessageBoxedVersion = 1
    54  	MessageBoxedVersion_V2    MessageBoxedVersion = 2
    55  	MessageBoxedVersion_V3    MessageBoxedVersion = 3
    56  	MessageBoxedVersion_V4    MessageBoxedVersion = 4
    57  )
    58  
    59  func (o MessageBoxedVersion) DeepCopy() MessageBoxedVersion { return o }
    60  
    61  var MessageBoxedVersionMap = map[string]MessageBoxedVersion{
    62  	"VNONE": 0,
    63  	"V1":    1,
    64  	"V2":    2,
    65  	"V3":    3,
    66  	"V4":    4,
    67  }
    68  
    69  var MessageBoxedVersionRevMap = map[MessageBoxedVersion]string{
    70  	0: "VNONE",
    71  	1: "V1",
    72  	2: "V2",
    73  	3: "V3",
    74  	4: "V4",
    75  }
    76  
    77  func (e MessageBoxedVersion) String() string {
    78  	if v, ok := MessageBoxedVersionRevMap[e]; ok {
    79  		return v
    80  	}
    81  	return fmt.Sprintf("%v", int(e))
    82  }
    83  
    84  type ThreadViewBoxed struct {
    85  	Messages   []MessageBoxed `codec:"messages" json:"messages"`
    86  	Pagination *Pagination    `codec:"pagination,omitempty" json:"pagination,omitempty"`
    87  }
    88  
    89  func (o ThreadViewBoxed) DeepCopy() ThreadViewBoxed {
    90  	return ThreadViewBoxed{
    91  		Messages: (func(x []MessageBoxed) []MessageBoxed {
    92  			if x == nil {
    93  				return nil
    94  			}
    95  			ret := make([]MessageBoxed, len(x))
    96  			for i, v := range x {
    97  				vCopy := v.DeepCopy()
    98  				ret[i] = vCopy
    99  			}
   100  			return ret
   101  		})(o.Messages),
   102  		Pagination: (func(x *Pagination) *Pagination {
   103  			if x == nil {
   104  				return nil
   105  			}
   106  			tmp := (*x).DeepCopy()
   107  			return &tmp
   108  		})(o.Pagination),
   109  	}
   110  }
   111  
   112  type GetInboxRemoteRes struct {
   113  	Inbox     InboxView  `codec:"inbox" json:"inbox"`
   114  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   115  }
   116  
   117  func (o GetInboxRemoteRes) DeepCopy() GetInboxRemoteRes {
   118  	return GetInboxRemoteRes{
   119  		Inbox: o.Inbox.DeepCopy(),
   120  		RateLimit: (func(x *RateLimit) *RateLimit {
   121  			if x == nil {
   122  				return nil
   123  			}
   124  			tmp := (*x).DeepCopy()
   125  			return &tmp
   126  		})(o.RateLimit),
   127  	}
   128  }
   129  
   130  type GetInboxByTLFIDRemoteRes struct {
   131  	Convs     []Conversation `codec:"convs" json:"convs"`
   132  	RateLimit *RateLimit     `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   133  }
   134  
   135  func (o GetInboxByTLFIDRemoteRes) DeepCopy() GetInboxByTLFIDRemoteRes {
   136  	return GetInboxByTLFIDRemoteRes{
   137  		Convs: (func(x []Conversation) []Conversation {
   138  			if x == nil {
   139  				return nil
   140  			}
   141  			ret := make([]Conversation, len(x))
   142  			for i, v := range x {
   143  				vCopy := v.DeepCopy()
   144  				ret[i] = vCopy
   145  			}
   146  			return ret
   147  		})(o.Convs),
   148  		RateLimit: (func(x *RateLimit) *RateLimit {
   149  			if x == nil {
   150  				return nil
   151  			}
   152  			tmp := (*x).DeepCopy()
   153  			return &tmp
   154  		})(o.RateLimit),
   155  	}
   156  }
   157  
   158  type GetThreadRemoteRes struct {
   159  	Thread      ThreadViewBoxed         `codec:"thread" json:"thread"`
   160  	MembersType ConversationMembersType `codec:"membersType" json:"membersType"`
   161  	Visibility  keybase1.TLFVisibility  `codec:"visibility" json:"visibility"`
   162  	RateLimit   *RateLimit              `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   163  }
   164  
   165  func (o GetThreadRemoteRes) DeepCopy() GetThreadRemoteRes {
   166  	return GetThreadRemoteRes{
   167  		Thread:      o.Thread.DeepCopy(),
   168  		MembersType: o.MembersType.DeepCopy(),
   169  		Visibility:  o.Visibility.DeepCopy(),
   170  		RateLimit: (func(x *RateLimit) *RateLimit {
   171  			if x == nil {
   172  				return nil
   173  			}
   174  			tmp := (*x).DeepCopy()
   175  			return &tmp
   176  		})(o.RateLimit),
   177  	}
   178  }
   179  
   180  type GetConversationMetadataRemoteRes struct {
   181  	Conv      Conversation `codec:"conv" json:"conv"`
   182  	RateLimit *RateLimit   `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   183  }
   184  
   185  func (o GetConversationMetadataRemoteRes) DeepCopy() GetConversationMetadataRemoteRes {
   186  	return GetConversationMetadataRemoteRes{
   187  		Conv: o.Conv.DeepCopy(),
   188  		RateLimit: (func(x *RateLimit) *RateLimit {
   189  			if x == nil {
   190  				return nil
   191  			}
   192  			tmp := (*x).DeepCopy()
   193  			return &tmp
   194  		})(o.RateLimit),
   195  	}
   196  }
   197  
   198  type PostRemoteRes struct {
   199  	MsgHeader MessageServerHeader `codec:"msgHeader" json:"msgHeader"`
   200  	RateLimit *RateLimit          `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   201  }
   202  
   203  func (o PostRemoteRes) DeepCopy() PostRemoteRes {
   204  	return PostRemoteRes{
   205  		MsgHeader: o.MsgHeader.DeepCopy(),
   206  		RateLimit: (func(x *RateLimit) *RateLimit {
   207  			if x == nil {
   208  				return nil
   209  			}
   210  			tmp := (*x).DeepCopy()
   211  			return &tmp
   212  		})(o.RateLimit),
   213  	}
   214  }
   215  
   216  type NewConversationRemoteRes struct {
   217  	ConvID             ConversationID `codec:"convID" json:"convID"`
   218  	CreatedComplexTeam bool           `codec:"createdComplexTeam" json:"createdComplexTeam"`
   219  	RateLimit          *RateLimit     `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   220  }
   221  
   222  func (o NewConversationRemoteRes) DeepCopy() NewConversationRemoteRes {
   223  	return NewConversationRemoteRes{
   224  		ConvID:             o.ConvID.DeepCopy(),
   225  		CreatedComplexTeam: o.CreatedComplexTeam,
   226  		RateLimit: (func(x *RateLimit) *RateLimit {
   227  			if x == nil {
   228  				return nil
   229  			}
   230  			tmp := (*x).DeepCopy()
   231  			return &tmp
   232  		})(o.RateLimit),
   233  	}
   234  }
   235  
   236  type GetMessagesRemoteRes struct {
   237  	Msgs        []MessageBoxed          `codec:"msgs" json:"msgs"`
   238  	MembersType ConversationMembersType `codec:"membersType" json:"membersType"`
   239  	Visibility  keybase1.TLFVisibility  `codec:"visibility" json:"visibility"`
   240  	RateLimit   *RateLimit              `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   241  }
   242  
   243  func (o GetMessagesRemoteRes) DeepCopy() GetMessagesRemoteRes {
   244  	return GetMessagesRemoteRes{
   245  		Msgs: (func(x []MessageBoxed) []MessageBoxed {
   246  			if x == nil {
   247  				return nil
   248  			}
   249  			ret := make([]MessageBoxed, len(x))
   250  			for i, v := range x {
   251  				vCopy := v.DeepCopy()
   252  				ret[i] = vCopy
   253  			}
   254  			return ret
   255  		})(o.Msgs),
   256  		MembersType: o.MembersType.DeepCopy(),
   257  		Visibility:  o.Visibility.DeepCopy(),
   258  		RateLimit: (func(x *RateLimit) *RateLimit {
   259  			if x == nil {
   260  				return nil
   261  			}
   262  			tmp := (*x).DeepCopy()
   263  			return &tmp
   264  		})(o.RateLimit),
   265  	}
   266  }
   267  
   268  type MarkAsReadRes struct {
   269  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   270  }
   271  
   272  func (o MarkAsReadRes) DeepCopy() MarkAsReadRes {
   273  	return MarkAsReadRes{
   274  		RateLimit: (func(x *RateLimit) *RateLimit {
   275  			if x == nil {
   276  				return nil
   277  			}
   278  			tmp := (*x).DeepCopy()
   279  			return &tmp
   280  		})(o.RateLimit),
   281  	}
   282  }
   283  
   284  type SetConversationStatusRes struct {
   285  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   286  }
   287  
   288  func (o SetConversationStatusRes) DeepCopy() SetConversationStatusRes {
   289  	return SetConversationStatusRes{
   290  		RateLimit: (func(x *RateLimit) *RateLimit {
   291  			if x == nil {
   292  				return nil
   293  			}
   294  			tmp := (*x).DeepCopy()
   295  			return &tmp
   296  		})(o.RateLimit),
   297  	}
   298  }
   299  
   300  type GetPublicConversationsRes struct {
   301  	Conversations []Conversation `codec:"conversations" json:"conversations"`
   302  	RateLimit     *RateLimit     `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   303  }
   304  
   305  func (o GetPublicConversationsRes) DeepCopy() GetPublicConversationsRes {
   306  	return GetPublicConversationsRes{
   307  		Conversations: (func(x []Conversation) []Conversation {
   308  			if x == nil {
   309  				return nil
   310  			}
   311  			ret := make([]Conversation, len(x))
   312  			for i, v := range x {
   313  				vCopy := v.DeepCopy()
   314  				ret[i] = vCopy
   315  			}
   316  			return ret
   317  		})(o.Conversations),
   318  		RateLimit: (func(x *RateLimit) *RateLimit {
   319  			if x == nil {
   320  				return nil
   321  			}
   322  			tmp := (*x).DeepCopy()
   323  			return &tmp
   324  		})(o.RateLimit),
   325  	}
   326  }
   327  
   328  type GetUnreadlineRemoteRes struct {
   329  	UnreadlineID *MessageID `codec:"unreadlineID,omitempty" json:"unreadlineID,omitempty"`
   330  	RateLimit    *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   331  }
   332  
   333  func (o GetUnreadlineRemoteRes) DeepCopy() GetUnreadlineRemoteRes {
   334  	return GetUnreadlineRemoteRes{
   335  		UnreadlineID: (func(x *MessageID) *MessageID {
   336  			if x == nil {
   337  				return nil
   338  			}
   339  			tmp := (*x).DeepCopy()
   340  			return &tmp
   341  		})(o.UnreadlineID),
   342  		RateLimit: (func(x *RateLimit) *RateLimit {
   343  			if x == nil {
   344  				return nil
   345  			}
   346  			tmp := (*x).DeepCopy()
   347  			return &tmp
   348  		})(o.RateLimit),
   349  	}
   350  }
   351  
   352  type ChannelMention int
   353  
   354  const (
   355  	ChannelMention_NONE ChannelMention = 0
   356  	ChannelMention_ALL  ChannelMention = 1
   357  	ChannelMention_HERE ChannelMention = 2
   358  )
   359  
   360  func (o ChannelMention) DeepCopy() ChannelMention { return o }
   361  
   362  var ChannelMentionMap = map[string]ChannelMention{
   363  	"NONE": 0,
   364  	"ALL":  1,
   365  	"HERE": 2,
   366  }
   367  
   368  var ChannelMentionRevMap = map[ChannelMention]string{
   369  	0: "NONE",
   370  	1: "ALL",
   371  	2: "HERE",
   372  }
   373  
   374  func (e ChannelMention) String() string {
   375  	if v, ok := ChannelMentionRevMap[e]; ok {
   376  		return v
   377  	}
   378  	return fmt.Sprintf("%v", int(e))
   379  }
   380  
   381  type UnreadUpdateFull struct {
   382  	Ignore          bool             `codec:"ignore" json:"ignore"`
   383  	InboxVers       InboxVers        `codec:"inboxVers" json:"inboxVers"`
   384  	InboxSyncStatus SyncInboxResType `codec:"inboxSyncStatus" json:"inboxSyncStatus"`
   385  	Updates         []UnreadUpdate   `codec:"updates" json:"updates"`
   386  }
   387  
   388  func (o UnreadUpdateFull) DeepCopy() UnreadUpdateFull {
   389  	return UnreadUpdateFull{
   390  		Ignore:          o.Ignore,
   391  		InboxVers:       o.InboxVers.DeepCopy(),
   392  		InboxSyncStatus: o.InboxSyncStatus.DeepCopy(),
   393  		Updates: (func(x []UnreadUpdate) []UnreadUpdate {
   394  			if x == nil {
   395  				return nil
   396  			}
   397  			ret := make([]UnreadUpdate, len(x))
   398  			for i, v := range x {
   399  				vCopy := v.DeepCopy()
   400  				ret[i] = vCopy
   401  			}
   402  			return ret
   403  		})(o.Updates),
   404  	}
   405  }
   406  
   407  type S3Params struct {
   408  	Bucket               string `codec:"bucket" json:"bucket"`
   409  	ObjectKey            string `codec:"objectKey" json:"objectKey"`
   410  	AccessKey            string `codec:"accessKey" json:"accessKey"`
   411  	Acl                  string `codec:"acl" json:"acl"`
   412  	RegionName           string `codec:"regionName" json:"regionName"`
   413  	RegionEndpoint       string `codec:"regionEndpoint" json:"regionEndpoint"`
   414  	RegionBucketEndpoint string `codec:"regionBucketEndpoint" json:"regionBucketEndpoint"`
   415  	Token                string `codec:"token" json:"token"`
   416  }
   417  
   418  func (o S3Params) DeepCopy() S3Params {
   419  	return S3Params{
   420  		Bucket:               o.Bucket,
   421  		ObjectKey:            o.ObjectKey,
   422  		AccessKey:            o.AccessKey,
   423  		Acl:                  o.Acl,
   424  		RegionName:           o.RegionName,
   425  		RegionEndpoint:       o.RegionEndpoint,
   426  		RegionBucketEndpoint: o.RegionBucketEndpoint,
   427  		Token:                o.Token,
   428  	}
   429  }
   430  
   431  type SyncIncrementalRes struct {
   432  	Vers  InboxVers      `codec:"vers" json:"vers"`
   433  	Convs []Conversation `codec:"convs" json:"convs"`
   434  }
   435  
   436  func (o SyncIncrementalRes) DeepCopy() SyncIncrementalRes {
   437  	return SyncIncrementalRes{
   438  		Vers: o.Vers.DeepCopy(),
   439  		Convs: (func(x []Conversation) []Conversation {
   440  			if x == nil {
   441  				return nil
   442  			}
   443  			ret := make([]Conversation, len(x))
   444  			for i, v := range x {
   445  				vCopy := v.DeepCopy()
   446  				ret[i] = vCopy
   447  			}
   448  			return ret
   449  		})(o.Convs),
   450  	}
   451  }
   452  
   453  type ServerCacheVers struct {
   454  	InboxVers  int `codec:"inboxVers" json:"inboxVers"`
   455  	BodiesVers int `codec:"bodiesVers" json:"bodiesVers"`
   456  }
   457  
   458  func (o ServerCacheVers) DeepCopy() ServerCacheVers {
   459  	return ServerCacheVers{
   460  		InboxVers:  o.InboxVers,
   461  		BodiesVers: o.BodiesVers,
   462  	}
   463  }
   464  
   465  type SyncInboxRes struct {
   466  	Typ__         SyncInboxResType    `codec:"typ" json:"typ"`
   467  	Incremental__ *SyncIncrementalRes `codec:"incremental,omitempty" json:"incremental,omitempty"`
   468  }
   469  
   470  func (o *SyncInboxRes) Typ() (ret SyncInboxResType, err error) {
   471  	switch o.Typ__ {
   472  	case SyncInboxResType_INCREMENTAL:
   473  		if o.Incremental__ == nil {
   474  			err = errors.New("unexpected nil value for Incremental__")
   475  			return ret, err
   476  		}
   477  	}
   478  	return o.Typ__, nil
   479  }
   480  
   481  func (o SyncInboxRes) Incremental() (res SyncIncrementalRes) {
   482  	if o.Typ__ != SyncInboxResType_INCREMENTAL {
   483  		panic("wrong case accessed")
   484  	}
   485  	if o.Incremental__ == nil {
   486  		return
   487  	}
   488  	return *o.Incremental__
   489  }
   490  
   491  func NewSyncInboxResWithCurrent() SyncInboxRes {
   492  	return SyncInboxRes{
   493  		Typ__: SyncInboxResType_CURRENT,
   494  	}
   495  }
   496  
   497  func NewSyncInboxResWithIncremental(v SyncIncrementalRes) SyncInboxRes {
   498  	return SyncInboxRes{
   499  		Typ__:         SyncInboxResType_INCREMENTAL,
   500  		Incremental__: &v,
   501  	}
   502  }
   503  
   504  func NewSyncInboxResWithClear() SyncInboxRes {
   505  	return SyncInboxRes{
   506  		Typ__: SyncInboxResType_CLEAR,
   507  	}
   508  }
   509  
   510  func (o SyncInboxRes) DeepCopy() SyncInboxRes {
   511  	return SyncInboxRes{
   512  		Typ__: o.Typ__.DeepCopy(),
   513  		Incremental__: (func(x *SyncIncrementalRes) *SyncIncrementalRes {
   514  			if x == nil {
   515  				return nil
   516  			}
   517  			tmp := (*x).DeepCopy()
   518  			return &tmp
   519  		})(o.Incremental__),
   520  	}
   521  }
   522  
   523  type SyncChatRes struct {
   524  	CacheVers ServerCacheVers `codec:"cacheVers" json:"cacheVers"`
   525  	InboxRes  SyncInboxRes    `codec:"inboxRes" json:"inboxRes"`
   526  }
   527  
   528  func (o SyncChatRes) DeepCopy() SyncChatRes {
   529  	return SyncChatRes{
   530  		CacheVers: o.CacheVers.DeepCopy(),
   531  		InboxRes:  o.InboxRes.DeepCopy(),
   532  	}
   533  }
   534  
   535  type SyncAllProtVers int
   536  
   537  const (
   538  	SyncAllProtVers_V0 SyncAllProtVers = 0
   539  	SyncAllProtVers_V1 SyncAllProtVers = 1
   540  )
   541  
   542  func (o SyncAllProtVers) DeepCopy() SyncAllProtVers { return o }
   543  
   544  var SyncAllProtVersMap = map[string]SyncAllProtVers{
   545  	"V0": 0,
   546  	"V1": 1,
   547  }
   548  
   549  var SyncAllProtVersRevMap = map[SyncAllProtVers]string{
   550  	0: "V0",
   551  	1: "V1",
   552  }
   553  
   554  func (e SyncAllProtVers) String() string {
   555  	if v, ok := SyncAllProtVersRevMap[e]; ok {
   556  		return v
   557  	}
   558  	return fmt.Sprintf("%v", int(e))
   559  }
   560  
   561  type SyncAllNotificationType int
   562  
   563  const (
   564  	SyncAllNotificationType_STATE       SyncAllNotificationType = 0
   565  	SyncAllNotificationType_INCREMENTAL SyncAllNotificationType = 1
   566  )
   567  
   568  func (o SyncAllNotificationType) DeepCopy() SyncAllNotificationType { return o }
   569  
   570  var SyncAllNotificationTypeMap = map[string]SyncAllNotificationType{
   571  	"STATE":       0,
   572  	"INCREMENTAL": 1,
   573  }
   574  
   575  var SyncAllNotificationTypeRevMap = map[SyncAllNotificationType]string{
   576  	0: "STATE",
   577  	1: "INCREMENTAL",
   578  }
   579  
   580  func (e SyncAllNotificationType) String() string {
   581  	if v, ok := SyncAllNotificationTypeRevMap[e]; ok {
   582  		return v
   583  	}
   584  	return fmt.Sprintf("%v", int(e))
   585  }
   586  
   587  type SyncAllNotificationRes struct {
   588  	Typ__         SyncAllNotificationType `codec:"typ" json:"typ"`
   589  	State__       *gregor1.State          `codec:"state,omitempty" json:"state,omitempty"`
   590  	Incremental__ *gregor1.SyncResult     `codec:"incremental,omitempty" json:"incremental,omitempty"`
   591  }
   592  
   593  func (o *SyncAllNotificationRes) Typ() (ret SyncAllNotificationType, err error) {
   594  	switch o.Typ__ {
   595  	case SyncAllNotificationType_STATE:
   596  		if o.State__ == nil {
   597  			err = errors.New("unexpected nil value for State__")
   598  			return ret, err
   599  		}
   600  	case SyncAllNotificationType_INCREMENTAL:
   601  		if o.Incremental__ == nil {
   602  			err = errors.New("unexpected nil value for Incremental__")
   603  			return ret, err
   604  		}
   605  	}
   606  	return o.Typ__, nil
   607  }
   608  
   609  func (o SyncAllNotificationRes) State() (res gregor1.State) {
   610  	if o.Typ__ != SyncAllNotificationType_STATE {
   611  		panic("wrong case accessed")
   612  	}
   613  	if o.State__ == nil {
   614  		return
   615  	}
   616  	return *o.State__
   617  }
   618  
   619  func (o SyncAllNotificationRes) Incremental() (res gregor1.SyncResult) {
   620  	if o.Typ__ != SyncAllNotificationType_INCREMENTAL {
   621  		panic("wrong case accessed")
   622  	}
   623  	if o.Incremental__ == nil {
   624  		return
   625  	}
   626  	return *o.Incremental__
   627  }
   628  
   629  func NewSyncAllNotificationResWithState(v gregor1.State) SyncAllNotificationRes {
   630  	return SyncAllNotificationRes{
   631  		Typ__:   SyncAllNotificationType_STATE,
   632  		State__: &v,
   633  	}
   634  }
   635  
   636  func NewSyncAllNotificationResWithIncremental(v gregor1.SyncResult) SyncAllNotificationRes {
   637  	return SyncAllNotificationRes{
   638  		Typ__:         SyncAllNotificationType_INCREMENTAL,
   639  		Incremental__: &v,
   640  	}
   641  }
   642  
   643  func (o SyncAllNotificationRes) DeepCopy() SyncAllNotificationRes {
   644  	return SyncAllNotificationRes{
   645  		Typ__: o.Typ__.DeepCopy(),
   646  		State__: (func(x *gregor1.State) *gregor1.State {
   647  			if x == nil {
   648  				return nil
   649  			}
   650  			tmp := (*x).DeepCopy()
   651  			return &tmp
   652  		})(o.State__),
   653  		Incremental__: (func(x *gregor1.SyncResult) *gregor1.SyncResult {
   654  			if x == nil {
   655  				return nil
   656  			}
   657  			tmp := (*x).DeepCopy()
   658  			return &tmp
   659  		})(o.Incremental__),
   660  	}
   661  }
   662  
   663  type SyncAllResult struct {
   664  	Auth         gregor1.AuthResult     `codec:"auth" json:"auth"`
   665  	Chat         SyncChatRes            `codec:"chat" json:"chat"`
   666  	Notification SyncAllNotificationRes `codec:"notification" json:"notification"`
   667  	Badge        UnreadUpdateFull       `codec:"badge" json:"badge"`
   668  }
   669  
   670  func (o SyncAllResult) DeepCopy() SyncAllResult {
   671  	return SyncAllResult{
   672  		Auth:         o.Auth.DeepCopy(),
   673  		Chat:         o.Chat.DeepCopy(),
   674  		Notification: o.Notification.DeepCopy(),
   675  		Badge:        o.Badge.DeepCopy(),
   676  	}
   677  }
   678  
   679  type JoinLeaveConversationRemoteRes struct {
   680  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   681  }
   682  
   683  func (o JoinLeaveConversationRemoteRes) DeepCopy() JoinLeaveConversationRemoteRes {
   684  	return JoinLeaveConversationRemoteRes{
   685  		RateLimit: (func(x *RateLimit) *RateLimit {
   686  			if x == nil {
   687  				return nil
   688  			}
   689  			tmp := (*x).DeepCopy()
   690  			return &tmp
   691  		})(o.RateLimit),
   692  	}
   693  }
   694  
   695  type DeleteConversationRemoteRes struct {
   696  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   697  }
   698  
   699  func (o DeleteConversationRemoteRes) DeepCopy() DeleteConversationRemoteRes {
   700  	return DeleteConversationRemoteRes{
   701  		RateLimit: (func(x *RateLimit) *RateLimit {
   702  			if x == nil {
   703  				return nil
   704  			}
   705  			tmp := (*x).DeepCopy()
   706  			return &tmp
   707  		})(o.RateLimit),
   708  	}
   709  }
   710  
   711  type RemoveFromConversationRemoteRes struct {
   712  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   713  }
   714  
   715  func (o RemoveFromConversationRemoteRes) DeepCopy() RemoveFromConversationRemoteRes {
   716  	return RemoveFromConversationRemoteRes{
   717  		RateLimit: (func(x *RateLimit) *RateLimit {
   718  			if x == nil {
   719  				return nil
   720  			}
   721  			tmp := (*x).DeepCopy()
   722  			return &tmp
   723  		})(o.RateLimit),
   724  	}
   725  }
   726  
   727  type GetMessageBeforeRes struct {
   728  	MsgID     MessageID  `codec:"msgID" json:"msgID"`
   729  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   730  }
   731  
   732  func (o GetMessageBeforeRes) DeepCopy() GetMessageBeforeRes {
   733  	return GetMessageBeforeRes{
   734  		MsgID: o.MsgID.DeepCopy(),
   735  		RateLimit: (func(x *RateLimit) *RateLimit {
   736  			if x == nil {
   737  				return nil
   738  			}
   739  			tmp := (*x).DeepCopy()
   740  			return &tmp
   741  		})(o.RateLimit),
   742  	}
   743  }
   744  
   745  type GetTLFConversationsRes struct {
   746  	Conversations []Conversation `codec:"conversations" json:"conversations"`
   747  	RateLimit     *RateLimit     `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   748  }
   749  
   750  func (o GetTLFConversationsRes) DeepCopy() GetTLFConversationsRes {
   751  	return GetTLFConversationsRes{
   752  		Conversations: (func(x []Conversation) []Conversation {
   753  			if x == nil {
   754  				return nil
   755  			}
   756  			ret := make([]Conversation, len(x))
   757  			for i, v := range x {
   758  				vCopy := v.DeepCopy()
   759  				ret[i] = vCopy
   760  			}
   761  			return ret
   762  		})(o.Conversations),
   763  		RateLimit: (func(x *RateLimit) *RateLimit {
   764  			if x == nil {
   765  				return nil
   766  			}
   767  			tmp := (*x).DeepCopy()
   768  			return &tmp
   769  		})(o.RateLimit),
   770  	}
   771  }
   772  
   773  type SetAppNotificationSettingsRes struct {
   774  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   775  }
   776  
   777  func (o SetAppNotificationSettingsRes) DeepCopy() SetAppNotificationSettingsRes {
   778  	return SetAppNotificationSettingsRes{
   779  		RateLimit: (func(x *RateLimit) *RateLimit {
   780  			if x == nil {
   781  				return nil
   782  			}
   783  			tmp := (*x).DeepCopy()
   784  			return &tmp
   785  		})(o.RateLimit),
   786  	}
   787  }
   788  
   789  type SetRetentionRes struct {
   790  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   791  }
   792  
   793  func (o SetRetentionRes) DeepCopy() SetRetentionRes {
   794  	return SetRetentionRes{
   795  		RateLimit: (func(x *RateLimit) *RateLimit {
   796  			if x == nil {
   797  				return nil
   798  			}
   799  			tmp := (*x).DeepCopy()
   800  			return &tmp
   801  		})(o.RateLimit),
   802  	}
   803  }
   804  
   805  type SetConvMinWriterRoleRes struct {
   806  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   807  }
   808  
   809  func (o SetConvMinWriterRoleRes) DeepCopy() SetConvMinWriterRoleRes {
   810  	return SetConvMinWriterRoleRes{
   811  		RateLimit: (func(x *RateLimit) *RateLimit {
   812  			if x == nil {
   813  				return nil
   814  			}
   815  			tmp := (*x).DeepCopy()
   816  			return &tmp
   817  		})(o.RateLimit),
   818  	}
   819  }
   820  
   821  type SweepRes struct {
   822  	FoundTask       bool    `codec:"foundTask" json:"foundTask"`
   823  	DeletedMessages bool    `codec:"deletedMessages" json:"deletedMessages"`
   824  	Expunge         Expunge `codec:"expunge" json:"expunge"`
   825  }
   826  
   827  func (o SweepRes) DeepCopy() SweepRes {
   828  	return SweepRes{
   829  		FoundTask:       o.FoundTask,
   830  		DeletedMessages: o.DeletedMessages,
   831  		Expunge:         o.Expunge.DeepCopy(),
   832  	}
   833  }
   834  
   835  type ServerNowRes struct {
   836  	RateLimit *RateLimit   `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
   837  	Now       gregor1.Time `codec:"now" json:"now"`
   838  }
   839  
   840  func (o ServerNowRes) DeepCopy() ServerNowRes {
   841  	return ServerNowRes{
   842  		RateLimit: (func(x *RateLimit) *RateLimit {
   843  			if x == nil {
   844  				return nil
   845  			}
   846  			tmp := (*x).DeepCopy()
   847  			return &tmp
   848  		})(o.RateLimit),
   849  		Now: o.Now.DeepCopy(),
   850  	}
   851  }
   852  
   853  type ExternalAPIKeyTyp int
   854  
   855  const (
   856  	ExternalAPIKeyTyp_GOOGLEMAPS ExternalAPIKeyTyp = 0
   857  	ExternalAPIKeyTyp_GIPHY      ExternalAPIKeyTyp = 1
   858  )
   859  
   860  func (o ExternalAPIKeyTyp) DeepCopy() ExternalAPIKeyTyp { return o }
   861  
   862  var ExternalAPIKeyTypMap = map[string]ExternalAPIKeyTyp{
   863  	"GOOGLEMAPS": 0,
   864  	"GIPHY":      1,
   865  }
   866  
   867  var ExternalAPIKeyTypRevMap = map[ExternalAPIKeyTyp]string{
   868  	0: "GOOGLEMAPS",
   869  	1: "GIPHY",
   870  }
   871  
   872  func (e ExternalAPIKeyTyp) String() string {
   873  	if v, ok := ExternalAPIKeyTypRevMap[e]; ok {
   874  		return v
   875  	}
   876  	return fmt.Sprintf("%v", int(e))
   877  }
   878  
   879  type ExternalAPIKey struct {
   880  	Typ__        ExternalAPIKeyTyp `codec:"typ" json:"typ"`
   881  	Googlemaps__ *string           `codec:"googlemaps,omitempty" json:"googlemaps,omitempty"`
   882  	Giphy__      *string           `codec:"giphy,omitempty" json:"giphy,omitempty"`
   883  }
   884  
   885  func (o *ExternalAPIKey) Typ() (ret ExternalAPIKeyTyp, err error) {
   886  	switch o.Typ__ {
   887  	case ExternalAPIKeyTyp_GOOGLEMAPS:
   888  		if o.Googlemaps__ == nil {
   889  			err = errors.New("unexpected nil value for Googlemaps__")
   890  			return ret, err
   891  		}
   892  	case ExternalAPIKeyTyp_GIPHY:
   893  		if o.Giphy__ == nil {
   894  			err = errors.New("unexpected nil value for Giphy__")
   895  			return ret, err
   896  		}
   897  	}
   898  	return o.Typ__, nil
   899  }
   900  
   901  func (o ExternalAPIKey) Googlemaps() (res string) {
   902  	if o.Typ__ != ExternalAPIKeyTyp_GOOGLEMAPS {
   903  		panic("wrong case accessed")
   904  	}
   905  	if o.Googlemaps__ == nil {
   906  		return
   907  	}
   908  	return *o.Googlemaps__
   909  }
   910  
   911  func (o ExternalAPIKey) Giphy() (res string) {
   912  	if o.Typ__ != ExternalAPIKeyTyp_GIPHY {
   913  		panic("wrong case accessed")
   914  	}
   915  	if o.Giphy__ == nil {
   916  		return
   917  	}
   918  	return *o.Giphy__
   919  }
   920  
   921  func NewExternalAPIKeyWithGooglemaps(v string) ExternalAPIKey {
   922  	return ExternalAPIKey{
   923  		Typ__:        ExternalAPIKeyTyp_GOOGLEMAPS,
   924  		Googlemaps__: &v,
   925  	}
   926  }
   927  
   928  func NewExternalAPIKeyWithGiphy(v string) ExternalAPIKey {
   929  	return ExternalAPIKey{
   930  		Typ__:   ExternalAPIKeyTyp_GIPHY,
   931  		Giphy__: &v,
   932  	}
   933  }
   934  
   935  func (o ExternalAPIKey) DeepCopy() ExternalAPIKey {
   936  	return ExternalAPIKey{
   937  		Typ__: o.Typ__.DeepCopy(),
   938  		Googlemaps__: (func(x *string) *string {
   939  			if x == nil {
   940  				return nil
   941  			}
   942  			tmp := (*x)
   943  			return &tmp
   944  		})(o.Googlemaps__),
   945  		Giphy__: (func(x *string) *string {
   946  			if x == nil {
   947  				return nil
   948  			}
   949  			tmp := (*x)
   950  			return &tmp
   951  		})(o.Giphy__),
   952  	}
   953  }
   954  
   955  type BotInfoHashVers uint64
   956  
   957  func (o BotInfoHashVers) DeepCopy() BotInfoHashVers {
   958  	return o
   959  }
   960  
   961  type CommandConvVers uint64
   962  
   963  func (o CommandConvVers) DeepCopy() CommandConvVers {
   964  	return o
   965  }
   966  
   967  type RemoteBotCommandsAdvertisementPublic struct {
   968  	ConvID ConversationID `codec:"convID" json:"convID"`
   969  }
   970  
   971  func (o RemoteBotCommandsAdvertisementPublic) DeepCopy() RemoteBotCommandsAdvertisementPublic {
   972  	return RemoteBotCommandsAdvertisementPublic{
   973  		ConvID: o.ConvID.DeepCopy(),
   974  	}
   975  }
   976  
   977  type RemoteBotCommandsAdvertisementTLFID struct {
   978  	ConvID ConversationID `codec:"convID" json:"convID"`
   979  	TlfID  TLFID          `codec:"tlfID" json:"tlfID"`
   980  }
   981  
   982  func (o RemoteBotCommandsAdvertisementTLFID) DeepCopy() RemoteBotCommandsAdvertisementTLFID {
   983  	return RemoteBotCommandsAdvertisementTLFID{
   984  		ConvID: o.ConvID.DeepCopy(),
   985  		TlfID:  o.TlfID.DeepCopy(),
   986  	}
   987  }
   988  
   989  type RemoteBotCommandsAdvertisementConv struct {
   990  	ConvID          ConversationID `codec:"convID" json:"convID"`
   991  	AdvertiseConvID ConversationID `codec:"advertiseConvID" json:"advertiseConvID"`
   992  }
   993  
   994  func (o RemoteBotCommandsAdvertisementConv) DeepCopy() RemoteBotCommandsAdvertisementConv {
   995  	return RemoteBotCommandsAdvertisementConv{
   996  		ConvID:          o.ConvID.DeepCopy(),
   997  		AdvertiseConvID: o.AdvertiseConvID.DeepCopy(),
   998  	}
   999  }
  1000  
  1001  type RemoteBotCommandsAdvertisement struct {
  1002  	Typ__          BotCommandsAdvertisementTyp           `codec:"typ" json:"typ"`
  1003  	Public__       *RemoteBotCommandsAdvertisementPublic `codec:"public,omitempty" json:"public,omitempty"`
  1004  	TlfidMembers__ *RemoteBotCommandsAdvertisementTLFID  `codec:"tlfidMembers,omitempty" json:"tlfidMembers,omitempty"`
  1005  	TlfidConvs__   *RemoteBotCommandsAdvertisementTLFID  `codec:"tlfidConvs,omitempty" json:"tlfidConvs,omitempty"`
  1006  	Conv__         *RemoteBotCommandsAdvertisementConv   `codec:"conv,omitempty" json:"conv,omitempty"`
  1007  }
  1008  
  1009  func (o *RemoteBotCommandsAdvertisement) Typ() (ret BotCommandsAdvertisementTyp, err error) {
  1010  	switch o.Typ__ {
  1011  	case BotCommandsAdvertisementTyp_PUBLIC:
  1012  		if o.Public__ == nil {
  1013  			err = errors.New("unexpected nil value for Public__")
  1014  			return ret, err
  1015  		}
  1016  	case BotCommandsAdvertisementTyp_TLFID_MEMBERS:
  1017  		if o.TlfidMembers__ == nil {
  1018  			err = errors.New("unexpected nil value for TlfidMembers__")
  1019  			return ret, err
  1020  		}
  1021  	case BotCommandsAdvertisementTyp_TLFID_CONVS:
  1022  		if o.TlfidConvs__ == nil {
  1023  			err = errors.New("unexpected nil value for TlfidConvs__")
  1024  			return ret, err
  1025  		}
  1026  	case BotCommandsAdvertisementTyp_CONV:
  1027  		if o.Conv__ == nil {
  1028  			err = errors.New("unexpected nil value for Conv__")
  1029  			return ret, err
  1030  		}
  1031  	}
  1032  	return o.Typ__, nil
  1033  }
  1034  
  1035  func (o RemoteBotCommandsAdvertisement) Public() (res RemoteBotCommandsAdvertisementPublic) {
  1036  	if o.Typ__ != BotCommandsAdvertisementTyp_PUBLIC {
  1037  		panic("wrong case accessed")
  1038  	}
  1039  	if o.Public__ == nil {
  1040  		return
  1041  	}
  1042  	return *o.Public__
  1043  }
  1044  
  1045  func (o RemoteBotCommandsAdvertisement) TlfidMembers() (res RemoteBotCommandsAdvertisementTLFID) {
  1046  	if o.Typ__ != BotCommandsAdvertisementTyp_TLFID_MEMBERS {
  1047  		panic("wrong case accessed")
  1048  	}
  1049  	if o.TlfidMembers__ == nil {
  1050  		return
  1051  	}
  1052  	return *o.TlfidMembers__
  1053  }
  1054  
  1055  func (o RemoteBotCommandsAdvertisement) TlfidConvs() (res RemoteBotCommandsAdvertisementTLFID) {
  1056  	if o.Typ__ != BotCommandsAdvertisementTyp_TLFID_CONVS {
  1057  		panic("wrong case accessed")
  1058  	}
  1059  	if o.TlfidConvs__ == nil {
  1060  		return
  1061  	}
  1062  	return *o.TlfidConvs__
  1063  }
  1064  
  1065  func (o RemoteBotCommandsAdvertisement) Conv() (res RemoteBotCommandsAdvertisementConv) {
  1066  	if o.Typ__ != BotCommandsAdvertisementTyp_CONV {
  1067  		panic("wrong case accessed")
  1068  	}
  1069  	if o.Conv__ == nil {
  1070  		return
  1071  	}
  1072  	return *o.Conv__
  1073  }
  1074  
  1075  func NewRemoteBotCommandsAdvertisementWithPublic(v RemoteBotCommandsAdvertisementPublic) RemoteBotCommandsAdvertisement {
  1076  	return RemoteBotCommandsAdvertisement{
  1077  		Typ__:    BotCommandsAdvertisementTyp_PUBLIC,
  1078  		Public__: &v,
  1079  	}
  1080  }
  1081  
  1082  func NewRemoteBotCommandsAdvertisementWithTlfidMembers(v RemoteBotCommandsAdvertisementTLFID) RemoteBotCommandsAdvertisement {
  1083  	return RemoteBotCommandsAdvertisement{
  1084  		Typ__:          BotCommandsAdvertisementTyp_TLFID_MEMBERS,
  1085  		TlfidMembers__: &v,
  1086  	}
  1087  }
  1088  
  1089  func NewRemoteBotCommandsAdvertisementWithTlfidConvs(v RemoteBotCommandsAdvertisementTLFID) RemoteBotCommandsAdvertisement {
  1090  	return RemoteBotCommandsAdvertisement{
  1091  		Typ__:        BotCommandsAdvertisementTyp_TLFID_CONVS,
  1092  		TlfidConvs__: &v,
  1093  	}
  1094  }
  1095  
  1096  func NewRemoteBotCommandsAdvertisementWithConv(v RemoteBotCommandsAdvertisementConv) RemoteBotCommandsAdvertisement {
  1097  	return RemoteBotCommandsAdvertisement{
  1098  		Typ__:  BotCommandsAdvertisementTyp_CONV,
  1099  		Conv__: &v,
  1100  	}
  1101  }
  1102  
  1103  func (o RemoteBotCommandsAdvertisement) DeepCopy() RemoteBotCommandsAdvertisement {
  1104  	return RemoteBotCommandsAdvertisement{
  1105  		Typ__: o.Typ__.DeepCopy(),
  1106  		Public__: (func(x *RemoteBotCommandsAdvertisementPublic) *RemoteBotCommandsAdvertisementPublic {
  1107  			if x == nil {
  1108  				return nil
  1109  			}
  1110  			tmp := (*x).DeepCopy()
  1111  			return &tmp
  1112  		})(o.Public__),
  1113  		TlfidMembers__: (func(x *RemoteBotCommandsAdvertisementTLFID) *RemoteBotCommandsAdvertisementTLFID {
  1114  			if x == nil {
  1115  				return nil
  1116  			}
  1117  			tmp := (*x).DeepCopy()
  1118  			return &tmp
  1119  		})(o.TlfidMembers__),
  1120  		TlfidConvs__: (func(x *RemoteBotCommandsAdvertisementTLFID) *RemoteBotCommandsAdvertisementTLFID {
  1121  			if x == nil {
  1122  				return nil
  1123  			}
  1124  			tmp := (*x).DeepCopy()
  1125  			return &tmp
  1126  		})(o.TlfidConvs__),
  1127  		Conv__: (func(x *RemoteBotCommandsAdvertisementConv) *RemoteBotCommandsAdvertisementConv {
  1128  			if x == nil {
  1129  				return nil
  1130  			}
  1131  			tmp := (*x).DeepCopy()
  1132  			return &tmp
  1133  		})(o.Conv__),
  1134  	}
  1135  }
  1136  
  1137  type BotCommandConv struct {
  1138  	Uid               gregor1.UID                 `codec:"uid" json:"uid"`
  1139  	UntrustedTeamRole keybase1.TeamRole           `codec:"untrustedTeamRole" json:"untrustedTeamRole"`
  1140  	ConvID            ConversationID              `codec:"convID" json:"convID"`
  1141  	Vers              CommandConvVers             `codec:"vers" json:"vers"`
  1142  	Mtime             gregor1.Time                `codec:"mtime" json:"mtime"`
  1143  	Typ               BotCommandsAdvertisementTyp `codec:"typ" json:"typ"`
  1144  }
  1145  
  1146  func (o BotCommandConv) DeepCopy() BotCommandConv {
  1147  	return BotCommandConv{
  1148  		Uid:               o.Uid.DeepCopy(),
  1149  		UntrustedTeamRole: o.UntrustedTeamRole.DeepCopy(),
  1150  		ConvID:            o.ConvID.DeepCopy(),
  1151  		Vers:              o.Vers.DeepCopy(),
  1152  		Mtime:             o.Mtime.DeepCopy(),
  1153  		Typ:               o.Typ.DeepCopy(),
  1154  	}
  1155  }
  1156  
  1157  type BotInfo struct {
  1158  	ServerHashVers BotInfoHashVers  `codec:"serverHashVers" json:"serverHashVers"`
  1159  	ClientHashVers BotInfoHashVers  `codec:"clientHashVers" json:"clientHashVers"`
  1160  	CommandConvs   []BotCommandConv `codec:"commandConvs" json:"commandConvs"`
  1161  }
  1162  
  1163  func (o BotInfo) DeepCopy() BotInfo {
  1164  	return BotInfo{
  1165  		ServerHashVers: o.ServerHashVers.DeepCopy(),
  1166  		ClientHashVers: o.ClientHashVers.DeepCopy(),
  1167  		CommandConvs: (func(x []BotCommandConv) []BotCommandConv {
  1168  			if x == nil {
  1169  				return nil
  1170  			}
  1171  			ret := make([]BotCommandConv, len(x))
  1172  			for i, v := range x {
  1173  				vCopy := v.DeepCopy()
  1174  				ret[i] = vCopy
  1175  			}
  1176  			return ret
  1177  		})(o.CommandConvs),
  1178  	}
  1179  }
  1180  
  1181  type AdvertiseBotCommandsRes struct {
  1182  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1183  }
  1184  
  1185  func (o AdvertiseBotCommandsRes) DeepCopy() AdvertiseBotCommandsRes {
  1186  	return AdvertiseBotCommandsRes{
  1187  		RateLimit: (func(x *RateLimit) *RateLimit {
  1188  			if x == nil {
  1189  				return nil
  1190  			}
  1191  			tmp := (*x).DeepCopy()
  1192  			return &tmp
  1193  		})(o.RateLimit),
  1194  	}
  1195  }
  1196  
  1197  type RemoteClearBotCommandsFilterPublic struct {
  1198  }
  1199  
  1200  func (o RemoteClearBotCommandsFilterPublic) DeepCopy() RemoteClearBotCommandsFilterPublic {
  1201  	return RemoteClearBotCommandsFilterPublic{}
  1202  }
  1203  
  1204  type RemoteClearBotCommandsFilterTLFID struct {
  1205  	TlfID TLFID `codec:"tlfID" json:"tlfID"`
  1206  }
  1207  
  1208  func (o RemoteClearBotCommandsFilterTLFID) DeepCopy() RemoteClearBotCommandsFilterTLFID {
  1209  	return RemoteClearBotCommandsFilterTLFID{
  1210  		TlfID: o.TlfID.DeepCopy(),
  1211  	}
  1212  }
  1213  
  1214  type RemoteClearBotCommandsFilterConv struct {
  1215  	ConvID ConversationID `codec:"convID" json:"convID"`
  1216  }
  1217  
  1218  func (o RemoteClearBotCommandsFilterConv) DeepCopy() RemoteClearBotCommandsFilterConv {
  1219  	return RemoteClearBotCommandsFilterConv{
  1220  		ConvID: o.ConvID.DeepCopy(),
  1221  	}
  1222  }
  1223  
  1224  type RemoteClearBotCommandsFilter struct {
  1225  	Typ__          BotCommandsAdvertisementTyp         `codec:"typ" json:"typ"`
  1226  	Public__       *RemoteClearBotCommandsFilterPublic `codec:"public,omitempty" json:"public,omitempty"`
  1227  	TlfidMembers__ *RemoteClearBotCommandsFilterTLFID  `codec:"tlfidMembers,omitempty" json:"tlfidMembers,omitempty"`
  1228  	TlfidConvs__   *RemoteClearBotCommandsFilterTLFID  `codec:"tlfidConvs,omitempty" json:"tlfidConvs,omitempty"`
  1229  	Conv__         *RemoteClearBotCommandsFilterConv   `codec:"conv,omitempty" json:"conv,omitempty"`
  1230  }
  1231  
  1232  func (o *RemoteClearBotCommandsFilter) Typ() (ret BotCommandsAdvertisementTyp, err error) {
  1233  	switch o.Typ__ {
  1234  	case BotCommandsAdvertisementTyp_PUBLIC:
  1235  		if o.Public__ == nil {
  1236  			err = errors.New("unexpected nil value for Public__")
  1237  			return ret, err
  1238  		}
  1239  	case BotCommandsAdvertisementTyp_TLFID_MEMBERS:
  1240  		if o.TlfidMembers__ == nil {
  1241  			err = errors.New("unexpected nil value for TlfidMembers__")
  1242  			return ret, err
  1243  		}
  1244  	case BotCommandsAdvertisementTyp_TLFID_CONVS:
  1245  		if o.TlfidConvs__ == nil {
  1246  			err = errors.New("unexpected nil value for TlfidConvs__")
  1247  			return ret, err
  1248  		}
  1249  	case BotCommandsAdvertisementTyp_CONV:
  1250  		if o.Conv__ == nil {
  1251  			err = errors.New("unexpected nil value for Conv__")
  1252  			return ret, err
  1253  		}
  1254  	}
  1255  	return o.Typ__, nil
  1256  }
  1257  
  1258  func (o RemoteClearBotCommandsFilter) Public() (res RemoteClearBotCommandsFilterPublic) {
  1259  	if o.Typ__ != BotCommandsAdvertisementTyp_PUBLIC {
  1260  		panic("wrong case accessed")
  1261  	}
  1262  	if o.Public__ == nil {
  1263  		return
  1264  	}
  1265  	return *o.Public__
  1266  }
  1267  
  1268  func (o RemoteClearBotCommandsFilter) TlfidMembers() (res RemoteClearBotCommandsFilterTLFID) {
  1269  	if o.Typ__ != BotCommandsAdvertisementTyp_TLFID_MEMBERS {
  1270  		panic("wrong case accessed")
  1271  	}
  1272  	if o.TlfidMembers__ == nil {
  1273  		return
  1274  	}
  1275  	return *o.TlfidMembers__
  1276  }
  1277  
  1278  func (o RemoteClearBotCommandsFilter) TlfidConvs() (res RemoteClearBotCommandsFilterTLFID) {
  1279  	if o.Typ__ != BotCommandsAdvertisementTyp_TLFID_CONVS {
  1280  		panic("wrong case accessed")
  1281  	}
  1282  	if o.TlfidConvs__ == nil {
  1283  		return
  1284  	}
  1285  	return *o.TlfidConvs__
  1286  }
  1287  
  1288  func (o RemoteClearBotCommandsFilter) Conv() (res RemoteClearBotCommandsFilterConv) {
  1289  	if o.Typ__ != BotCommandsAdvertisementTyp_CONV {
  1290  		panic("wrong case accessed")
  1291  	}
  1292  	if o.Conv__ == nil {
  1293  		return
  1294  	}
  1295  	return *o.Conv__
  1296  }
  1297  
  1298  func NewRemoteClearBotCommandsFilterWithPublic(v RemoteClearBotCommandsFilterPublic) RemoteClearBotCommandsFilter {
  1299  	return RemoteClearBotCommandsFilter{
  1300  		Typ__:    BotCommandsAdvertisementTyp_PUBLIC,
  1301  		Public__: &v,
  1302  	}
  1303  }
  1304  
  1305  func NewRemoteClearBotCommandsFilterWithTlfidMembers(v RemoteClearBotCommandsFilterTLFID) RemoteClearBotCommandsFilter {
  1306  	return RemoteClearBotCommandsFilter{
  1307  		Typ__:          BotCommandsAdvertisementTyp_TLFID_MEMBERS,
  1308  		TlfidMembers__: &v,
  1309  	}
  1310  }
  1311  
  1312  func NewRemoteClearBotCommandsFilterWithTlfidConvs(v RemoteClearBotCommandsFilterTLFID) RemoteClearBotCommandsFilter {
  1313  	return RemoteClearBotCommandsFilter{
  1314  		Typ__:        BotCommandsAdvertisementTyp_TLFID_CONVS,
  1315  		TlfidConvs__: &v,
  1316  	}
  1317  }
  1318  
  1319  func NewRemoteClearBotCommandsFilterWithConv(v RemoteClearBotCommandsFilterConv) RemoteClearBotCommandsFilter {
  1320  	return RemoteClearBotCommandsFilter{
  1321  		Typ__:  BotCommandsAdvertisementTyp_CONV,
  1322  		Conv__: &v,
  1323  	}
  1324  }
  1325  
  1326  func (o RemoteClearBotCommandsFilter) DeepCopy() RemoteClearBotCommandsFilter {
  1327  	return RemoteClearBotCommandsFilter{
  1328  		Typ__: o.Typ__.DeepCopy(),
  1329  		Public__: (func(x *RemoteClearBotCommandsFilterPublic) *RemoteClearBotCommandsFilterPublic {
  1330  			if x == nil {
  1331  				return nil
  1332  			}
  1333  			tmp := (*x).DeepCopy()
  1334  			return &tmp
  1335  		})(o.Public__),
  1336  		TlfidMembers__: (func(x *RemoteClearBotCommandsFilterTLFID) *RemoteClearBotCommandsFilterTLFID {
  1337  			if x == nil {
  1338  				return nil
  1339  			}
  1340  			tmp := (*x).DeepCopy()
  1341  			return &tmp
  1342  		})(o.TlfidMembers__),
  1343  		TlfidConvs__: (func(x *RemoteClearBotCommandsFilterTLFID) *RemoteClearBotCommandsFilterTLFID {
  1344  			if x == nil {
  1345  				return nil
  1346  			}
  1347  			tmp := (*x).DeepCopy()
  1348  			return &tmp
  1349  		})(o.TlfidConvs__),
  1350  		Conv__: (func(x *RemoteClearBotCommandsFilterConv) *RemoteClearBotCommandsFilterConv {
  1351  			if x == nil {
  1352  				return nil
  1353  			}
  1354  			tmp := (*x).DeepCopy()
  1355  			return &tmp
  1356  		})(o.Conv__),
  1357  	}
  1358  }
  1359  
  1360  type ClearBotCommandsRes struct {
  1361  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1362  }
  1363  
  1364  func (o ClearBotCommandsRes) DeepCopy() ClearBotCommandsRes {
  1365  	return ClearBotCommandsRes{
  1366  		RateLimit: (func(x *RateLimit) *RateLimit {
  1367  			if x == nil {
  1368  				return nil
  1369  			}
  1370  			tmp := (*x).DeepCopy()
  1371  			return &tmp
  1372  		})(o.RateLimit),
  1373  	}
  1374  }
  1375  
  1376  type BotInfoResponseTyp int
  1377  
  1378  const (
  1379  	BotInfoResponseTyp_UPTODATE BotInfoResponseTyp = 0
  1380  	BotInfoResponseTyp_INFO     BotInfoResponseTyp = 1
  1381  )
  1382  
  1383  func (o BotInfoResponseTyp) DeepCopy() BotInfoResponseTyp { return o }
  1384  
  1385  var BotInfoResponseTypMap = map[string]BotInfoResponseTyp{
  1386  	"UPTODATE": 0,
  1387  	"INFO":     1,
  1388  }
  1389  
  1390  var BotInfoResponseTypRevMap = map[BotInfoResponseTyp]string{
  1391  	0: "UPTODATE",
  1392  	1: "INFO",
  1393  }
  1394  
  1395  func (e BotInfoResponseTyp) String() string {
  1396  	if v, ok := BotInfoResponseTypRevMap[e]; ok {
  1397  		return v
  1398  	}
  1399  	return fmt.Sprintf("%v", int(e))
  1400  }
  1401  
  1402  type BotInfoResponse struct {
  1403  	Typ__  BotInfoResponseTyp `codec:"typ" json:"typ"`
  1404  	Info__ *BotInfo           `codec:"info,omitempty" json:"info,omitempty"`
  1405  }
  1406  
  1407  func (o *BotInfoResponse) Typ() (ret BotInfoResponseTyp, err error) {
  1408  	switch o.Typ__ {
  1409  	case BotInfoResponseTyp_INFO:
  1410  		if o.Info__ == nil {
  1411  			err = errors.New("unexpected nil value for Info__")
  1412  			return ret, err
  1413  		}
  1414  	}
  1415  	return o.Typ__, nil
  1416  }
  1417  
  1418  func (o BotInfoResponse) Info() (res BotInfo) {
  1419  	if o.Typ__ != BotInfoResponseTyp_INFO {
  1420  		panic("wrong case accessed")
  1421  	}
  1422  	if o.Info__ == nil {
  1423  		return
  1424  	}
  1425  	return *o.Info__
  1426  }
  1427  
  1428  func NewBotInfoResponseWithUptodate() BotInfoResponse {
  1429  	return BotInfoResponse{
  1430  		Typ__: BotInfoResponseTyp_UPTODATE,
  1431  	}
  1432  }
  1433  
  1434  func NewBotInfoResponseWithInfo(v BotInfo) BotInfoResponse {
  1435  	return BotInfoResponse{
  1436  		Typ__:  BotInfoResponseTyp_INFO,
  1437  		Info__: &v,
  1438  	}
  1439  }
  1440  
  1441  func (o BotInfoResponse) DeepCopy() BotInfoResponse {
  1442  	return BotInfoResponse{
  1443  		Typ__: o.Typ__.DeepCopy(),
  1444  		Info__: (func(x *BotInfo) *BotInfo {
  1445  			if x == nil {
  1446  				return nil
  1447  			}
  1448  			tmp := (*x).DeepCopy()
  1449  			return &tmp
  1450  		})(o.Info__),
  1451  	}
  1452  }
  1453  
  1454  type GetBotInfoRes struct {
  1455  	Response  BotInfoResponse `codec:"response" json:"response"`
  1456  	RateLimit *RateLimit      `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1457  }
  1458  
  1459  func (o GetBotInfoRes) DeepCopy() GetBotInfoRes {
  1460  	return GetBotInfoRes{
  1461  		Response: o.Response.DeepCopy(),
  1462  		RateLimit: (func(x *RateLimit) *RateLimit {
  1463  			if x == nil {
  1464  				return nil
  1465  			}
  1466  			tmp := (*x).DeepCopy()
  1467  			return &tmp
  1468  		})(o.RateLimit),
  1469  	}
  1470  }
  1471  
  1472  type BotInfoHash []byte
  1473  
  1474  func (o BotInfoHash) DeepCopy() BotInfoHash {
  1475  	return (func(x []byte) []byte {
  1476  		if x == nil {
  1477  			return nil
  1478  		}
  1479  		return append([]byte{}, x...)
  1480  	})(o)
  1481  }
  1482  
  1483  type GetDefaultTeamChannelsRes struct {
  1484  	Convs     []ConversationID `codec:"convs" json:"convs"`
  1485  	RateLimit *RateLimit       `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1486  }
  1487  
  1488  func (o GetDefaultTeamChannelsRes) DeepCopy() GetDefaultTeamChannelsRes {
  1489  	return GetDefaultTeamChannelsRes{
  1490  		Convs: (func(x []ConversationID) []ConversationID {
  1491  			if x == nil {
  1492  				return nil
  1493  			}
  1494  			ret := make([]ConversationID, len(x))
  1495  			for i, v := range x {
  1496  				vCopy := v.DeepCopy()
  1497  				ret[i] = vCopy
  1498  			}
  1499  			return ret
  1500  		})(o.Convs),
  1501  		RateLimit: (func(x *RateLimit) *RateLimit {
  1502  			if x == nil {
  1503  				return nil
  1504  			}
  1505  			tmp := (*x).DeepCopy()
  1506  			return &tmp
  1507  		})(o.RateLimit),
  1508  	}
  1509  }
  1510  
  1511  type SetDefaultTeamChannelsRes struct {
  1512  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1513  }
  1514  
  1515  func (o SetDefaultTeamChannelsRes) DeepCopy() SetDefaultTeamChannelsRes {
  1516  	return SetDefaultTeamChannelsRes{
  1517  		RateLimit: (func(x *RateLimit) *RateLimit {
  1518  			if x == nil {
  1519  				return nil
  1520  			}
  1521  			tmp := (*x).DeepCopy()
  1522  			return &tmp
  1523  		})(o.RateLimit),
  1524  	}
  1525  }
  1526  
  1527  type GetRecentJoinsRes struct {
  1528  	NumJoins  int        `codec:"numJoins" json:"numJoins"`
  1529  	RateLimit *RateLimit `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1530  }
  1531  
  1532  func (o GetRecentJoinsRes) DeepCopy() GetRecentJoinsRes {
  1533  	return GetRecentJoinsRes{
  1534  		NumJoins: o.NumJoins,
  1535  		RateLimit: (func(x *RateLimit) *RateLimit {
  1536  			if x == nil {
  1537  				return nil
  1538  			}
  1539  			tmp := (*x).DeepCopy()
  1540  			return &tmp
  1541  		})(o.RateLimit),
  1542  	}
  1543  }
  1544  
  1545  type RefreshParticipantsRemoteRes struct {
  1546  	HashMatch bool          `codec:"hashMatch" json:"hashMatch"`
  1547  	Uids      []gregor1.UID `codec:"uids" json:"uids"`
  1548  	Hash      string        `codec:"hash" json:"hash"`
  1549  	RateLimit *RateLimit    `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1550  }
  1551  
  1552  func (o RefreshParticipantsRemoteRes) DeepCopy() RefreshParticipantsRemoteRes {
  1553  	return RefreshParticipantsRemoteRes{
  1554  		HashMatch: o.HashMatch,
  1555  		Uids: (func(x []gregor1.UID) []gregor1.UID {
  1556  			if x == nil {
  1557  				return nil
  1558  			}
  1559  			ret := make([]gregor1.UID, len(x))
  1560  			for i, v := range x {
  1561  				vCopy := v.DeepCopy()
  1562  				ret[i] = vCopy
  1563  			}
  1564  			return ret
  1565  		})(o.Uids),
  1566  		Hash: o.Hash,
  1567  		RateLimit: (func(x *RateLimit) *RateLimit {
  1568  			if x == nil {
  1569  				return nil
  1570  			}
  1571  			tmp := (*x).DeepCopy()
  1572  			return &tmp
  1573  		})(o.RateLimit),
  1574  	}
  1575  }
  1576  
  1577  type GetLastActiveAtRes struct {
  1578  	LastActiveAt gregor1.Time `codec:"lastActiveAt" json:"lastActiveAt"`
  1579  	RateLimit    *RateLimit   `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1580  }
  1581  
  1582  func (o GetLastActiveAtRes) DeepCopy() GetLastActiveAtRes {
  1583  	return GetLastActiveAtRes{
  1584  		LastActiveAt: o.LastActiveAt.DeepCopy(),
  1585  		RateLimit: (func(x *RateLimit) *RateLimit {
  1586  			if x == nil {
  1587  				return nil
  1588  			}
  1589  			tmp := (*x).DeepCopy()
  1590  			return &tmp
  1591  		})(o.RateLimit),
  1592  	}
  1593  }
  1594  
  1595  type ResetConversationMember struct {
  1596  	ConvID ConversationID `codec:"convID" json:"convID"`
  1597  	Uid    gregor1.UID    `codec:"uid" json:"uid"`
  1598  }
  1599  
  1600  func (o ResetConversationMember) DeepCopy() ResetConversationMember {
  1601  	return ResetConversationMember{
  1602  		ConvID: o.ConvID.DeepCopy(),
  1603  		Uid:    o.Uid.DeepCopy(),
  1604  	}
  1605  }
  1606  
  1607  type GetResetConversationsRes struct {
  1608  	ResetConvs []ResetConversationMember `codec:"resetConvs" json:"resetConvs"`
  1609  	RateLimit  *RateLimit                `codec:"rateLimit,omitempty" json:"rateLimit,omitempty"`
  1610  }
  1611  
  1612  func (o GetResetConversationsRes) DeepCopy() GetResetConversationsRes {
  1613  	return GetResetConversationsRes{
  1614  		ResetConvs: (func(x []ResetConversationMember) []ResetConversationMember {
  1615  			if x == nil {
  1616  				return nil
  1617  			}
  1618  			ret := make([]ResetConversationMember, len(x))
  1619  			for i, v := range x {
  1620  				vCopy := v.DeepCopy()
  1621  				ret[i] = vCopy
  1622  			}
  1623  			return ret
  1624  		})(o.ResetConvs),
  1625  		RateLimit: (func(x *RateLimit) *RateLimit {
  1626  			if x == nil {
  1627  				return nil
  1628  			}
  1629  			tmp := (*x).DeepCopy()
  1630  			return &tmp
  1631  		})(o.RateLimit),
  1632  	}
  1633  }
  1634  
  1635  type GetInboxRemoteArg struct {
  1636  	Vers       InboxVers      `codec:"vers" json:"vers"`
  1637  	Query      *GetInboxQuery `codec:"query,omitempty" json:"query,omitempty"`
  1638  	Pagination *Pagination    `codec:"pagination,omitempty" json:"pagination,omitempty"`
  1639  }
  1640  
  1641  type GetThreadRemoteArg struct {
  1642  	ConversationID ConversationID  `codec:"conversationID" json:"conversationID"`
  1643  	Reason         GetThreadReason `codec:"reason" json:"reason"`
  1644  	Query          *GetThreadQuery `codec:"query,omitempty" json:"query,omitempty"`
  1645  	Pagination     *Pagination     `codec:"pagination,omitempty" json:"pagination,omitempty"`
  1646  }
  1647  
  1648  type GetUnreadlineRemoteArg struct {
  1649  	ConvID    ConversationID `codec:"convID" json:"convID"`
  1650  	ReadMsgID MessageID      `codec:"readMsgID" json:"readMsgID"`
  1651  }
  1652  
  1653  type GetPublicConversationsArg struct {
  1654  	TlfID            TLFID     `codec:"tlfID" json:"tlfID"`
  1655  	TopicType        TopicType `codec:"topicType" json:"topicType"`
  1656  	SummarizeMaxMsgs bool      `codec:"summarizeMaxMsgs" json:"summarizeMaxMsgs"`
  1657  }
  1658  
  1659  type PostRemoteArg struct {
  1660  	ConversationID ConversationID            `codec:"conversationID" json:"conversationID"`
  1661  	MessageBoxed   MessageBoxed              `codec:"messageBoxed" json:"messageBoxed"`
  1662  	AtMentions     []gregor1.UID             `codec:"atMentions" json:"atMentions"`
  1663  	ChannelMention ChannelMention            `codec:"channelMention" json:"channelMention"`
  1664  	TopicNameState *TopicNameState           `codec:"topicNameState,omitempty" json:"topicNameState,omitempty"`
  1665  	JoinMentionsAs *ConversationMemberStatus `codec:"joinMentionsAs,omitempty" json:"joinMentionsAs,omitempty"`
  1666  }
  1667  
  1668  type NewConversationRemoteArg struct {
  1669  	IdTriple ConversationIDTriple `codec:"idTriple" json:"idTriple"`
  1670  }
  1671  
  1672  type NewConversationRemote2Arg struct {
  1673  	IdTriple         ConversationIDTriple    `codec:"idTriple" json:"idTriple"`
  1674  	TLFMessage       MessageBoxed            `codec:"TLFMessage" json:"TLFMessage"`
  1675  	MembersType      ConversationMembersType `codec:"membersType" json:"membersType"`
  1676  	TopicNameState   *TopicNameState         `codec:"topicNameState,omitempty" json:"topicNameState,omitempty"`
  1677  	MemberSourceConv *ConversationID         `codec:"memberSourceConv,omitempty" json:"memberSourceConv,omitempty"`
  1678  	RetentionPolicy  *RetentionPolicy        `codec:"retentionPolicy,omitempty" json:"retentionPolicy,omitempty"`
  1679  }
  1680  
  1681  type GetMessagesRemoteArg struct {
  1682  	ConversationID ConversationID   `codec:"conversationID" json:"conversationID"`
  1683  	ThreadReason   *GetThreadReason `codec:"threadReason,omitempty" json:"threadReason,omitempty"`
  1684  	MessageIDs     []MessageID      `codec:"messageIDs" json:"messageIDs"`
  1685  }
  1686  
  1687  type MarkAsReadArg struct {
  1688  	ConversationID ConversationID `codec:"conversationID" json:"conversationID"`
  1689  	MsgID          MessageID      `codec:"msgID" json:"msgID"`
  1690  	ForceUnread    bool           `codec:"forceUnread" json:"forceUnread"`
  1691  }
  1692  
  1693  type SetConversationStatusArg struct {
  1694  	ConversationID ConversationID     `codec:"conversationID" json:"conversationID"`
  1695  	Status         ConversationStatus `codec:"status" json:"status"`
  1696  }
  1697  
  1698  type GetUnreadUpdateFullArg struct {
  1699  	InboxVers InboxVers `codec:"inboxVers" json:"inboxVers"`
  1700  }
  1701  
  1702  type GetS3ParamsArg struct {
  1703  	ConversationID ConversationID `codec:"conversationID" json:"conversationID"`
  1704  	TempCreds      bool           `codec:"tempCreds" json:"tempCreds"`
  1705  }
  1706  
  1707  type S3SignArg struct {
  1708  	Version   int    `codec:"version" json:"version"`
  1709  	Payload   []byte `codec:"payload" json:"payload"`
  1710  	TempCreds bool   `codec:"tempCreds" json:"tempCreds"`
  1711  }
  1712  
  1713  type GetInboxVersionArg struct {
  1714  	Uid gregor1.UID `codec:"uid" json:"uid"`
  1715  }
  1716  
  1717  type SyncInboxArg struct {
  1718  	Vers InboxVers `codec:"vers" json:"vers"`
  1719  }
  1720  
  1721  type SyncChatArg struct {
  1722  	Vers             InboxVers             `codec:"vers" json:"vers"`
  1723  	SummarizeMaxMsgs bool                  `codec:"summarizeMaxMsgs" json:"summarizeMaxMsgs"`
  1724  	ParticipantsMode InboxParticipantsMode `codec:"participantsMode" json:"participantsMode"`
  1725  }
  1726  
  1727  type SyncAllArg struct {
  1728  	Uid              gregor1.UID           `codec:"uid" json:"uid"`
  1729  	DeviceID         gregor1.DeviceID      `codec:"deviceID" json:"deviceID"`
  1730  	Session          gregor1.SessionToken  `codec:"session" json:"session"`
  1731  	InboxVers        InboxVers             `codec:"inboxVers" json:"inboxVers"`
  1732  	Ctime            gregor1.Time          `codec:"ctime" json:"ctime"`
  1733  	Fresh            bool                  `codec:"fresh" json:"fresh"`
  1734  	ProtVers         SyncAllProtVers       `codec:"protVers" json:"protVers"`
  1735  	HostName         string                `codec:"hostName" json:"hostName"`
  1736  	SummarizeMaxMsgs bool                  `codec:"summarizeMaxMsgs" json:"summarizeMaxMsgs"`
  1737  	ParticipantsMode InboxParticipantsMode `codec:"participantsMode" json:"participantsMode"`
  1738  }
  1739  
  1740  type TlfFinalizeArg struct {
  1741  	TlfID          TLFID         `codec:"tlfID" json:"tlfID"`
  1742  	ResetUser      string        `codec:"resetUser" json:"resetUser"`
  1743  	ResetDate      string        `codec:"resetDate" json:"resetDate"`
  1744  	ResetTimestamp gregor1.Time  `codec:"resetTimestamp" json:"resetTimestamp"`
  1745  	ResetFull      string        `codec:"resetFull" json:"resetFull"`
  1746  	ResetUID       *keybase1.UID `codec:"resetUID,omitempty" json:"resetUID,omitempty"`
  1747  }
  1748  
  1749  type TlfResolveArg struct {
  1750  	TlfID           TLFID         `codec:"tlfID" json:"tlfID"`
  1751  	ResolvedWriters []gregor1.UID `codec:"resolvedWriters" json:"resolvedWriters"`
  1752  	ResolvedReaders []gregor1.UID `codec:"resolvedReaders" json:"resolvedReaders"`
  1753  }
  1754  
  1755  type UpdateTypingRemoteArg struct {
  1756  	Uid      gregor1.UID      `codec:"uid" json:"uid"`
  1757  	DeviceID gregor1.DeviceID `codec:"deviceID" json:"deviceID"`
  1758  	ConvID   ConversationID   `codec:"convID" json:"convID"`
  1759  	Typing   bool             `codec:"typing" json:"typing"`
  1760  }
  1761  
  1762  type JoinConversationArg struct {
  1763  	ConvID ConversationID `codec:"convID" json:"convID"`
  1764  }
  1765  
  1766  type LeaveConversationArg struct {
  1767  	ConvID ConversationID `codec:"convID" json:"convID"`
  1768  }
  1769  
  1770  type PreviewConversationArg struct {
  1771  	ConvID ConversationID `codec:"convID" json:"convID"`
  1772  }
  1773  
  1774  type DeleteConversationArg struct {
  1775  	ConvID ConversationID `codec:"convID" json:"convID"`
  1776  }
  1777  
  1778  type RemoveFromConversationArg struct {
  1779  	ConvID ConversationID `codec:"convID" json:"convID"`
  1780  	Users  []gregor1.UID  `codec:"users" json:"users"`
  1781  }
  1782  
  1783  type GetMessageBeforeArg struct {
  1784  	ConvID ConversationID      `codec:"convID" json:"convID"`
  1785  	Age    gregor1.DurationSec `codec:"age" json:"age"`
  1786  }
  1787  
  1788  type GetTLFConversationsArg struct {
  1789  	TlfID            TLFID     `codec:"tlfID" json:"tlfID"`
  1790  	TopicType        TopicType `codec:"topicType" json:"topicType"`
  1791  	SummarizeMaxMsgs bool      `codec:"summarizeMaxMsgs" json:"summarizeMaxMsgs"`
  1792  }
  1793  
  1794  type SetAppNotificationSettingsArg struct {
  1795  	ConvID   ConversationID               `codec:"convID" json:"convID"`
  1796  	Settings ConversationNotificationInfo `codec:"settings" json:"settings"`
  1797  }
  1798  
  1799  type SetGlobalAppNotificationSettingsArg struct {
  1800  	Settings GlobalAppNotificationSettings `codec:"settings" json:"settings"`
  1801  }
  1802  
  1803  type GetGlobalAppNotificationSettingsArg struct {
  1804  }
  1805  
  1806  type RemoteNotificationSuccessfulArg struct {
  1807  	AuthToken        gregor1.SessionToken `codec:"authToken" json:"authToken"`
  1808  	CompanionPushIDs []string             `codec:"companionPushIDs" json:"companionPushIDs"`
  1809  }
  1810  
  1811  type SetConvRetentionArg struct {
  1812  	ConvID       ConversationID  `codec:"convID" json:"convID"`
  1813  	Policy       RetentionPolicy `codec:"policy" json:"policy"`
  1814  	SweepChannel uint64          `codec:"sweepChannel" json:"sweepChannel"`
  1815  }
  1816  
  1817  type SetTeamRetentionArg struct {
  1818  	TeamID       keybase1.TeamID `codec:"teamID" json:"teamID"`
  1819  	Policy       RetentionPolicy `codec:"policy" json:"policy"`
  1820  	SweepChannel uint64          `codec:"sweepChannel" json:"sweepChannel"`
  1821  }
  1822  
  1823  type SetConvMinWriterRoleArg struct {
  1824  	ConvID ConversationID    `codec:"convID" json:"convID"`
  1825  	Role   keybase1.TeamRole `codec:"role" json:"role"`
  1826  }
  1827  
  1828  type RetentionSweepConvArg struct {
  1829  	ConvID ConversationID `codec:"convID" json:"convID"`
  1830  }
  1831  
  1832  type UpgradeKBFSToImpteamArg struct {
  1833  	TlfID  TLFID           `codec:"tlfID" json:"tlfID"`
  1834  	TeamID keybase1.TeamID `codec:"teamID" json:"teamID"`
  1835  }
  1836  
  1837  type RegisterSharePostArg struct {
  1838  	ConvID   ConversationID   `codec:"convID" json:"convID"`
  1839  	DeviceID gregor1.DeviceID `codec:"deviceID" json:"deviceID"`
  1840  	OutboxID OutboxID         `codec:"outboxID" json:"outboxID"`
  1841  }
  1842  
  1843  type FailSharePostArg struct {
  1844  	ConvID   ConversationID   `codec:"convID" json:"convID"`
  1845  	DeviceID gregor1.DeviceID `codec:"deviceID" json:"deviceID"`
  1846  	OutboxID OutboxID         `codec:"outboxID" json:"outboxID"`
  1847  }
  1848  
  1849  type BroadcastGregorMessageToConvArg struct {
  1850  	ConvID ConversationID  `codec:"convID" json:"convID"`
  1851  	Msg    gregor1.Message `codec:"msg" json:"msg"`
  1852  }
  1853  
  1854  type TeamIDOfConvArg struct {
  1855  	ConvID ConversationID `codec:"convID" json:"convID"`
  1856  }
  1857  
  1858  type ServerNowArg struct {
  1859  }
  1860  
  1861  type GetExternalAPIKeysArg struct {
  1862  	Typs []ExternalAPIKeyTyp `codec:"typs" json:"typs"`
  1863  }
  1864  
  1865  type AdvertiseBotCommandsArg struct {
  1866  	Ads []RemoteBotCommandsAdvertisement `codec:"ads" json:"ads"`
  1867  }
  1868  
  1869  type ClearBotCommandsArg struct {
  1870  	Filter *RemoteClearBotCommandsFilter `codec:"filter,omitempty" json:"filter,omitempty"`
  1871  }
  1872  
  1873  type GetBotInfoArg struct {
  1874  	ConvID         ConversationID  `codec:"convID" json:"convID"`
  1875  	InfoHash       BotInfoHash     `codec:"infoHash" json:"infoHash"`
  1876  	ClientHashVers BotInfoHashVers `codec:"clientHashVers" json:"clientHashVers"`
  1877  }
  1878  
  1879  type GetDefaultTeamChannelsArg struct {
  1880  	TeamID keybase1.TeamID `codec:"teamID" json:"teamID"`
  1881  }
  1882  
  1883  type SetDefaultTeamChannelsArg struct {
  1884  	TeamID keybase1.TeamID  `codec:"teamID" json:"teamID"`
  1885  	Convs  []ConversationID `codec:"convs" json:"convs"`
  1886  }
  1887  
  1888  type GetRecentJoinsArg struct {
  1889  	ConvID ConversationID `codec:"convID" json:"convID"`
  1890  }
  1891  
  1892  type RefreshParticipantsRemoteArg struct {
  1893  	ConvID ConversationID `codec:"convID" json:"convID"`
  1894  	Hash   string         `codec:"hash" json:"hash"`
  1895  }
  1896  
  1897  type GetLastActiveAtArg struct {
  1898  	TeamID keybase1.TeamID `codec:"teamID" json:"teamID"`
  1899  	Uid    gregor1.UID     `codec:"uid" json:"uid"`
  1900  }
  1901  
  1902  type GetResetConversationsArg struct {
  1903  }
  1904  
  1905  type RemoteInterface interface {
  1906  	GetInboxRemote(context.Context, GetInboxRemoteArg) (GetInboxRemoteRes, error)
  1907  	GetThreadRemote(context.Context, GetThreadRemoteArg) (GetThreadRemoteRes, error)
  1908  	GetUnreadlineRemote(context.Context, GetUnreadlineRemoteArg) (GetUnreadlineRemoteRes, error)
  1909  	GetPublicConversations(context.Context, GetPublicConversationsArg) (GetPublicConversationsRes, error)
  1910  	PostRemote(context.Context, PostRemoteArg) (PostRemoteRes, error)
  1911  	NewConversationRemote(context.Context, ConversationIDTriple) (NewConversationRemoteRes, error)
  1912  	NewConversationRemote2(context.Context, NewConversationRemote2Arg) (NewConversationRemoteRes, error)
  1913  	GetMessagesRemote(context.Context, GetMessagesRemoteArg) (GetMessagesRemoteRes, error)
  1914  	MarkAsRead(context.Context, MarkAsReadArg) (MarkAsReadRes, error)
  1915  	SetConversationStatus(context.Context, SetConversationStatusArg) (SetConversationStatusRes, error)
  1916  	GetUnreadUpdateFull(context.Context, InboxVers) (UnreadUpdateFull, error)
  1917  	GetS3Params(context.Context, GetS3ParamsArg) (S3Params, error)
  1918  	S3Sign(context.Context, S3SignArg) ([]byte, error)
  1919  	GetInboxVersion(context.Context, gregor1.UID) (InboxVers, error)
  1920  	SyncInbox(context.Context, InboxVers) (SyncInboxRes, error)
  1921  	SyncChat(context.Context, SyncChatArg) (SyncChatRes, error)
  1922  	SyncAll(context.Context, SyncAllArg) (SyncAllResult, error)
  1923  	TlfFinalize(context.Context, TlfFinalizeArg) error
  1924  	TlfResolve(context.Context, TlfResolveArg) error
  1925  	UpdateTypingRemote(context.Context, UpdateTypingRemoteArg) error
  1926  	JoinConversation(context.Context, ConversationID) (JoinLeaveConversationRemoteRes, error)
  1927  	LeaveConversation(context.Context, ConversationID) (JoinLeaveConversationRemoteRes, error)
  1928  	PreviewConversation(context.Context, ConversationID) (JoinLeaveConversationRemoteRes, error)
  1929  	DeleteConversation(context.Context, ConversationID) (DeleteConversationRemoteRes, error)
  1930  	RemoveFromConversation(context.Context, RemoveFromConversationArg) (RemoveFromConversationRemoteRes, error)
  1931  	GetMessageBefore(context.Context, GetMessageBeforeArg) (GetMessageBeforeRes, error)
  1932  	GetTLFConversations(context.Context, GetTLFConversationsArg) (GetTLFConversationsRes, error)
  1933  	SetAppNotificationSettings(context.Context, SetAppNotificationSettingsArg) (SetAppNotificationSettingsRes, error)
  1934  	SetGlobalAppNotificationSettings(context.Context, GlobalAppNotificationSettings) error
  1935  	GetGlobalAppNotificationSettings(context.Context) (GlobalAppNotificationSettings, error)
  1936  	RemoteNotificationSuccessful(context.Context, RemoteNotificationSuccessfulArg) error
  1937  	SetConvRetention(context.Context, SetConvRetentionArg) (SetRetentionRes, error)
  1938  	SetTeamRetention(context.Context, SetTeamRetentionArg) (SetRetentionRes, error)
  1939  	SetConvMinWriterRole(context.Context, SetConvMinWriterRoleArg) (SetConvMinWriterRoleRes, error)
  1940  	RetentionSweepConv(context.Context, ConversationID) (SweepRes, error)
  1941  	UpgradeKBFSToImpteam(context.Context, UpgradeKBFSToImpteamArg) error
  1942  	RegisterSharePost(context.Context, RegisterSharePostArg) error
  1943  	FailSharePost(context.Context, FailSharePostArg) error
  1944  	BroadcastGregorMessageToConv(context.Context, BroadcastGregorMessageToConvArg) error
  1945  	TeamIDOfConv(context.Context, ConversationID) (*keybase1.TeamID, error)
  1946  	ServerNow(context.Context) (ServerNowRes, error)
  1947  	GetExternalAPIKeys(context.Context, []ExternalAPIKeyTyp) ([]ExternalAPIKey, error)
  1948  	AdvertiseBotCommands(context.Context, []RemoteBotCommandsAdvertisement) (AdvertiseBotCommandsRes, error)
  1949  	ClearBotCommands(context.Context, *RemoteClearBotCommandsFilter) (ClearBotCommandsRes, error)
  1950  	GetBotInfo(context.Context, GetBotInfoArg) (GetBotInfoRes, error)
  1951  	GetDefaultTeamChannels(context.Context, keybase1.TeamID) (GetDefaultTeamChannelsRes, error)
  1952  	SetDefaultTeamChannels(context.Context, SetDefaultTeamChannelsArg) (SetDefaultTeamChannelsRes, error)
  1953  	GetRecentJoins(context.Context, ConversationID) (GetRecentJoinsRes, error)
  1954  	RefreshParticipantsRemote(context.Context, RefreshParticipantsRemoteArg) (RefreshParticipantsRemoteRes, error)
  1955  	GetLastActiveAt(context.Context, GetLastActiveAtArg) (GetLastActiveAtRes, error)
  1956  	GetResetConversations(context.Context) (GetResetConversationsRes, error)
  1957  }
  1958  
  1959  func RemoteProtocol(i RemoteInterface) rpc.Protocol {
  1960  	return rpc.Protocol{
  1961  		Name: "chat.1.remote",
  1962  		Methods: map[string]rpc.ServeHandlerDescription{
  1963  			"getInboxRemote": {
  1964  				MakeArg: func() interface{} {
  1965  					var ret [1]GetInboxRemoteArg
  1966  					return &ret
  1967  				},
  1968  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1969  					typedArgs, ok := args.(*[1]GetInboxRemoteArg)
  1970  					if !ok {
  1971  						err = rpc.NewTypeError((*[1]GetInboxRemoteArg)(nil), args)
  1972  						return
  1973  					}
  1974  					ret, err = i.GetInboxRemote(ctx, typedArgs[0])
  1975  					return
  1976  				},
  1977  			},
  1978  			"getThreadRemote": {
  1979  				MakeArg: func() interface{} {
  1980  					var ret [1]GetThreadRemoteArg
  1981  					return &ret
  1982  				},
  1983  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1984  					typedArgs, ok := args.(*[1]GetThreadRemoteArg)
  1985  					if !ok {
  1986  						err = rpc.NewTypeError((*[1]GetThreadRemoteArg)(nil), args)
  1987  						return
  1988  					}
  1989  					ret, err = i.GetThreadRemote(ctx, typedArgs[0])
  1990  					return
  1991  				},
  1992  			},
  1993  			"getUnreadlineRemote": {
  1994  				MakeArg: func() interface{} {
  1995  					var ret [1]GetUnreadlineRemoteArg
  1996  					return &ret
  1997  				},
  1998  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  1999  					typedArgs, ok := args.(*[1]GetUnreadlineRemoteArg)
  2000  					if !ok {
  2001  						err = rpc.NewTypeError((*[1]GetUnreadlineRemoteArg)(nil), args)
  2002  						return
  2003  					}
  2004  					ret, err = i.GetUnreadlineRemote(ctx, typedArgs[0])
  2005  					return
  2006  				},
  2007  			},
  2008  			"getPublicConversations": {
  2009  				MakeArg: func() interface{} {
  2010  					var ret [1]GetPublicConversationsArg
  2011  					return &ret
  2012  				},
  2013  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2014  					typedArgs, ok := args.(*[1]GetPublicConversationsArg)
  2015  					if !ok {
  2016  						err = rpc.NewTypeError((*[1]GetPublicConversationsArg)(nil), args)
  2017  						return
  2018  					}
  2019  					ret, err = i.GetPublicConversations(ctx, typedArgs[0])
  2020  					return
  2021  				},
  2022  			},
  2023  			"postRemote": {
  2024  				MakeArg: func() interface{} {
  2025  					var ret [1]PostRemoteArg
  2026  					return &ret
  2027  				},
  2028  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2029  					typedArgs, ok := args.(*[1]PostRemoteArg)
  2030  					if !ok {
  2031  						err = rpc.NewTypeError((*[1]PostRemoteArg)(nil), args)
  2032  						return
  2033  					}
  2034  					ret, err = i.PostRemote(ctx, typedArgs[0])
  2035  					return
  2036  				},
  2037  			},
  2038  			"newConversationRemote": {
  2039  				MakeArg: func() interface{} {
  2040  					var ret [1]NewConversationRemoteArg
  2041  					return &ret
  2042  				},
  2043  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2044  					typedArgs, ok := args.(*[1]NewConversationRemoteArg)
  2045  					if !ok {
  2046  						err = rpc.NewTypeError((*[1]NewConversationRemoteArg)(nil), args)
  2047  						return
  2048  					}
  2049  					ret, err = i.NewConversationRemote(ctx, typedArgs[0].IdTriple)
  2050  					return
  2051  				},
  2052  			},
  2053  			"newConversationRemote2": {
  2054  				MakeArg: func() interface{} {
  2055  					var ret [1]NewConversationRemote2Arg
  2056  					return &ret
  2057  				},
  2058  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2059  					typedArgs, ok := args.(*[1]NewConversationRemote2Arg)
  2060  					if !ok {
  2061  						err = rpc.NewTypeError((*[1]NewConversationRemote2Arg)(nil), args)
  2062  						return
  2063  					}
  2064  					ret, err = i.NewConversationRemote2(ctx, typedArgs[0])
  2065  					return
  2066  				},
  2067  			},
  2068  			"getMessagesRemote": {
  2069  				MakeArg: func() interface{} {
  2070  					var ret [1]GetMessagesRemoteArg
  2071  					return &ret
  2072  				},
  2073  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2074  					typedArgs, ok := args.(*[1]GetMessagesRemoteArg)
  2075  					if !ok {
  2076  						err = rpc.NewTypeError((*[1]GetMessagesRemoteArg)(nil), args)
  2077  						return
  2078  					}
  2079  					ret, err = i.GetMessagesRemote(ctx, typedArgs[0])
  2080  					return
  2081  				},
  2082  			},
  2083  			"markAsRead": {
  2084  				MakeArg: func() interface{} {
  2085  					var ret [1]MarkAsReadArg
  2086  					return &ret
  2087  				},
  2088  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2089  					typedArgs, ok := args.(*[1]MarkAsReadArg)
  2090  					if !ok {
  2091  						err = rpc.NewTypeError((*[1]MarkAsReadArg)(nil), args)
  2092  						return
  2093  					}
  2094  					ret, err = i.MarkAsRead(ctx, typedArgs[0])
  2095  					return
  2096  				},
  2097  			},
  2098  			"SetConversationStatus": {
  2099  				MakeArg: func() interface{} {
  2100  					var ret [1]SetConversationStatusArg
  2101  					return &ret
  2102  				},
  2103  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2104  					typedArgs, ok := args.(*[1]SetConversationStatusArg)
  2105  					if !ok {
  2106  						err = rpc.NewTypeError((*[1]SetConversationStatusArg)(nil), args)
  2107  						return
  2108  					}
  2109  					ret, err = i.SetConversationStatus(ctx, typedArgs[0])
  2110  					return
  2111  				},
  2112  			},
  2113  			"GetUnreadUpdateFull": {
  2114  				MakeArg: func() interface{} {
  2115  					var ret [1]GetUnreadUpdateFullArg
  2116  					return &ret
  2117  				},
  2118  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2119  					typedArgs, ok := args.(*[1]GetUnreadUpdateFullArg)
  2120  					if !ok {
  2121  						err = rpc.NewTypeError((*[1]GetUnreadUpdateFullArg)(nil), args)
  2122  						return
  2123  					}
  2124  					ret, err = i.GetUnreadUpdateFull(ctx, typedArgs[0].InboxVers)
  2125  					return
  2126  				},
  2127  			},
  2128  			"getS3Params": {
  2129  				MakeArg: func() interface{} {
  2130  					var ret [1]GetS3ParamsArg
  2131  					return &ret
  2132  				},
  2133  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2134  					typedArgs, ok := args.(*[1]GetS3ParamsArg)
  2135  					if !ok {
  2136  						err = rpc.NewTypeError((*[1]GetS3ParamsArg)(nil), args)
  2137  						return
  2138  					}
  2139  					ret, err = i.GetS3Params(ctx, typedArgs[0])
  2140  					return
  2141  				},
  2142  			},
  2143  			"s3Sign": {
  2144  				MakeArg: func() interface{} {
  2145  					var ret [1]S3SignArg
  2146  					return &ret
  2147  				},
  2148  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2149  					typedArgs, ok := args.(*[1]S3SignArg)
  2150  					if !ok {
  2151  						err = rpc.NewTypeError((*[1]S3SignArg)(nil), args)
  2152  						return
  2153  					}
  2154  					ret, err = i.S3Sign(ctx, typedArgs[0])
  2155  					return
  2156  				},
  2157  			},
  2158  			"getInboxVersion": {
  2159  				MakeArg: func() interface{} {
  2160  					var ret [1]GetInboxVersionArg
  2161  					return &ret
  2162  				},
  2163  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2164  					typedArgs, ok := args.(*[1]GetInboxVersionArg)
  2165  					if !ok {
  2166  						err = rpc.NewTypeError((*[1]GetInboxVersionArg)(nil), args)
  2167  						return
  2168  					}
  2169  					ret, err = i.GetInboxVersion(ctx, typedArgs[0].Uid)
  2170  					return
  2171  				},
  2172  			},
  2173  			"syncInbox": {
  2174  				MakeArg: func() interface{} {
  2175  					var ret [1]SyncInboxArg
  2176  					return &ret
  2177  				},
  2178  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2179  					typedArgs, ok := args.(*[1]SyncInboxArg)
  2180  					if !ok {
  2181  						err = rpc.NewTypeError((*[1]SyncInboxArg)(nil), args)
  2182  						return
  2183  					}
  2184  					ret, err = i.SyncInbox(ctx, typedArgs[0].Vers)
  2185  					return
  2186  				},
  2187  			},
  2188  			"syncChat": {
  2189  				MakeArg: func() interface{} {
  2190  					var ret [1]SyncChatArg
  2191  					return &ret
  2192  				},
  2193  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2194  					typedArgs, ok := args.(*[1]SyncChatArg)
  2195  					if !ok {
  2196  						err = rpc.NewTypeError((*[1]SyncChatArg)(nil), args)
  2197  						return
  2198  					}
  2199  					ret, err = i.SyncChat(ctx, typedArgs[0])
  2200  					return
  2201  				},
  2202  			},
  2203  			"syncAll": {
  2204  				MakeArg: func() interface{} {
  2205  					var ret [1]SyncAllArg
  2206  					return &ret
  2207  				},
  2208  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2209  					typedArgs, ok := args.(*[1]SyncAllArg)
  2210  					if !ok {
  2211  						err = rpc.NewTypeError((*[1]SyncAllArg)(nil), args)
  2212  						return
  2213  					}
  2214  					ret, err = i.SyncAll(ctx, typedArgs[0])
  2215  					return
  2216  				},
  2217  			},
  2218  			"tlfFinalize": {
  2219  				MakeArg: func() interface{} {
  2220  					var ret [1]TlfFinalizeArg
  2221  					return &ret
  2222  				},
  2223  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2224  					typedArgs, ok := args.(*[1]TlfFinalizeArg)
  2225  					if !ok {
  2226  						err = rpc.NewTypeError((*[1]TlfFinalizeArg)(nil), args)
  2227  						return
  2228  					}
  2229  					err = i.TlfFinalize(ctx, typedArgs[0])
  2230  					return
  2231  				},
  2232  			},
  2233  			"tlfResolve": {
  2234  				MakeArg: func() interface{} {
  2235  					var ret [1]TlfResolveArg
  2236  					return &ret
  2237  				},
  2238  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2239  					typedArgs, ok := args.(*[1]TlfResolveArg)
  2240  					if !ok {
  2241  						err = rpc.NewTypeError((*[1]TlfResolveArg)(nil), args)
  2242  						return
  2243  					}
  2244  					err = i.TlfResolve(ctx, typedArgs[0])
  2245  					return
  2246  				},
  2247  			},
  2248  			"updateTypingRemote": {
  2249  				MakeArg: func() interface{} {
  2250  					var ret [1]UpdateTypingRemoteArg
  2251  					return &ret
  2252  				},
  2253  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2254  					typedArgs, ok := args.(*[1]UpdateTypingRemoteArg)
  2255  					if !ok {
  2256  						err = rpc.NewTypeError((*[1]UpdateTypingRemoteArg)(nil), args)
  2257  						return
  2258  					}
  2259  					err = i.UpdateTypingRemote(ctx, typedArgs[0])
  2260  					return
  2261  				},
  2262  			},
  2263  			"joinConversation": {
  2264  				MakeArg: func() interface{} {
  2265  					var ret [1]JoinConversationArg
  2266  					return &ret
  2267  				},
  2268  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2269  					typedArgs, ok := args.(*[1]JoinConversationArg)
  2270  					if !ok {
  2271  						err = rpc.NewTypeError((*[1]JoinConversationArg)(nil), args)
  2272  						return
  2273  					}
  2274  					ret, err = i.JoinConversation(ctx, typedArgs[0].ConvID)
  2275  					return
  2276  				},
  2277  			},
  2278  			"leaveConversation": {
  2279  				MakeArg: func() interface{} {
  2280  					var ret [1]LeaveConversationArg
  2281  					return &ret
  2282  				},
  2283  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2284  					typedArgs, ok := args.(*[1]LeaveConversationArg)
  2285  					if !ok {
  2286  						err = rpc.NewTypeError((*[1]LeaveConversationArg)(nil), args)
  2287  						return
  2288  					}
  2289  					ret, err = i.LeaveConversation(ctx, typedArgs[0].ConvID)
  2290  					return
  2291  				},
  2292  			},
  2293  			"previewConversation": {
  2294  				MakeArg: func() interface{} {
  2295  					var ret [1]PreviewConversationArg
  2296  					return &ret
  2297  				},
  2298  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2299  					typedArgs, ok := args.(*[1]PreviewConversationArg)
  2300  					if !ok {
  2301  						err = rpc.NewTypeError((*[1]PreviewConversationArg)(nil), args)
  2302  						return
  2303  					}
  2304  					ret, err = i.PreviewConversation(ctx, typedArgs[0].ConvID)
  2305  					return
  2306  				},
  2307  			},
  2308  			"deleteConversation": {
  2309  				MakeArg: func() interface{} {
  2310  					var ret [1]DeleteConversationArg
  2311  					return &ret
  2312  				},
  2313  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2314  					typedArgs, ok := args.(*[1]DeleteConversationArg)
  2315  					if !ok {
  2316  						err = rpc.NewTypeError((*[1]DeleteConversationArg)(nil), args)
  2317  						return
  2318  					}
  2319  					ret, err = i.DeleteConversation(ctx, typedArgs[0].ConvID)
  2320  					return
  2321  				},
  2322  			},
  2323  			"removeFromConversation": {
  2324  				MakeArg: func() interface{} {
  2325  					var ret [1]RemoveFromConversationArg
  2326  					return &ret
  2327  				},
  2328  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2329  					typedArgs, ok := args.(*[1]RemoveFromConversationArg)
  2330  					if !ok {
  2331  						err = rpc.NewTypeError((*[1]RemoveFromConversationArg)(nil), args)
  2332  						return
  2333  					}
  2334  					ret, err = i.RemoveFromConversation(ctx, typedArgs[0])
  2335  					return
  2336  				},
  2337  			},
  2338  			"getMessageBefore": {
  2339  				MakeArg: func() interface{} {
  2340  					var ret [1]GetMessageBeforeArg
  2341  					return &ret
  2342  				},
  2343  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2344  					typedArgs, ok := args.(*[1]GetMessageBeforeArg)
  2345  					if !ok {
  2346  						err = rpc.NewTypeError((*[1]GetMessageBeforeArg)(nil), args)
  2347  						return
  2348  					}
  2349  					ret, err = i.GetMessageBefore(ctx, typedArgs[0])
  2350  					return
  2351  				},
  2352  			},
  2353  			"getTLFConversations": {
  2354  				MakeArg: func() interface{} {
  2355  					var ret [1]GetTLFConversationsArg
  2356  					return &ret
  2357  				},
  2358  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2359  					typedArgs, ok := args.(*[1]GetTLFConversationsArg)
  2360  					if !ok {
  2361  						err = rpc.NewTypeError((*[1]GetTLFConversationsArg)(nil), args)
  2362  						return
  2363  					}
  2364  					ret, err = i.GetTLFConversations(ctx, typedArgs[0])
  2365  					return
  2366  				},
  2367  			},
  2368  			"setAppNotificationSettings": {
  2369  				MakeArg: func() interface{} {
  2370  					var ret [1]SetAppNotificationSettingsArg
  2371  					return &ret
  2372  				},
  2373  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2374  					typedArgs, ok := args.(*[1]SetAppNotificationSettingsArg)
  2375  					if !ok {
  2376  						err = rpc.NewTypeError((*[1]SetAppNotificationSettingsArg)(nil), args)
  2377  						return
  2378  					}
  2379  					ret, err = i.SetAppNotificationSettings(ctx, typedArgs[0])
  2380  					return
  2381  				},
  2382  			},
  2383  			"setGlobalAppNotificationSettings": {
  2384  				MakeArg: func() interface{} {
  2385  					var ret [1]SetGlobalAppNotificationSettingsArg
  2386  					return &ret
  2387  				},
  2388  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2389  					typedArgs, ok := args.(*[1]SetGlobalAppNotificationSettingsArg)
  2390  					if !ok {
  2391  						err = rpc.NewTypeError((*[1]SetGlobalAppNotificationSettingsArg)(nil), args)
  2392  						return
  2393  					}
  2394  					err = i.SetGlobalAppNotificationSettings(ctx, typedArgs[0].Settings)
  2395  					return
  2396  				},
  2397  			},
  2398  			"getGlobalAppNotificationSettings": {
  2399  				MakeArg: func() interface{} {
  2400  					var ret [1]GetGlobalAppNotificationSettingsArg
  2401  					return &ret
  2402  				},
  2403  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2404  					ret, err = i.GetGlobalAppNotificationSettings(ctx)
  2405  					return
  2406  				},
  2407  			},
  2408  			"remoteNotificationSuccessful": {
  2409  				MakeArg: func() interface{} {
  2410  					var ret [1]RemoteNotificationSuccessfulArg
  2411  					return &ret
  2412  				},
  2413  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2414  					typedArgs, ok := args.(*[1]RemoteNotificationSuccessfulArg)
  2415  					if !ok {
  2416  						err = rpc.NewTypeError((*[1]RemoteNotificationSuccessfulArg)(nil), args)
  2417  						return
  2418  					}
  2419  					err = i.RemoteNotificationSuccessful(ctx, typedArgs[0])
  2420  					return
  2421  				},
  2422  			},
  2423  			"setConvRetention": {
  2424  				MakeArg: func() interface{} {
  2425  					var ret [1]SetConvRetentionArg
  2426  					return &ret
  2427  				},
  2428  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2429  					typedArgs, ok := args.(*[1]SetConvRetentionArg)
  2430  					if !ok {
  2431  						err = rpc.NewTypeError((*[1]SetConvRetentionArg)(nil), args)
  2432  						return
  2433  					}
  2434  					ret, err = i.SetConvRetention(ctx, typedArgs[0])
  2435  					return
  2436  				},
  2437  			},
  2438  			"setTeamRetention": {
  2439  				MakeArg: func() interface{} {
  2440  					var ret [1]SetTeamRetentionArg
  2441  					return &ret
  2442  				},
  2443  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2444  					typedArgs, ok := args.(*[1]SetTeamRetentionArg)
  2445  					if !ok {
  2446  						err = rpc.NewTypeError((*[1]SetTeamRetentionArg)(nil), args)
  2447  						return
  2448  					}
  2449  					ret, err = i.SetTeamRetention(ctx, typedArgs[0])
  2450  					return
  2451  				},
  2452  			},
  2453  			"setConvMinWriterRole": {
  2454  				MakeArg: func() interface{} {
  2455  					var ret [1]SetConvMinWriterRoleArg
  2456  					return &ret
  2457  				},
  2458  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2459  					typedArgs, ok := args.(*[1]SetConvMinWriterRoleArg)
  2460  					if !ok {
  2461  						err = rpc.NewTypeError((*[1]SetConvMinWriterRoleArg)(nil), args)
  2462  						return
  2463  					}
  2464  					ret, err = i.SetConvMinWriterRole(ctx, typedArgs[0])
  2465  					return
  2466  				},
  2467  			},
  2468  			"retentionSweepConv": {
  2469  				MakeArg: func() interface{} {
  2470  					var ret [1]RetentionSweepConvArg
  2471  					return &ret
  2472  				},
  2473  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2474  					typedArgs, ok := args.(*[1]RetentionSweepConvArg)
  2475  					if !ok {
  2476  						err = rpc.NewTypeError((*[1]RetentionSweepConvArg)(nil), args)
  2477  						return
  2478  					}
  2479  					ret, err = i.RetentionSweepConv(ctx, typedArgs[0].ConvID)
  2480  					return
  2481  				},
  2482  			},
  2483  			"upgradeKBFSToImpteam": {
  2484  				MakeArg: func() interface{} {
  2485  					var ret [1]UpgradeKBFSToImpteamArg
  2486  					return &ret
  2487  				},
  2488  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2489  					typedArgs, ok := args.(*[1]UpgradeKBFSToImpteamArg)
  2490  					if !ok {
  2491  						err = rpc.NewTypeError((*[1]UpgradeKBFSToImpteamArg)(nil), args)
  2492  						return
  2493  					}
  2494  					err = i.UpgradeKBFSToImpteam(ctx, typedArgs[0])
  2495  					return
  2496  				},
  2497  			},
  2498  			"registerSharePost": {
  2499  				MakeArg: func() interface{} {
  2500  					var ret [1]RegisterSharePostArg
  2501  					return &ret
  2502  				},
  2503  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2504  					typedArgs, ok := args.(*[1]RegisterSharePostArg)
  2505  					if !ok {
  2506  						err = rpc.NewTypeError((*[1]RegisterSharePostArg)(nil), args)
  2507  						return
  2508  					}
  2509  					err = i.RegisterSharePost(ctx, typedArgs[0])
  2510  					return
  2511  				},
  2512  			},
  2513  			"failSharePost": {
  2514  				MakeArg: func() interface{} {
  2515  					var ret [1]FailSharePostArg
  2516  					return &ret
  2517  				},
  2518  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2519  					typedArgs, ok := args.(*[1]FailSharePostArg)
  2520  					if !ok {
  2521  						err = rpc.NewTypeError((*[1]FailSharePostArg)(nil), args)
  2522  						return
  2523  					}
  2524  					err = i.FailSharePost(ctx, typedArgs[0])
  2525  					return
  2526  				},
  2527  			},
  2528  			"broadcastGregorMessageToConv": {
  2529  				MakeArg: func() interface{} {
  2530  					var ret [1]BroadcastGregorMessageToConvArg
  2531  					return &ret
  2532  				},
  2533  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2534  					typedArgs, ok := args.(*[1]BroadcastGregorMessageToConvArg)
  2535  					if !ok {
  2536  						err = rpc.NewTypeError((*[1]BroadcastGregorMessageToConvArg)(nil), args)
  2537  						return
  2538  					}
  2539  					err = i.BroadcastGregorMessageToConv(ctx, typedArgs[0])
  2540  					return
  2541  				},
  2542  			},
  2543  			"teamIDOfConv": {
  2544  				MakeArg: func() interface{} {
  2545  					var ret [1]TeamIDOfConvArg
  2546  					return &ret
  2547  				},
  2548  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2549  					typedArgs, ok := args.(*[1]TeamIDOfConvArg)
  2550  					if !ok {
  2551  						err = rpc.NewTypeError((*[1]TeamIDOfConvArg)(nil), args)
  2552  						return
  2553  					}
  2554  					ret, err = i.TeamIDOfConv(ctx, typedArgs[0].ConvID)
  2555  					return
  2556  				},
  2557  			},
  2558  			"serverNow": {
  2559  				MakeArg: func() interface{} {
  2560  					var ret [1]ServerNowArg
  2561  					return &ret
  2562  				},
  2563  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2564  					ret, err = i.ServerNow(ctx)
  2565  					return
  2566  				},
  2567  			},
  2568  			"getExternalAPIKeys": {
  2569  				MakeArg: func() interface{} {
  2570  					var ret [1]GetExternalAPIKeysArg
  2571  					return &ret
  2572  				},
  2573  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2574  					typedArgs, ok := args.(*[1]GetExternalAPIKeysArg)
  2575  					if !ok {
  2576  						err = rpc.NewTypeError((*[1]GetExternalAPIKeysArg)(nil), args)
  2577  						return
  2578  					}
  2579  					ret, err = i.GetExternalAPIKeys(ctx, typedArgs[0].Typs)
  2580  					return
  2581  				},
  2582  			},
  2583  			"advertiseBotCommands": {
  2584  				MakeArg: func() interface{} {
  2585  					var ret [1]AdvertiseBotCommandsArg
  2586  					return &ret
  2587  				},
  2588  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2589  					typedArgs, ok := args.(*[1]AdvertiseBotCommandsArg)
  2590  					if !ok {
  2591  						err = rpc.NewTypeError((*[1]AdvertiseBotCommandsArg)(nil), args)
  2592  						return
  2593  					}
  2594  					ret, err = i.AdvertiseBotCommands(ctx, typedArgs[0].Ads)
  2595  					return
  2596  				},
  2597  			},
  2598  			"clearBotCommands": {
  2599  				MakeArg: func() interface{} {
  2600  					var ret [1]ClearBotCommandsArg
  2601  					return &ret
  2602  				},
  2603  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2604  					typedArgs, ok := args.(*[1]ClearBotCommandsArg)
  2605  					if !ok {
  2606  						err = rpc.NewTypeError((*[1]ClearBotCommandsArg)(nil), args)
  2607  						return
  2608  					}
  2609  					ret, err = i.ClearBotCommands(ctx, typedArgs[0].Filter)
  2610  					return
  2611  				},
  2612  			},
  2613  			"getBotInfo": {
  2614  				MakeArg: func() interface{} {
  2615  					var ret [1]GetBotInfoArg
  2616  					return &ret
  2617  				},
  2618  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2619  					typedArgs, ok := args.(*[1]GetBotInfoArg)
  2620  					if !ok {
  2621  						err = rpc.NewTypeError((*[1]GetBotInfoArg)(nil), args)
  2622  						return
  2623  					}
  2624  					ret, err = i.GetBotInfo(ctx, typedArgs[0])
  2625  					return
  2626  				},
  2627  			},
  2628  			"getDefaultTeamChannels": {
  2629  				MakeArg: func() interface{} {
  2630  					var ret [1]GetDefaultTeamChannelsArg
  2631  					return &ret
  2632  				},
  2633  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2634  					typedArgs, ok := args.(*[1]GetDefaultTeamChannelsArg)
  2635  					if !ok {
  2636  						err = rpc.NewTypeError((*[1]GetDefaultTeamChannelsArg)(nil), args)
  2637  						return
  2638  					}
  2639  					ret, err = i.GetDefaultTeamChannels(ctx, typedArgs[0].TeamID)
  2640  					return
  2641  				},
  2642  			},
  2643  			"setDefaultTeamChannels": {
  2644  				MakeArg: func() interface{} {
  2645  					var ret [1]SetDefaultTeamChannelsArg
  2646  					return &ret
  2647  				},
  2648  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2649  					typedArgs, ok := args.(*[1]SetDefaultTeamChannelsArg)
  2650  					if !ok {
  2651  						err = rpc.NewTypeError((*[1]SetDefaultTeamChannelsArg)(nil), args)
  2652  						return
  2653  					}
  2654  					ret, err = i.SetDefaultTeamChannels(ctx, typedArgs[0])
  2655  					return
  2656  				},
  2657  			},
  2658  			"getRecentJoins": {
  2659  				MakeArg: func() interface{} {
  2660  					var ret [1]GetRecentJoinsArg
  2661  					return &ret
  2662  				},
  2663  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2664  					typedArgs, ok := args.(*[1]GetRecentJoinsArg)
  2665  					if !ok {
  2666  						err = rpc.NewTypeError((*[1]GetRecentJoinsArg)(nil), args)
  2667  						return
  2668  					}
  2669  					ret, err = i.GetRecentJoins(ctx, typedArgs[0].ConvID)
  2670  					return
  2671  				},
  2672  			},
  2673  			"refreshParticipantsRemote": {
  2674  				MakeArg: func() interface{} {
  2675  					var ret [1]RefreshParticipantsRemoteArg
  2676  					return &ret
  2677  				},
  2678  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2679  					typedArgs, ok := args.(*[1]RefreshParticipantsRemoteArg)
  2680  					if !ok {
  2681  						err = rpc.NewTypeError((*[1]RefreshParticipantsRemoteArg)(nil), args)
  2682  						return
  2683  					}
  2684  					ret, err = i.RefreshParticipantsRemote(ctx, typedArgs[0])
  2685  					return
  2686  				},
  2687  			},
  2688  			"getLastActiveAt": {
  2689  				MakeArg: func() interface{} {
  2690  					var ret [1]GetLastActiveAtArg
  2691  					return &ret
  2692  				},
  2693  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2694  					typedArgs, ok := args.(*[1]GetLastActiveAtArg)
  2695  					if !ok {
  2696  						err = rpc.NewTypeError((*[1]GetLastActiveAtArg)(nil), args)
  2697  						return
  2698  					}
  2699  					ret, err = i.GetLastActiveAt(ctx, typedArgs[0])
  2700  					return
  2701  				},
  2702  			},
  2703  			"getResetConversations": {
  2704  				MakeArg: func() interface{} {
  2705  					var ret [1]GetResetConversationsArg
  2706  					return &ret
  2707  				},
  2708  				Handler: func(ctx context.Context, args interface{}) (ret interface{}, err error) {
  2709  					ret, err = i.GetResetConversations(ctx)
  2710  					return
  2711  				},
  2712  			},
  2713  		},
  2714  	}
  2715  }
  2716  
  2717  type RemoteClient struct {
  2718  	Cli rpc.GenericClient
  2719  }
  2720  
  2721  func (c RemoteClient) GetInboxRemote(ctx context.Context, __arg GetInboxRemoteArg) (res GetInboxRemoteRes, err error) {
  2722  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getInboxRemote", []interface{}{__arg}, &res, rpc.CompressionGzip, 1200000*time.Millisecond)
  2723  	return
  2724  }
  2725  
  2726  func (c RemoteClient) GetThreadRemote(ctx context.Context, __arg GetThreadRemoteArg) (res GetThreadRemoteRes, err error) {
  2727  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getThreadRemote", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2728  	return
  2729  }
  2730  
  2731  func (c RemoteClient) GetUnreadlineRemote(ctx context.Context, __arg GetUnreadlineRemoteArg) (res GetUnreadlineRemoteRes, err error) {
  2732  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getUnreadlineRemote", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2733  	return
  2734  }
  2735  
  2736  func (c RemoteClient) GetPublicConversations(ctx context.Context, __arg GetPublicConversationsArg) (res GetPublicConversationsRes, err error) {
  2737  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getPublicConversations", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2738  	return
  2739  }
  2740  
  2741  func (c RemoteClient) PostRemote(ctx context.Context, __arg PostRemoteArg) (res PostRemoteRes, err error) {
  2742  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.postRemote", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2743  	return
  2744  }
  2745  
  2746  func (c RemoteClient) NewConversationRemote(ctx context.Context, idTriple ConversationIDTriple) (res NewConversationRemoteRes, err error) {
  2747  	__arg := NewConversationRemoteArg{IdTriple: idTriple}
  2748  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.newConversationRemote", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2749  	return
  2750  }
  2751  
  2752  func (c RemoteClient) NewConversationRemote2(ctx context.Context, __arg NewConversationRemote2Arg) (res NewConversationRemoteRes, err error) {
  2753  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.newConversationRemote2", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2754  	return
  2755  }
  2756  
  2757  func (c RemoteClient) GetMessagesRemote(ctx context.Context, __arg GetMessagesRemoteArg) (res GetMessagesRemoteRes, err error) {
  2758  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getMessagesRemote", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2759  	return
  2760  }
  2761  
  2762  func (c RemoteClient) MarkAsRead(ctx context.Context, __arg MarkAsReadArg) (res MarkAsReadRes, err error) {
  2763  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.markAsRead", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2764  	return
  2765  }
  2766  
  2767  func (c RemoteClient) SetConversationStatus(ctx context.Context, __arg SetConversationStatusArg) (res SetConversationStatusRes, err error) {
  2768  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.SetConversationStatus", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2769  	return
  2770  }
  2771  
  2772  func (c RemoteClient) GetUnreadUpdateFull(ctx context.Context, inboxVers InboxVers) (res UnreadUpdateFull, err error) {
  2773  	__arg := GetUnreadUpdateFullArg{InboxVers: inboxVers}
  2774  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.GetUnreadUpdateFull", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2775  	return
  2776  }
  2777  
  2778  func (c RemoteClient) GetS3Params(ctx context.Context, __arg GetS3ParamsArg) (res S3Params, err error) {
  2779  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getS3Params", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2780  	return
  2781  }
  2782  
  2783  func (c RemoteClient) S3Sign(ctx context.Context, __arg S3SignArg) (res []byte, err error) {
  2784  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.s3Sign", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2785  	return
  2786  }
  2787  
  2788  func (c RemoteClient) GetInboxVersion(ctx context.Context, uid gregor1.UID) (res InboxVers, err error) {
  2789  	__arg := GetInboxVersionArg{Uid: uid}
  2790  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getInboxVersion", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2791  	return
  2792  }
  2793  
  2794  func (c RemoteClient) SyncInbox(ctx context.Context, vers InboxVers) (res SyncInboxRes, err error) {
  2795  	__arg := SyncInboxArg{Vers: vers}
  2796  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.syncInbox", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2797  	return
  2798  }
  2799  
  2800  func (c RemoteClient) SyncChat(ctx context.Context, __arg SyncChatArg) (res SyncChatRes, err error) {
  2801  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.syncChat", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2802  	return
  2803  }
  2804  
  2805  func (c RemoteClient) SyncAll(ctx context.Context, __arg SyncAllArg) (res SyncAllResult, err error) {
  2806  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.syncAll", []interface{}{__arg}, &res, rpc.CompressionMsgpackzip, 0*time.Millisecond)
  2807  	return
  2808  }
  2809  
  2810  func (c RemoteClient) TlfFinalize(ctx context.Context, __arg TlfFinalizeArg) (err error) {
  2811  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.tlfFinalize", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2812  	return
  2813  }
  2814  
  2815  func (c RemoteClient) TlfResolve(ctx context.Context, __arg TlfResolveArg) (err error) {
  2816  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.tlfResolve", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2817  	return
  2818  }
  2819  
  2820  func (c RemoteClient) UpdateTypingRemote(ctx context.Context, __arg UpdateTypingRemoteArg) (err error) {
  2821  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.updateTypingRemote", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2822  	return
  2823  }
  2824  
  2825  func (c RemoteClient) JoinConversation(ctx context.Context, convID ConversationID) (res JoinLeaveConversationRemoteRes, err error) {
  2826  	__arg := JoinConversationArg{ConvID: convID}
  2827  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.joinConversation", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2828  	return
  2829  }
  2830  
  2831  func (c RemoteClient) LeaveConversation(ctx context.Context, convID ConversationID) (res JoinLeaveConversationRemoteRes, err error) {
  2832  	__arg := LeaveConversationArg{ConvID: convID}
  2833  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.leaveConversation", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2834  	return
  2835  }
  2836  
  2837  func (c RemoteClient) PreviewConversation(ctx context.Context, convID ConversationID) (res JoinLeaveConversationRemoteRes, err error) {
  2838  	__arg := PreviewConversationArg{ConvID: convID}
  2839  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.previewConversation", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2840  	return
  2841  }
  2842  
  2843  func (c RemoteClient) DeleteConversation(ctx context.Context, convID ConversationID) (res DeleteConversationRemoteRes, err error) {
  2844  	__arg := DeleteConversationArg{ConvID: convID}
  2845  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.deleteConversation", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2846  	return
  2847  }
  2848  
  2849  func (c RemoteClient) RemoveFromConversation(ctx context.Context, __arg RemoveFromConversationArg) (res RemoveFromConversationRemoteRes, err error) {
  2850  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.removeFromConversation", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2851  	return
  2852  }
  2853  
  2854  func (c RemoteClient) GetMessageBefore(ctx context.Context, __arg GetMessageBeforeArg) (res GetMessageBeforeRes, err error) {
  2855  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getMessageBefore", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2856  	return
  2857  }
  2858  
  2859  func (c RemoteClient) GetTLFConversations(ctx context.Context, __arg GetTLFConversationsArg) (res GetTLFConversationsRes, err error) {
  2860  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getTLFConversations", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2861  	return
  2862  }
  2863  
  2864  func (c RemoteClient) SetAppNotificationSettings(ctx context.Context, __arg SetAppNotificationSettingsArg) (res SetAppNotificationSettingsRes, err error) {
  2865  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.setAppNotificationSettings", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2866  	return
  2867  }
  2868  
  2869  func (c RemoteClient) SetGlobalAppNotificationSettings(ctx context.Context, settings GlobalAppNotificationSettings) (err error) {
  2870  	__arg := SetGlobalAppNotificationSettingsArg{Settings: settings}
  2871  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.setGlobalAppNotificationSettings", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2872  	return
  2873  }
  2874  
  2875  func (c RemoteClient) GetGlobalAppNotificationSettings(ctx context.Context) (res GlobalAppNotificationSettings, err error) {
  2876  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getGlobalAppNotificationSettings", []interface{}{GetGlobalAppNotificationSettingsArg{}}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2877  	return
  2878  }
  2879  
  2880  func (c RemoteClient) RemoteNotificationSuccessful(ctx context.Context, __arg RemoteNotificationSuccessfulArg) (err error) {
  2881  	err = c.Cli.Call(ctx, "chat.1.remote.remoteNotificationSuccessful", []interface{}{__arg}, nil, 0*time.Millisecond)
  2882  	return
  2883  }
  2884  
  2885  func (c RemoteClient) SetConvRetention(ctx context.Context, __arg SetConvRetentionArg) (res SetRetentionRes, err error) {
  2886  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.setConvRetention", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2887  	return
  2888  }
  2889  
  2890  func (c RemoteClient) SetTeamRetention(ctx context.Context, __arg SetTeamRetentionArg) (res SetRetentionRes, err error) {
  2891  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.setTeamRetention", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2892  	return
  2893  }
  2894  
  2895  func (c RemoteClient) SetConvMinWriterRole(ctx context.Context, __arg SetConvMinWriterRoleArg) (res SetConvMinWriterRoleRes, err error) {
  2896  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.setConvMinWriterRole", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2897  	return
  2898  }
  2899  
  2900  func (c RemoteClient) RetentionSweepConv(ctx context.Context, convID ConversationID) (res SweepRes, err error) {
  2901  	__arg := RetentionSweepConvArg{ConvID: convID}
  2902  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.retentionSweepConv", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2903  	return
  2904  }
  2905  
  2906  func (c RemoteClient) UpgradeKBFSToImpteam(ctx context.Context, __arg UpgradeKBFSToImpteamArg) (err error) {
  2907  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.upgradeKBFSToImpteam", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2908  	return
  2909  }
  2910  
  2911  func (c RemoteClient) RegisterSharePost(ctx context.Context, __arg RegisterSharePostArg) (err error) {
  2912  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.registerSharePost", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2913  	return
  2914  }
  2915  
  2916  func (c RemoteClient) FailSharePost(ctx context.Context, __arg FailSharePostArg) (err error) {
  2917  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.failSharePost", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2918  	return
  2919  }
  2920  
  2921  func (c RemoteClient) BroadcastGregorMessageToConv(ctx context.Context, __arg BroadcastGregorMessageToConvArg) (err error) {
  2922  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.broadcastGregorMessageToConv", []interface{}{__arg}, nil, rpc.CompressionGzip, 0*time.Millisecond)
  2923  	return
  2924  }
  2925  
  2926  func (c RemoteClient) TeamIDOfConv(ctx context.Context, convID ConversationID) (res *keybase1.TeamID, err error) {
  2927  	__arg := TeamIDOfConvArg{ConvID: convID}
  2928  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.teamIDOfConv", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2929  	return
  2930  }
  2931  
  2932  func (c RemoteClient) ServerNow(ctx context.Context) (res ServerNowRes, err error) {
  2933  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.serverNow", []interface{}{ServerNowArg{}}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2934  	return
  2935  }
  2936  
  2937  func (c RemoteClient) GetExternalAPIKeys(ctx context.Context, typs []ExternalAPIKeyTyp) (res []ExternalAPIKey, err error) {
  2938  	__arg := GetExternalAPIKeysArg{Typs: typs}
  2939  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getExternalAPIKeys", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2940  	return
  2941  }
  2942  
  2943  func (c RemoteClient) AdvertiseBotCommands(ctx context.Context, ads []RemoteBotCommandsAdvertisement) (res AdvertiseBotCommandsRes, err error) {
  2944  	__arg := AdvertiseBotCommandsArg{Ads: ads}
  2945  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.advertiseBotCommands", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2946  	return
  2947  }
  2948  
  2949  func (c RemoteClient) ClearBotCommands(ctx context.Context, filter *RemoteClearBotCommandsFilter) (res ClearBotCommandsRes, err error) {
  2950  	__arg := ClearBotCommandsArg{Filter: filter}
  2951  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.clearBotCommands", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2952  	return
  2953  }
  2954  
  2955  func (c RemoteClient) GetBotInfo(ctx context.Context, __arg GetBotInfoArg) (res GetBotInfoRes, err error) {
  2956  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getBotInfo", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2957  	return
  2958  }
  2959  
  2960  func (c RemoteClient) GetDefaultTeamChannels(ctx context.Context, teamID keybase1.TeamID) (res GetDefaultTeamChannelsRes, err error) {
  2961  	__arg := GetDefaultTeamChannelsArg{TeamID: teamID}
  2962  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getDefaultTeamChannels", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2963  	return
  2964  }
  2965  
  2966  func (c RemoteClient) SetDefaultTeamChannels(ctx context.Context, __arg SetDefaultTeamChannelsArg) (res SetDefaultTeamChannelsRes, err error) {
  2967  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.setDefaultTeamChannels", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2968  	return
  2969  }
  2970  
  2971  func (c RemoteClient) GetRecentJoins(ctx context.Context, convID ConversationID) (res GetRecentJoinsRes, err error) {
  2972  	__arg := GetRecentJoinsArg{ConvID: convID}
  2973  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getRecentJoins", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2974  	return
  2975  }
  2976  
  2977  func (c RemoteClient) RefreshParticipantsRemote(ctx context.Context, __arg RefreshParticipantsRemoteArg) (res RefreshParticipantsRemoteRes, err error) {
  2978  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.refreshParticipantsRemote", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2979  	return
  2980  }
  2981  
  2982  func (c RemoteClient) GetLastActiveAt(ctx context.Context, __arg GetLastActiveAtArg) (res GetLastActiveAtRes, err error) {
  2983  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getLastActiveAt", []interface{}{__arg}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2984  	return
  2985  }
  2986  
  2987  func (c RemoteClient) GetResetConversations(ctx context.Context) (res GetResetConversationsRes, err error) {
  2988  	err = c.Cli.CallCompressed(ctx, "chat.1.remote.getResetConversations", []interface{}{GetResetConversationsArg{}}, &res, rpc.CompressionGzip, 0*time.Millisecond)
  2989  	return
  2990  }