github.com/keybase/client/go@v0.0.0-20241007131713-f10651d043c8/protocol/chat1/common.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/common.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 stellar1 "github.com/keybase/client/go/protocol/stellar1" 12 "github.com/keybase/go-framed-msgpack-rpc/rpc" 13 ) 14 15 type ThreadID []byte 16 17 func (o ThreadID) DeepCopy() ThreadID { 18 return (func(x []byte) []byte { 19 if x == nil { 20 return nil 21 } 22 return append([]byte{}, x...) 23 })(o) 24 } 25 26 type MessageID uint 27 28 func (o MessageID) DeepCopy() MessageID { 29 return o 30 } 31 32 type TLFConvOrdinal uint 33 34 func (o TLFConvOrdinal) DeepCopy() TLFConvOrdinal { 35 return o 36 } 37 38 type TopicID []byte 39 40 func (o TopicID) DeepCopy() TopicID { 41 return (func(x []byte) []byte { 42 if x == nil { 43 return nil 44 } 45 return append([]byte{}, x...) 46 })(o) 47 } 48 49 type ConversationID []byte 50 51 func (o ConversationID) DeepCopy() ConversationID { 52 return (func(x []byte) []byte { 53 if x == nil { 54 return nil 55 } 56 return append([]byte{}, x...) 57 })(o) 58 } 59 60 type TLFID []byte 61 62 func (o TLFID) DeepCopy() TLFID { 63 return (func(x []byte) []byte { 64 if x == nil { 65 return nil 66 } 67 return append([]byte{}, x...) 68 })(o) 69 } 70 71 type Hash []byte 72 73 func (o Hash) DeepCopy() Hash { 74 return (func(x []byte) []byte { 75 if x == nil { 76 return nil 77 } 78 return append([]byte{}, x...) 79 })(o) 80 } 81 82 type InboxVers uint64 83 84 func (o InboxVers) DeepCopy() InboxVers { 85 return o 86 } 87 88 type LocalConversationVers uint64 89 90 func (o LocalConversationVers) DeepCopy() LocalConversationVers { 91 return o 92 } 93 94 type ConversationVers uint64 95 96 func (o ConversationVers) DeepCopy() ConversationVers { 97 return o 98 } 99 100 type OutboxID []byte 101 102 func (o OutboxID) DeepCopy() OutboxID { 103 return (func(x []byte) []byte { 104 if x == nil { 105 return nil 106 } 107 return append([]byte{}, x...) 108 })(o) 109 } 110 111 type TopicNameState []byte 112 113 func (o TopicNameState) DeepCopy() TopicNameState { 114 return (func(x []byte) []byte { 115 if x == nil { 116 return nil 117 } 118 return append([]byte{}, x...) 119 })(o) 120 } 121 122 type FlipGameID []byte 123 124 func (o FlipGameID) DeepCopy() FlipGameID { 125 return (func(x []byte) []byte { 126 if x == nil { 127 return nil 128 } 129 return append([]byte{}, x...) 130 })(o) 131 } 132 133 type ArchiveJobID string 134 135 func (o ArchiveJobID) DeepCopy() ArchiveJobID { 136 return o 137 } 138 139 type InboxVersInfo struct { 140 Uid gregor1.UID `codec:"uid" json:"uid"` 141 Vers InboxVers `codec:"vers" json:"vers"` 142 } 143 144 func (o InboxVersInfo) DeepCopy() InboxVersInfo { 145 return InboxVersInfo{ 146 Uid: o.Uid.DeepCopy(), 147 Vers: o.Vers.DeepCopy(), 148 } 149 } 150 151 type ConversationExistence int 152 153 const ( 154 ConversationExistence_ACTIVE ConversationExistence = 0 155 ConversationExistence_ARCHIVED ConversationExistence = 1 156 ConversationExistence_DELETED ConversationExistence = 2 157 ConversationExistence_ABANDONED ConversationExistence = 3 158 ) 159 160 func (o ConversationExistence) DeepCopy() ConversationExistence { return o } 161 162 var ConversationExistenceMap = map[string]ConversationExistence{ 163 "ACTIVE": 0, 164 "ARCHIVED": 1, 165 "DELETED": 2, 166 "ABANDONED": 3, 167 } 168 169 var ConversationExistenceRevMap = map[ConversationExistence]string{ 170 0: "ACTIVE", 171 1: "ARCHIVED", 172 2: "DELETED", 173 3: "ABANDONED", 174 } 175 176 func (e ConversationExistence) String() string { 177 if v, ok := ConversationExistenceRevMap[e]; ok { 178 return v 179 } 180 return fmt.Sprintf("%v", int(e)) 181 } 182 183 type ConversationMembersType int 184 185 const ( 186 ConversationMembersType_KBFS ConversationMembersType = 0 187 ConversationMembersType_TEAM ConversationMembersType = 1 188 ConversationMembersType_IMPTEAMNATIVE ConversationMembersType = 2 189 ConversationMembersType_IMPTEAMUPGRADE ConversationMembersType = 3 190 ) 191 192 func (o ConversationMembersType) DeepCopy() ConversationMembersType { return o } 193 194 var ConversationMembersTypeMap = map[string]ConversationMembersType{ 195 "KBFS": 0, 196 "TEAM": 1, 197 "IMPTEAMNATIVE": 2, 198 "IMPTEAMUPGRADE": 3, 199 } 200 201 var ConversationMembersTypeRevMap = map[ConversationMembersType]string{ 202 0: "KBFS", 203 1: "TEAM", 204 2: "IMPTEAMNATIVE", 205 3: "IMPTEAMUPGRADE", 206 } 207 208 func (e ConversationMembersType) String() string { 209 if v, ok := ConversationMembersTypeRevMap[e]; ok { 210 return v 211 } 212 return fmt.Sprintf("%v", int(e)) 213 } 214 215 type SyncInboxResType int 216 217 const ( 218 SyncInboxResType_CURRENT SyncInboxResType = 0 219 SyncInboxResType_INCREMENTAL SyncInboxResType = 1 220 SyncInboxResType_CLEAR SyncInboxResType = 2 221 ) 222 223 func (o SyncInboxResType) DeepCopy() SyncInboxResType { return o } 224 225 var SyncInboxResTypeMap = map[string]SyncInboxResType{ 226 "CURRENT": 0, 227 "INCREMENTAL": 1, 228 "CLEAR": 2, 229 } 230 231 var SyncInboxResTypeRevMap = map[SyncInboxResType]string{ 232 0: "CURRENT", 233 1: "INCREMENTAL", 234 2: "CLEAR", 235 } 236 237 func (e SyncInboxResType) String() string { 238 if v, ok := SyncInboxResTypeRevMap[e]; ok { 239 return v 240 } 241 return fmt.Sprintf("%v", int(e)) 242 } 243 244 type MessageType int 245 246 const ( 247 MessageType_NONE MessageType = 0 248 MessageType_TEXT MessageType = 1 249 MessageType_ATTACHMENT MessageType = 2 250 MessageType_EDIT MessageType = 3 251 MessageType_DELETE MessageType = 4 252 MessageType_METADATA MessageType = 5 253 MessageType_TLFNAME MessageType = 6 254 MessageType_HEADLINE MessageType = 7 255 MessageType_ATTACHMENTUPLOADED MessageType = 8 256 MessageType_JOIN MessageType = 9 257 MessageType_LEAVE MessageType = 10 258 MessageType_SYSTEM MessageType = 11 259 MessageType_DELETEHISTORY MessageType = 12 260 MessageType_REACTION MessageType = 13 261 MessageType_SENDPAYMENT MessageType = 14 262 MessageType_REQUESTPAYMENT MessageType = 15 263 MessageType_UNFURL MessageType = 16 264 MessageType_FLIP MessageType = 17 265 MessageType_PIN MessageType = 18 266 ) 267 268 func (o MessageType) DeepCopy() MessageType { return o } 269 270 var MessageTypeMap = map[string]MessageType{ 271 "NONE": 0, 272 "TEXT": 1, 273 "ATTACHMENT": 2, 274 "EDIT": 3, 275 "DELETE": 4, 276 "METADATA": 5, 277 "TLFNAME": 6, 278 "HEADLINE": 7, 279 "ATTACHMENTUPLOADED": 8, 280 "JOIN": 9, 281 "LEAVE": 10, 282 "SYSTEM": 11, 283 "DELETEHISTORY": 12, 284 "REACTION": 13, 285 "SENDPAYMENT": 14, 286 "REQUESTPAYMENT": 15, 287 "UNFURL": 16, 288 "FLIP": 17, 289 "PIN": 18, 290 } 291 292 var MessageTypeRevMap = map[MessageType]string{ 293 0: "NONE", 294 1: "TEXT", 295 2: "ATTACHMENT", 296 3: "EDIT", 297 4: "DELETE", 298 5: "METADATA", 299 6: "TLFNAME", 300 7: "HEADLINE", 301 8: "ATTACHMENTUPLOADED", 302 9: "JOIN", 303 10: "LEAVE", 304 11: "SYSTEM", 305 12: "DELETEHISTORY", 306 13: "REACTION", 307 14: "SENDPAYMENT", 308 15: "REQUESTPAYMENT", 309 16: "UNFURL", 310 17: "FLIP", 311 18: "PIN", 312 } 313 314 type TopicType int 315 316 const ( 317 TopicType_NONE TopicType = 0 318 TopicType_CHAT TopicType = 1 319 TopicType_DEV TopicType = 2 320 TopicType_KBFSFILEEDIT TopicType = 3 321 TopicType_EMOJI TopicType = 4 322 TopicType_EMOJICROSS TopicType = 5 323 ) 324 325 func (o TopicType) DeepCopy() TopicType { return o } 326 327 var TopicTypeMap = map[string]TopicType{ 328 "NONE": 0, 329 "CHAT": 1, 330 "DEV": 2, 331 "KBFSFILEEDIT": 3, 332 "EMOJI": 4, 333 "EMOJICROSS": 5, 334 } 335 336 var TopicTypeRevMap = map[TopicType]string{ 337 0: "NONE", 338 1: "CHAT", 339 2: "DEV", 340 3: "KBFSFILEEDIT", 341 4: "EMOJI", 342 5: "EMOJICROSS", 343 } 344 345 type TeamType int 346 347 const ( 348 TeamType_NONE TeamType = 0 349 TeamType_SIMPLE TeamType = 1 350 TeamType_COMPLEX TeamType = 2 351 ) 352 353 func (o TeamType) DeepCopy() TeamType { return o } 354 355 var TeamTypeMap = map[string]TeamType{ 356 "NONE": 0, 357 "SIMPLE": 1, 358 "COMPLEX": 2, 359 } 360 361 var TeamTypeRevMap = map[TeamType]string{ 362 0: "NONE", 363 1: "SIMPLE", 364 2: "COMPLEX", 365 } 366 367 func (e TeamType) String() string { 368 if v, ok := TeamTypeRevMap[e]; ok { 369 return v 370 } 371 return fmt.Sprintf("%v", int(e)) 372 } 373 374 type NotificationKind int 375 376 const ( 377 NotificationKind_GENERIC NotificationKind = 0 378 NotificationKind_ATMENTION NotificationKind = 1 379 ) 380 381 func (o NotificationKind) DeepCopy() NotificationKind { return o } 382 383 var NotificationKindMap = map[string]NotificationKind{ 384 "GENERIC": 0, 385 "ATMENTION": 1, 386 } 387 388 var NotificationKindRevMap = map[NotificationKind]string{ 389 0: "GENERIC", 390 1: "ATMENTION", 391 } 392 393 type GlobalAppNotificationSetting int 394 395 const ( 396 GlobalAppNotificationSetting_NEWMESSAGES GlobalAppNotificationSetting = 0 397 GlobalAppNotificationSetting_PLAINTEXTMOBILE GlobalAppNotificationSetting = 1 398 GlobalAppNotificationSetting_PLAINTEXTDESKTOP GlobalAppNotificationSetting = 2 399 GlobalAppNotificationSetting_DEFAULTSOUNDMOBILE GlobalAppNotificationSetting = 3 400 GlobalAppNotificationSetting_DISABLETYPING GlobalAppNotificationSetting = 4 401 GlobalAppNotificationSetting_CONVERTHEIC GlobalAppNotificationSetting = 5 402 ) 403 404 func (o GlobalAppNotificationSetting) DeepCopy() GlobalAppNotificationSetting { return o } 405 406 var GlobalAppNotificationSettingMap = map[string]GlobalAppNotificationSetting{ 407 "NEWMESSAGES": 0, 408 "PLAINTEXTMOBILE": 1, 409 "PLAINTEXTDESKTOP": 2, 410 "DEFAULTSOUNDMOBILE": 3, 411 "DISABLETYPING": 4, 412 "CONVERTHEIC": 5, 413 } 414 415 var GlobalAppNotificationSettingRevMap = map[GlobalAppNotificationSetting]string{ 416 0: "NEWMESSAGES", 417 1: "PLAINTEXTMOBILE", 418 2: "PLAINTEXTDESKTOP", 419 3: "DEFAULTSOUNDMOBILE", 420 4: "DISABLETYPING", 421 5: "CONVERTHEIC", 422 } 423 424 func (e GlobalAppNotificationSetting) String() string { 425 if v, ok := GlobalAppNotificationSettingRevMap[e]; ok { 426 return v 427 } 428 return fmt.Sprintf("%v", int(e)) 429 } 430 431 type GlobalAppNotificationSettings struct { 432 Settings map[GlobalAppNotificationSetting]bool `codec:"settings" json:"settings"` 433 } 434 435 func (o GlobalAppNotificationSettings) DeepCopy() GlobalAppNotificationSettings { 436 return GlobalAppNotificationSettings{ 437 Settings: (func(x map[GlobalAppNotificationSetting]bool) map[GlobalAppNotificationSetting]bool { 438 if x == nil { 439 return nil 440 } 441 ret := make(map[GlobalAppNotificationSetting]bool, len(x)) 442 for k, v := range x { 443 kCopy := k.DeepCopy() 444 vCopy := v 445 ret[kCopy] = vCopy 446 } 447 return ret 448 })(o.Settings), 449 } 450 } 451 452 type ConversationStatus int 453 454 const ( 455 ConversationStatus_UNFILED ConversationStatus = 0 456 ConversationStatus_FAVORITE ConversationStatus = 1 457 ConversationStatus_IGNORED ConversationStatus = 2 458 ConversationStatus_BLOCKED ConversationStatus = 3 459 ConversationStatus_MUTED ConversationStatus = 4 460 ConversationStatus_REPORTED ConversationStatus = 5 461 ) 462 463 func (o ConversationStatus) DeepCopy() ConversationStatus { return o } 464 465 var ConversationStatusMap = map[string]ConversationStatus{ 466 "UNFILED": 0, 467 "FAVORITE": 1, 468 "IGNORED": 2, 469 "BLOCKED": 3, 470 "MUTED": 4, 471 "REPORTED": 5, 472 } 473 474 var ConversationStatusRevMap = map[ConversationStatus]string{ 475 0: "UNFILED", 476 1: "FAVORITE", 477 2: "IGNORED", 478 3: "BLOCKED", 479 4: "MUTED", 480 5: "REPORTED", 481 } 482 483 func (e ConversationStatus) String() string { 484 if v, ok := ConversationStatusRevMap[e]; ok { 485 return v 486 } 487 return fmt.Sprintf("%v", int(e)) 488 } 489 490 type ConversationMember struct { 491 Uid gregor1.UID `codec:"uid" json:"uid"` 492 ConvID ConversationID `codec:"convID" json:"convID"` 493 TopicType TopicType `codec:"topicType" json:"topicType"` 494 } 495 496 func (o ConversationMember) DeepCopy() ConversationMember { 497 return ConversationMember{ 498 Uid: o.Uid.DeepCopy(), 499 ConvID: o.ConvID.DeepCopy(), 500 TopicType: o.TopicType.DeepCopy(), 501 } 502 } 503 504 type ConversationIDMessageIDPair struct { 505 ConvID ConversationID `codec:"convID" json:"convID"` 506 MsgID MessageID `codec:"msgID" json:"msgID"` 507 } 508 509 func (o ConversationIDMessageIDPair) DeepCopy() ConversationIDMessageIDPair { 510 return ConversationIDMessageIDPair{ 511 ConvID: o.ConvID.DeepCopy(), 512 MsgID: o.MsgID.DeepCopy(), 513 } 514 } 515 516 type ConversationIDMessageIDPairs struct { 517 Pairs []ConversationIDMessageIDPair `codec:"pairs" json:"pairs"` 518 } 519 520 func (o ConversationIDMessageIDPairs) DeepCopy() ConversationIDMessageIDPairs { 521 return ConversationIDMessageIDPairs{ 522 Pairs: (func(x []ConversationIDMessageIDPair) []ConversationIDMessageIDPair { 523 if x == nil { 524 return nil 525 } 526 ret := make([]ConversationIDMessageIDPair, len(x)) 527 for i, v := range x { 528 vCopy := v.DeepCopy() 529 ret[i] = vCopy 530 } 531 return ret 532 })(o.Pairs), 533 } 534 } 535 536 type ChannelNameMention struct { 537 ConvID ConversationID `codec:"convID" json:"convID"` 538 TopicName string `codec:"topicName" json:"topicName"` 539 } 540 541 func (o ChannelNameMention) DeepCopy() ChannelNameMention { 542 return ChannelNameMention{ 543 ConvID: o.ConvID.DeepCopy(), 544 TopicName: o.TopicName, 545 } 546 } 547 548 type KBFSPath struct { 549 StartIndex int `codec:"startIndex" json:"startIndex"` 550 RawPath string `codec:"rawPath" json:"rawPath"` 551 StandardPath string `codec:"standardPath" json:"standardPath"` 552 PathInfo keybase1.KBFSPathInfo `codec:"pathInfo" json:"pathInfo"` 553 } 554 555 func (o KBFSPath) DeepCopy() KBFSPath { 556 return KBFSPath{ 557 StartIndex: o.StartIndex, 558 RawPath: o.RawPath, 559 StandardPath: o.StandardPath, 560 PathInfo: o.PathInfo.DeepCopy(), 561 } 562 } 563 564 type ConversationMemberStatus int 565 566 const ( 567 ConversationMemberStatus_ACTIVE ConversationMemberStatus = 0 568 ConversationMemberStatus_REMOVED ConversationMemberStatus = 1 569 ConversationMemberStatus_LEFT ConversationMemberStatus = 2 570 ConversationMemberStatus_PREVIEW ConversationMemberStatus = 3 571 ConversationMemberStatus_RESET ConversationMemberStatus = 4 572 ConversationMemberStatus_NEVER_JOINED ConversationMemberStatus = 5 573 ) 574 575 func (o ConversationMemberStatus) DeepCopy() ConversationMemberStatus { return o } 576 577 var ConversationMemberStatusMap = map[string]ConversationMemberStatus{ 578 "ACTIVE": 0, 579 "REMOVED": 1, 580 "LEFT": 2, 581 "PREVIEW": 3, 582 "RESET": 4, 583 "NEVER_JOINED": 5, 584 } 585 586 var ConversationMemberStatusRevMap = map[ConversationMemberStatus]string{ 587 0: "ACTIVE", 588 1: "REMOVED", 589 2: "LEFT", 590 3: "PREVIEW", 591 4: "RESET", 592 5: "NEVER_JOINED", 593 } 594 595 func (e ConversationMemberStatus) String() string { 596 if v, ok := ConversationMemberStatusRevMap[e]; ok { 597 return v 598 } 599 return fmt.Sprintf("%v", int(e)) 600 } 601 602 type Pagination struct { 603 Next []byte `codec:"next,omitempty" json:"next,omitempty"` 604 Previous []byte `codec:"previous,omitempty" json:"previous,omitempty"` 605 Num int `codec:"num" json:"num"` 606 Last bool `codec:"last,omitempty" json:"last,omitempty"` 607 ForceFirstPage bool `codec:"forceFirstPage,omitempty" json:"forceFirstPage,omitempty"` 608 } 609 610 func (o Pagination) DeepCopy() Pagination { 611 return Pagination{ 612 Next: (func(x []byte) []byte { 613 if x == nil { 614 return nil 615 } 616 return append([]byte{}, x...) 617 })(o.Next), 618 Previous: (func(x []byte) []byte { 619 if x == nil { 620 return nil 621 } 622 return append([]byte{}, x...) 623 })(o.Previous), 624 Num: o.Num, 625 Last: o.Last, 626 ForceFirstPage: o.ForceFirstPage, 627 } 628 } 629 630 type RateLimit struct { 631 Name string `codec:"name" json:"name"` 632 CallsRemaining int `codec:"callsRemaining" json:"callsRemaining"` 633 WindowReset int `codec:"windowReset" json:"windowReset"` 634 MaxCalls int `codec:"maxCalls" json:"maxCalls"` 635 } 636 637 func (o RateLimit) DeepCopy() RateLimit { 638 return RateLimit{ 639 Name: o.Name, 640 CallsRemaining: o.CallsRemaining, 641 WindowReset: o.WindowReset, 642 MaxCalls: o.MaxCalls, 643 } 644 } 645 646 type InboxParticipantsMode int 647 648 const ( 649 InboxParticipantsMode_ALL InboxParticipantsMode = 0 650 InboxParticipantsMode_SKIP_TEAMS InboxParticipantsMode = 1 651 ) 652 653 func (o InboxParticipantsMode) DeepCopy() InboxParticipantsMode { return o } 654 655 var InboxParticipantsModeMap = map[string]InboxParticipantsMode{ 656 "ALL": 0, 657 "SKIP_TEAMS": 1, 658 } 659 660 var InboxParticipantsModeRevMap = map[InboxParticipantsMode]string{ 661 0: "ALL", 662 1: "SKIP_TEAMS", 663 } 664 665 func (e InboxParticipantsMode) String() string { 666 if v, ok := InboxParticipantsModeRevMap[e]; ok { 667 return v 668 } 669 return fmt.Sprintf("%v", int(e)) 670 } 671 672 type GetInboxQuery struct { 673 ConvID *ConversationID `codec:"convID,omitempty" json:"convID,omitempty"` 674 TopicType *TopicType `codec:"topicType,omitempty" json:"topicType,omitempty"` 675 TlfID *TLFID `codec:"tlfID,omitempty" json:"tlfID,omitempty"` 676 TlfVisibility *keybase1.TLFVisibility `codec:"tlfVisibility,omitempty" json:"tlfVisibility,omitempty"` 677 Before *gregor1.Time `codec:"before,omitempty" json:"before,omitempty"` 678 After *gregor1.Time `codec:"after,omitempty" json:"after,omitempty"` 679 OneChatTypePerTLF *bool `codec:"oneChatTypePerTLF,omitempty" json:"oneChatTypePerTLF,omitempty"` 680 TopicName *string `codec:"topicName,omitempty" json:"topicName,omitempty"` 681 Status []ConversationStatus `codec:"status" json:"status"` 682 MemberStatus []ConversationMemberStatus `codec:"memberStatus" json:"memberStatus"` 683 Existences []ConversationExistence `codec:"existences" json:"existences"` 684 MembersTypes []ConversationMembersType `codec:"membersTypes" json:"membersTypes"` 685 ConvIDs []ConversationID `codec:"convIDs" json:"convIDs"` 686 UnreadOnly bool `codec:"unreadOnly" json:"unreadOnly"` 687 ReadOnly bool `codec:"readOnly" json:"readOnly"` 688 ComputeActiveList bool `codec:"computeActiveList" json:"computeActiveList"` 689 SummarizeMaxMsgs bool `codec:"summarizeMaxMsgs" json:"summarizeMaxMsgs"` 690 ParticipantsMode InboxParticipantsMode `codec:"participantsMode" json:"participantsMode"` 691 SkipBgLoads bool `codec:"skipBgLoads" json:"skipBgLoads"` 692 AllowUnseenQuery bool `codec:"allowUnseenQuery" json:"allowUnseenQuery"` 693 } 694 695 func (o GetInboxQuery) DeepCopy() GetInboxQuery { 696 return GetInboxQuery{ 697 ConvID: (func(x *ConversationID) *ConversationID { 698 if x == nil { 699 return nil 700 } 701 tmp := (*x).DeepCopy() 702 return &tmp 703 })(o.ConvID), 704 TopicType: (func(x *TopicType) *TopicType { 705 if x == nil { 706 return nil 707 } 708 tmp := (*x).DeepCopy() 709 return &tmp 710 })(o.TopicType), 711 TlfID: (func(x *TLFID) *TLFID { 712 if x == nil { 713 return nil 714 } 715 tmp := (*x).DeepCopy() 716 return &tmp 717 })(o.TlfID), 718 TlfVisibility: (func(x *keybase1.TLFVisibility) *keybase1.TLFVisibility { 719 if x == nil { 720 return nil 721 } 722 tmp := (*x).DeepCopy() 723 return &tmp 724 })(o.TlfVisibility), 725 Before: (func(x *gregor1.Time) *gregor1.Time { 726 if x == nil { 727 return nil 728 } 729 tmp := (*x).DeepCopy() 730 return &tmp 731 })(o.Before), 732 After: (func(x *gregor1.Time) *gregor1.Time { 733 if x == nil { 734 return nil 735 } 736 tmp := (*x).DeepCopy() 737 return &tmp 738 })(o.After), 739 OneChatTypePerTLF: (func(x *bool) *bool { 740 if x == nil { 741 return nil 742 } 743 tmp := (*x) 744 return &tmp 745 })(o.OneChatTypePerTLF), 746 TopicName: (func(x *string) *string { 747 if x == nil { 748 return nil 749 } 750 tmp := (*x) 751 return &tmp 752 })(o.TopicName), 753 Status: (func(x []ConversationStatus) []ConversationStatus { 754 if x == nil { 755 return nil 756 } 757 ret := make([]ConversationStatus, len(x)) 758 for i, v := range x { 759 vCopy := v.DeepCopy() 760 ret[i] = vCopy 761 } 762 return ret 763 })(o.Status), 764 MemberStatus: (func(x []ConversationMemberStatus) []ConversationMemberStatus { 765 if x == nil { 766 return nil 767 } 768 ret := make([]ConversationMemberStatus, len(x)) 769 for i, v := range x { 770 vCopy := v.DeepCopy() 771 ret[i] = vCopy 772 } 773 return ret 774 })(o.MemberStatus), 775 Existences: (func(x []ConversationExistence) []ConversationExistence { 776 if x == nil { 777 return nil 778 } 779 ret := make([]ConversationExistence, len(x)) 780 for i, v := range x { 781 vCopy := v.DeepCopy() 782 ret[i] = vCopy 783 } 784 return ret 785 })(o.Existences), 786 MembersTypes: (func(x []ConversationMembersType) []ConversationMembersType { 787 if x == nil { 788 return nil 789 } 790 ret := make([]ConversationMembersType, len(x)) 791 for i, v := range x { 792 vCopy := v.DeepCopy() 793 ret[i] = vCopy 794 } 795 return ret 796 })(o.MembersTypes), 797 ConvIDs: (func(x []ConversationID) []ConversationID { 798 if x == nil { 799 return nil 800 } 801 ret := make([]ConversationID, len(x)) 802 for i, v := range x { 803 vCopy := v.DeepCopy() 804 ret[i] = vCopy 805 } 806 return ret 807 })(o.ConvIDs), 808 UnreadOnly: o.UnreadOnly, 809 ReadOnly: o.ReadOnly, 810 ComputeActiveList: o.ComputeActiveList, 811 SummarizeMaxMsgs: o.SummarizeMaxMsgs, 812 ParticipantsMode: o.ParticipantsMode.DeepCopy(), 813 SkipBgLoads: o.SkipBgLoads, 814 AllowUnseenQuery: o.AllowUnseenQuery, 815 } 816 } 817 818 type ConversationIDTriple struct { 819 Tlfid TLFID `codec:"tlfid" json:"tlfid"` 820 TopicType TopicType `codec:"topicType" json:"topicType"` 821 TopicID TopicID `codec:"topicID" json:"topicID"` 822 } 823 824 func (o ConversationIDTriple) DeepCopy() ConversationIDTriple { 825 return ConversationIDTriple{ 826 Tlfid: o.Tlfid.DeepCopy(), 827 TopicType: o.TopicType.DeepCopy(), 828 TopicID: o.TopicID.DeepCopy(), 829 } 830 } 831 832 type ConversationFinalizeInfo struct { 833 ResetUser string `codec:"resetUser" json:"resetUser"` 834 ResetDate string `codec:"resetDate" json:"resetDate"` 835 ResetFull string `codec:"resetFull" json:"resetFull"` 836 ResetTimestamp gregor1.Time `codec:"resetTimestamp" json:"resetTimestamp"` 837 } 838 839 func (o ConversationFinalizeInfo) DeepCopy() ConversationFinalizeInfo { 840 return ConversationFinalizeInfo{ 841 ResetUser: o.ResetUser, 842 ResetDate: o.ResetDate, 843 ResetFull: o.ResetFull, 844 ResetTimestamp: o.ResetTimestamp.DeepCopy(), 845 } 846 } 847 848 type ConversationResolveInfo struct { 849 NewTLFName string `codec:"newTLFName" json:"newTLFName"` 850 } 851 852 func (o ConversationResolveInfo) DeepCopy() ConversationResolveInfo { 853 return ConversationResolveInfo{ 854 NewTLFName: o.NewTLFName, 855 } 856 } 857 858 type Expunge struct { 859 Upto MessageID `codec:"upto" json:"upto"` 860 Basis MessageID `codec:"basis" json:"basis"` 861 } 862 863 func (o Expunge) DeepCopy() Expunge { 864 return Expunge{ 865 Upto: o.Upto.DeepCopy(), 866 Basis: o.Basis.DeepCopy(), 867 } 868 } 869 870 type ConversationMetadata struct { 871 IdTriple ConversationIDTriple `codec:"idTriple" json:"idTriple"` 872 ConversationID ConversationID `codec:"conversationID" json:"conversationID"` 873 Visibility keybase1.TLFVisibility `codec:"visibility" json:"visibility"` 874 Status ConversationStatus `codec:"status" json:"status"` 875 MembersType ConversationMembersType `codec:"membersType" json:"membersType"` 876 TeamType TeamType `codec:"teamType" json:"teamType"` 877 Existence ConversationExistence `codec:"existence" json:"existence"` 878 Version ConversationVers `codec:"version" json:"version"` 879 LocalVersion LocalConversationVers `codec:"localVersion" json:"localVersion"` 880 FinalizeInfo *ConversationFinalizeInfo `codec:"finalizeInfo,omitempty" json:"finalizeInfo,omitempty"` 881 Supersedes []ConversationMetadata `codec:"supersedes" json:"supersedes"` 882 SupersededBy []ConversationMetadata `codec:"supersededBy" json:"supersededBy"` 883 ActiveList []gregor1.UID `codec:"activeList" json:"activeList"` 884 AllList []gregor1.UID `codec:"allList" json:"allList"` 885 ResetList []gregor1.UID `codec:"resetList" json:"resetList"` 886 IsDefaultConv bool `codec:"d" json:"isDefaultConv"` 887 } 888 889 func (o ConversationMetadata) DeepCopy() ConversationMetadata { 890 return ConversationMetadata{ 891 IdTriple: o.IdTriple.DeepCopy(), 892 ConversationID: o.ConversationID.DeepCopy(), 893 Visibility: o.Visibility.DeepCopy(), 894 Status: o.Status.DeepCopy(), 895 MembersType: o.MembersType.DeepCopy(), 896 TeamType: o.TeamType.DeepCopy(), 897 Existence: o.Existence.DeepCopy(), 898 Version: o.Version.DeepCopy(), 899 LocalVersion: o.LocalVersion.DeepCopy(), 900 FinalizeInfo: (func(x *ConversationFinalizeInfo) *ConversationFinalizeInfo { 901 if x == nil { 902 return nil 903 } 904 tmp := (*x).DeepCopy() 905 return &tmp 906 })(o.FinalizeInfo), 907 Supersedes: (func(x []ConversationMetadata) []ConversationMetadata { 908 if x == nil { 909 return nil 910 } 911 ret := make([]ConversationMetadata, len(x)) 912 for i, v := range x { 913 vCopy := v.DeepCopy() 914 ret[i] = vCopy 915 } 916 return ret 917 })(o.Supersedes), 918 SupersededBy: (func(x []ConversationMetadata) []ConversationMetadata { 919 if x == nil { 920 return nil 921 } 922 ret := make([]ConversationMetadata, len(x)) 923 for i, v := range x { 924 vCopy := v.DeepCopy() 925 ret[i] = vCopy 926 } 927 return ret 928 })(o.SupersededBy), 929 ActiveList: (func(x []gregor1.UID) []gregor1.UID { 930 if x == nil { 931 return nil 932 } 933 ret := make([]gregor1.UID, len(x)) 934 for i, v := range x { 935 vCopy := v.DeepCopy() 936 ret[i] = vCopy 937 } 938 return ret 939 })(o.ActiveList), 940 AllList: (func(x []gregor1.UID) []gregor1.UID { 941 if x == nil { 942 return nil 943 } 944 ret := make([]gregor1.UID, len(x)) 945 for i, v := range x { 946 vCopy := v.DeepCopy() 947 ret[i] = vCopy 948 } 949 return ret 950 })(o.AllList), 951 ResetList: (func(x []gregor1.UID) []gregor1.UID { 952 if x == nil { 953 return nil 954 } 955 ret := make([]gregor1.UID, len(x)) 956 for i, v := range x { 957 vCopy := v.DeepCopy() 958 ret[i] = vCopy 959 } 960 return ret 961 })(o.ResetList), 962 IsDefaultConv: o.IsDefaultConv, 963 } 964 } 965 966 type ConversationNotificationInfo struct { 967 ChannelWide bool `codec:"channelWide" json:"channelWide"` 968 Settings map[keybase1.DeviceType]map[NotificationKind]bool `codec:"settings" json:"settings"` 969 } 970 971 func (o ConversationNotificationInfo) DeepCopy() ConversationNotificationInfo { 972 return ConversationNotificationInfo{ 973 ChannelWide: o.ChannelWide, 974 Settings: (func(x map[keybase1.DeviceType]map[NotificationKind]bool) map[keybase1.DeviceType]map[NotificationKind]bool { 975 if x == nil { 976 return nil 977 } 978 ret := make(map[keybase1.DeviceType]map[NotificationKind]bool, len(x)) 979 for k, v := range x { 980 kCopy := k.DeepCopy() 981 vCopy := (func(x map[NotificationKind]bool) map[NotificationKind]bool { 982 if x == nil { 983 return nil 984 } 985 ret := make(map[NotificationKind]bool, len(x)) 986 for k, v := range x { 987 kCopy := k.DeepCopy() 988 vCopy := v 989 ret[kCopy] = vCopy 990 } 991 return ret 992 })(v) 993 ret[kCopy] = vCopy 994 } 995 return ret 996 })(o.Settings), 997 } 998 } 999 1000 type ConversationReaderInfo struct { 1001 Mtime gregor1.Time `codec:"mtime" json:"mtime"` 1002 ReadMsgid MessageID `codec:"readMsgid" json:"readMsgid"` 1003 MaxMsgid MessageID `codec:"maxMsgid" json:"maxMsgid"` 1004 Status ConversationMemberStatus `codec:"status" json:"status"` 1005 UntrustedTeamRole keybase1.TeamRole `codec:"untrustedTeamRole" json:"untrustedTeamRole"` 1006 LastSendTime gregor1.Time `codec:"l" json:"l"` 1007 Journeycard *ConversationJourneycardInfo `codec:"jc,omitempty" json:"jc,omitempty"` 1008 } 1009 1010 func (o ConversationReaderInfo) DeepCopy() ConversationReaderInfo { 1011 return ConversationReaderInfo{ 1012 Mtime: o.Mtime.DeepCopy(), 1013 ReadMsgid: o.ReadMsgid.DeepCopy(), 1014 MaxMsgid: o.MaxMsgid.DeepCopy(), 1015 Status: o.Status.DeepCopy(), 1016 UntrustedTeamRole: o.UntrustedTeamRole.DeepCopy(), 1017 LastSendTime: o.LastSendTime.DeepCopy(), 1018 Journeycard: (func(x *ConversationJourneycardInfo) *ConversationJourneycardInfo { 1019 if x == nil { 1020 return nil 1021 } 1022 tmp := (*x).DeepCopy() 1023 return &tmp 1024 })(o.Journeycard), 1025 } 1026 } 1027 1028 type ConversationJourneycardInfo struct { 1029 WelcomeEligible bool `codec:"w" json:"w"` 1030 } 1031 1032 func (o ConversationJourneycardInfo) DeepCopy() ConversationJourneycardInfo { 1033 return ConversationJourneycardInfo{ 1034 WelcomeEligible: o.WelcomeEligible, 1035 } 1036 } 1037 1038 type ConversationCreatorInfo struct { 1039 Ctime gregor1.Time `codec:"ctime" json:"ctime"` 1040 Uid gregor1.UID `codec:"uid" json:"uid"` 1041 } 1042 1043 func (o ConversationCreatorInfo) DeepCopy() ConversationCreatorInfo { 1044 return ConversationCreatorInfo{ 1045 Ctime: o.Ctime.DeepCopy(), 1046 Uid: o.Uid.DeepCopy(), 1047 } 1048 } 1049 1050 type ConversationCreatorInfoLocal struct { 1051 Ctime gregor1.Time `codec:"ctime" json:"ctime"` 1052 Username string `codec:"username" json:"username"` 1053 } 1054 1055 func (o ConversationCreatorInfoLocal) DeepCopy() ConversationCreatorInfoLocal { 1056 return ConversationCreatorInfoLocal{ 1057 Ctime: o.Ctime.DeepCopy(), 1058 Username: o.Username, 1059 } 1060 } 1061 1062 type ConversationMinWriterRoleInfo struct { 1063 Uid gregor1.UID `codec:"uid" json:"uid"` 1064 Role keybase1.TeamRole `codec:"role" json:"role"` 1065 } 1066 1067 func (o ConversationMinWriterRoleInfo) DeepCopy() ConversationMinWriterRoleInfo { 1068 return ConversationMinWriterRoleInfo{ 1069 Uid: o.Uid.DeepCopy(), 1070 Role: o.Role.DeepCopy(), 1071 } 1072 } 1073 1074 type ConversationSettings struct { 1075 MinWriterRoleInfo *ConversationMinWriterRoleInfo `codec:"mwr,omitempty" json:"mwr,omitempty"` 1076 } 1077 1078 func (o ConversationSettings) DeepCopy() ConversationSettings { 1079 return ConversationSettings{ 1080 MinWriterRoleInfo: (func(x *ConversationMinWriterRoleInfo) *ConversationMinWriterRoleInfo { 1081 if x == nil { 1082 return nil 1083 } 1084 tmp := (*x).DeepCopy() 1085 return &tmp 1086 })(o.MinWriterRoleInfo), 1087 } 1088 } 1089 1090 type Conversation struct { 1091 Metadata ConversationMetadata `codec:"metadata" json:"metadata"` 1092 ReaderInfo *ConversationReaderInfo `codec:"readerInfo,omitempty" json:"readerInfo,omitempty"` 1093 Notifications *ConversationNotificationInfo `codec:"notifications,omitempty" json:"notifications,omitempty"` 1094 MaxMsgs []MessageBoxed `codec:"maxMsgs" json:"maxMsgs"` 1095 MaxMsgSummaries []MessageSummary `codec:"maxMsgSummaries" json:"maxMsgSummaries"` 1096 CreatorInfo *ConversationCreatorInfo `codec:"creatorInfo,omitempty" json:"creatorInfo,omitempty"` 1097 PinnedMsg *MessageID `codec:"pinnedMsg,omitempty" json:"pinnedMsg,omitempty"` 1098 Expunge Expunge `codec:"expunge" json:"expunge"` 1099 ConvRetention *RetentionPolicy `codec:"convRetention,omitempty" json:"convRetention,omitempty"` 1100 TeamRetention *RetentionPolicy `codec:"teamRetention,omitempty" json:"teamRetention,omitempty"` 1101 ConvSettings *ConversationSettings `codec:"cs,omitempty" json:"cs,omitempty"` 1102 } 1103 1104 func (o Conversation) DeepCopy() Conversation { 1105 return Conversation{ 1106 Metadata: o.Metadata.DeepCopy(), 1107 ReaderInfo: (func(x *ConversationReaderInfo) *ConversationReaderInfo { 1108 if x == nil { 1109 return nil 1110 } 1111 tmp := (*x).DeepCopy() 1112 return &tmp 1113 })(o.ReaderInfo), 1114 Notifications: (func(x *ConversationNotificationInfo) *ConversationNotificationInfo { 1115 if x == nil { 1116 return nil 1117 } 1118 tmp := (*x).DeepCopy() 1119 return &tmp 1120 })(o.Notifications), 1121 MaxMsgs: (func(x []MessageBoxed) []MessageBoxed { 1122 if x == nil { 1123 return nil 1124 } 1125 ret := make([]MessageBoxed, len(x)) 1126 for i, v := range x { 1127 vCopy := v.DeepCopy() 1128 ret[i] = vCopy 1129 } 1130 return ret 1131 })(o.MaxMsgs), 1132 MaxMsgSummaries: (func(x []MessageSummary) []MessageSummary { 1133 if x == nil { 1134 return nil 1135 } 1136 ret := make([]MessageSummary, len(x)) 1137 for i, v := range x { 1138 vCopy := v.DeepCopy() 1139 ret[i] = vCopy 1140 } 1141 return ret 1142 })(o.MaxMsgSummaries), 1143 CreatorInfo: (func(x *ConversationCreatorInfo) *ConversationCreatorInfo { 1144 if x == nil { 1145 return nil 1146 } 1147 tmp := (*x).DeepCopy() 1148 return &tmp 1149 })(o.CreatorInfo), 1150 PinnedMsg: (func(x *MessageID) *MessageID { 1151 if x == nil { 1152 return nil 1153 } 1154 tmp := (*x).DeepCopy() 1155 return &tmp 1156 })(o.PinnedMsg), 1157 Expunge: o.Expunge.DeepCopy(), 1158 ConvRetention: (func(x *RetentionPolicy) *RetentionPolicy { 1159 if x == nil { 1160 return nil 1161 } 1162 tmp := (*x).DeepCopy() 1163 return &tmp 1164 })(o.ConvRetention), 1165 TeamRetention: (func(x *RetentionPolicy) *RetentionPolicy { 1166 if x == nil { 1167 return nil 1168 } 1169 tmp := (*x).DeepCopy() 1170 return &tmp 1171 })(o.TeamRetention), 1172 ConvSettings: (func(x *ConversationSettings) *ConversationSettings { 1173 if x == nil { 1174 return nil 1175 } 1176 tmp := (*x).DeepCopy() 1177 return &tmp 1178 })(o.ConvSettings), 1179 } 1180 } 1181 1182 type MessageSummary struct { 1183 MsgID MessageID `codec:"msgID" json:"msgID"` 1184 MessageType MessageType `codec:"messageType" json:"messageType"` 1185 TlfName string `codec:"tlfName" json:"tlfName"` 1186 TlfPublic bool `codec:"tlfPublic" json:"tlfPublic"` 1187 Ctime gregor1.Time `codec:"ctime" json:"ctime"` 1188 } 1189 1190 func (o MessageSummary) DeepCopy() MessageSummary { 1191 return MessageSummary{ 1192 MsgID: o.MsgID.DeepCopy(), 1193 MessageType: o.MessageType.DeepCopy(), 1194 TlfName: o.TlfName, 1195 TlfPublic: o.TlfPublic, 1196 Ctime: o.Ctime.DeepCopy(), 1197 } 1198 } 1199 1200 type Reaction struct { 1201 Ctime gregor1.Time `codec:"ctime" json:"ctime"` 1202 ReactionMsgID MessageID `codec:"reactionMsgID" json:"reactionMsgID"` 1203 } 1204 1205 func (o Reaction) DeepCopy() Reaction { 1206 return Reaction{ 1207 Ctime: o.Ctime.DeepCopy(), 1208 ReactionMsgID: o.ReactionMsgID.DeepCopy(), 1209 } 1210 } 1211 1212 type ReactionMap struct { 1213 Reactions map[string]map[string]Reaction `codec:"reactions" json:"reactions"` 1214 } 1215 1216 func (o ReactionMap) DeepCopy() ReactionMap { 1217 return ReactionMap{ 1218 Reactions: (func(x map[string]map[string]Reaction) map[string]map[string]Reaction { 1219 if x == nil { 1220 return nil 1221 } 1222 ret := make(map[string]map[string]Reaction, len(x)) 1223 for k, v := range x { 1224 kCopy := k 1225 vCopy := (func(x map[string]Reaction) map[string]Reaction { 1226 if x == nil { 1227 return nil 1228 } 1229 ret := make(map[string]Reaction, len(x)) 1230 for k, v := range x { 1231 kCopy := k 1232 vCopy := v.DeepCopy() 1233 ret[kCopy] = vCopy 1234 } 1235 return ret 1236 })(v) 1237 ret[kCopy] = vCopy 1238 } 1239 return ret 1240 })(o.Reactions), 1241 } 1242 } 1243 1244 type MessageServerHeader struct { 1245 MessageID MessageID `codec:"messageID" json:"messageID"` 1246 SupersededBy MessageID `codec:"supersededBy" json:"supersededBy"` 1247 ReactionIDs []MessageID `codec:"r" json:"r"` 1248 UnfurlIDs []MessageID `codec:"u" json:"u"` 1249 Replies []MessageID `codec:"replies" json:"replies"` 1250 Ctime gregor1.Time `codec:"ctime" json:"ctime"` 1251 Now gregor1.Time `codec:"n" json:"n"` 1252 Rtime *gregor1.Time `codec:"rt,omitempty" json:"rt,omitempty"` 1253 } 1254 1255 func (o MessageServerHeader) DeepCopy() MessageServerHeader { 1256 return MessageServerHeader{ 1257 MessageID: o.MessageID.DeepCopy(), 1258 SupersededBy: o.SupersededBy.DeepCopy(), 1259 ReactionIDs: (func(x []MessageID) []MessageID { 1260 if x == nil { 1261 return nil 1262 } 1263 ret := make([]MessageID, len(x)) 1264 for i, v := range x { 1265 vCopy := v.DeepCopy() 1266 ret[i] = vCopy 1267 } 1268 return ret 1269 })(o.ReactionIDs), 1270 UnfurlIDs: (func(x []MessageID) []MessageID { 1271 if x == nil { 1272 return nil 1273 } 1274 ret := make([]MessageID, len(x)) 1275 for i, v := range x { 1276 vCopy := v.DeepCopy() 1277 ret[i] = vCopy 1278 } 1279 return ret 1280 })(o.UnfurlIDs), 1281 Replies: (func(x []MessageID) []MessageID { 1282 if x == nil { 1283 return nil 1284 } 1285 ret := make([]MessageID, len(x)) 1286 for i, v := range x { 1287 vCopy := v.DeepCopy() 1288 ret[i] = vCopy 1289 } 1290 return ret 1291 })(o.Replies), 1292 Ctime: o.Ctime.DeepCopy(), 1293 Now: o.Now.DeepCopy(), 1294 Rtime: (func(x *gregor1.Time) *gregor1.Time { 1295 if x == nil { 1296 return nil 1297 } 1298 tmp := (*x).DeepCopy() 1299 return &tmp 1300 })(o.Rtime), 1301 } 1302 } 1303 1304 type MessagePreviousPointer struct { 1305 Id MessageID `codec:"id" json:"id"` 1306 Hash Hash `codec:"hash" json:"hash"` 1307 } 1308 1309 func (o MessagePreviousPointer) DeepCopy() MessagePreviousPointer { 1310 return MessagePreviousPointer{ 1311 Id: o.Id.DeepCopy(), 1312 Hash: o.Hash.DeepCopy(), 1313 } 1314 } 1315 1316 type OutboxInfo struct { 1317 Prev MessageID `codec:"prev" json:"prev"` 1318 ComposeTime gregor1.Time `codec:"composeTime" json:"composeTime"` 1319 } 1320 1321 func (o OutboxInfo) DeepCopy() OutboxInfo { 1322 return OutboxInfo{ 1323 Prev: o.Prev.DeepCopy(), 1324 ComposeTime: o.ComposeTime.DeepCopy(), 1325 } 1326 } 1327 1328 type MsgEphemeralMetadata struct { 1329 Lifetime gregor1.DurationSec `codec:"l" json:"l"` 1330 Generation keybase1.EkGeneration `codec:"g" json:"g"` 1331 ExplodedBy *string `codec:"u,omitempty" json:"u,omitempty"` 1332 } 1333 1334 func (o MsgEphemeralMetadata) DeepCopy() MsgEphemeralMetadata { 1335 return MsgEphemeralMetadata{ 1336 Lifetime: o.Lifetime.DeepCopy(), 1337 Generation: o.Generation.DeepCopy(), 1338 ExplodedBy: (func(x *string) *string { 1339 if x == nil { 1340 return nil 1341 } 1342 tmp := (*x) 1343 return &tmp 1344 })(o.ExplodedBy), 1345 } 1346 } 1347 1348 type EphemeralPurgeInfo struct { 1349 ConvID ConversationID `codec:"c" json:"c"` 1350 IsActive bool `codec:"a" json:"a"` 1351 NextPurgeTime gregor1.Time `codec:"n" json:"n"` 1352 MinUnexplodedID MessageID `codec:"e" json:"e"` 1353 } 1354 1355 func (o EphemeralPurgeInfo) DeepCopy() EphemeralPurgeInfo { 1356 return EphemeralPurgeInfo{ 1357 ConvID: o.ConvID.DeepCopy(), 1358 IsActive: o.IsActive, 1359 NextPurgeTime: o.NextPurgeTime.DeepCopy(), 1360 MinUnexplodedID: o.MinUnexplodedID.DeepCopy(), 1361 } 1362 } 1363 1364 type MessageClientHeader struct { 1365 Conv ConversationIDTriple `codec:"conv" json:"conv"` 1366 TlfName string `codec:"tlfName" json:"tlfName"` 1367 TlfPublic bool `codec:"tlfPublic" json:"tlfPublic"` 1368 MessageType MessageType `codec:"messageType" json:"messageType"` 1369 Supersedes MessageID `codec:"supersedes" json:"supersedes"` 1370 KbfsCryptKeysUsed *bool `codec:"kbfsCryptKeysUsed,omitempty" json:"kbfsCryptKeysUsed,omitempty"` 1371 Deletes []MessageID `codec:"deletes" json:"deletes"` 1372 Prev []MessagePreviousPointer `codec:"prev" json:"prev"` 1373 DeleteHistory *MessageDeleteHistory `codec:"deleteHistory,omitempty" json:"deleteHistory,omitempty"` 1374 Sender gregor1.UID `codec:"sender" json:"sender"` 1375 SenderDevice gregor1.DeviceID `codec:"senderDevice" json:"senderDevice"` 1376 MerkleRoot *MerkleRoot `codec:"merkleRoot,omitempty" json:"merkleRoot,omitempty"` 1377 OutboxID *OutboxID `codec:"outboxID,omitempty" json:"outboxID,omitempty"` 1378 OutboxInfo *OutboxInfo `codec:"outboxInfo,omitempty" json:"outboxInfo,omitempty"` 1379 EphemeralMetadata *MsgEphemeralMetadata `codec:"em,omitempty" json:"em,omitempty"` 1380 PairwiseMacs map[keybase1.KID][]byte `codec:"pm" json:"pm"` 1381 BotUID *gregor1.UID `codec:"b,omitempty" json:"b,omitempty"` 1382 TxID *stellar1.TransactionID `codec:"t,omitempty" json:"t,omitempty"` 1383 } 1384 1385 func (o MessageClientHeader) DeepCopy() MessageClientHeader { 1386 return MessageClientHeader{ 1387 Conv: o.Conv.DeepCopy(), 1388 TlfName: o.TlfName, 1389 TlfPublic: o.TlfPublic, 1390 MessageType: o.MessageType.DeepCopy(), 1391 Supersedes: o.Supersedes.DeepCopy(), 1392 KbfsCryptKeysUsed: (func(x *bool) *bool { 1393 if x == nil { 1394 return nil 1395 } 1396 tmp := (*x) 1397 return &tmp 1398 })(o.KbfsCryptKeysUsed), 1399 Deletes: (func(x []MessageID) []MessageID { 1400 if x == nil { 1401 return nil 1402 } 1403 ret := make([]MessageID, len(x)) 1404 for i, v := range x { 1405 vCopy := v.DeepCopy() 1406 ret[i] = vCopy 1407 } 1408 return ret 1409 })(o.Deletes), 1410 Prev: (func(x []MessagePreviousPointer) []MessagePreviousPointer { 1411 if x == nil { 1412 return nil 1413 } 1414 ret := make([]MessagePreviousPointer, len(x)) 1415 for i, v := range x { 1416 vCopy := v.DeepCopy() 1417 ret[i] = vCopy 1418 } 1419 return ret 1420 })(o.Prev), 1421 DeleteHistory: (func(x *MessageDeleteHistory) *MessageDeleteHistory { 1422 if x == nil { 1423 return nil 1424 } 1425 tmp := (*x).DeepCopy() 1426 return &tmp 1427 })(o.DeleteHistory), 1428 Sender: o.Sender.DeepCopy(), 1429 SenderDevice: o.SenderDevice.DeepCopy(), 1430 MerkleRoot: (func(x *MerkleRoot) *MerkleRoot { 1431 if x == nil { 1432 return nil 1433 } 1434 tmp := (*x).DeepCopy() 1435 return &tmp 1436 })(o.MerkleRoot), 1437 OutboxID: (func(x *OutboxID) *OutboxID { 1438 if x == nil { 1439 return nil 1440 } 1441 tmp := (*x).DeepCopy() 1442 return &tmp 1443 })(o.OutboxID), 1444 OutboxInfo: (func(x *OutboxInfo) *OutboxInfo { 1445 if x == nil { 1446 return nil 1447 } 1448 tmp := (*x).DeepCopy() 1449 return &tmp 1450 })(o.OutboxInfo), 1451 EphemeralMetadata: (func(x *MsgEphemeralMetadata) *MsgEphemeralMetadata { 1452 if x == nil { 1453 return nil 1454 } 1455 tmp := (*x).DeepCopy() 1456 return &tmp 1457 })(o.EphemeralMetadata), 1458 PairwiseMacs: (func(x map[keybase1.KID][]byte) map[keybase1.KID][]byte { 1459 if x == nil { 1460 return nil 1461 } 1462 ret := make(map[keybase1.KID][]byte, len(x)) 1463 for k, v := range x { 1464 kCopy := k.DeepCopy() 1465 vCopy := (func(x []byte) []byte { 1466 if x == nil { 1467 return nil 1468 } 1469 return append([]byte{}, x...) 1470 })(v) 1471 ret[kCopy] = vCopy 1472 } 1473 return ret 1474 })(o.PairwiseMacs), 1475 BotUID: (func(x *gregor1.UID) *gregor1.UID { 1476 if x == nil { 1477 return nil 1478 } 1479 tmp := (*x).DeepCopy() 1480 return &tmp 1481 })(o.BotUID), 1482 TxID: (func(x *stellar1.TransactionID) *stellar1.TransactionID { 1483 if x == nil { 1484 return nil 1485 } 1486 tmp := (*x).DeepCopy() 1487 return &tmp 1488 })(o.TxID), 1489 } 1490 } 1491 1492 type MessageClientHeaderVerified struct { 1493 Conv ConversationIDTriple `codec:"conv" json:"conv"` 1494 TlfName string `codec:"tlfName" json:"tlfName"` 1495 TlfPublic bool `codec:"tlfPublic" json:"tlfPublic"` 1496 MessageType MessageType `codec:"messageType" json:"messageType"` 1497 Prev []MessagePreviousPointer `codec:"prev" json:"prev"` 1498 Sender gregor1.UID `codec:"sender" json:"sender"` 1499 SenderDevice gregor1.DeviceID `codec:"senderDevice" json:"senderDevice"` 1500 KbfsCryptKeysUsed *bool `codec:"kbfsCryptKeysUsed,omitempty" json:"kbfsCryptKeysUsed,omitempty"` 1501 MerkleRoot *MerkleRoot `codec:"merkleRoot,omitempty" json:"merkleRoot,omitempty"` 1502 OutboxID *OutboxID `codec:"outboxID,omitempty" json:"outboxID,omitempty"` 1503 OutboxInfo *OutboxInfo `codec:"outboxInfo,omitempty" json:"outboxInfo,omitempty"` 1504 EphemeralMetadata *MsgEphemeralMetadata `codec:"em,omitempty" json:"em,omitempty"` 1505 Rtime gregor1.Time `codec:"rt" json:"rt"` 1506 HasPairwiseMacs bool `codec:"pm" json:"pm"` 1507 BotUID *gregor1.UID `codec:"b,omitempty" json:"b,omitempty"` 1508 } 1509 1510 func (o MessageClientHeaderVerified) DeepCopy() MessageClientHeaderVerified { 1511 return MessageClientHeaderVerified{ 1512 Conv: o.Conv.DeepCopy(), 1513 TlfName: o.TlfName, 1514 TlfPublic: o.TlfPublic, 1515 MessageType: o.MessageType.DeepCopy(), 1516 Prev: (func(x []MessagePreviousPointer) []MessagePreviousPointer { 1517 if x == nil { 1518 return nil 1519 } 1520 ret := make([]MessagePreviousPointer, len(x)) 1521 for i, v := range x { 1522 vCopy := v.DeepCopy() 1523 ret[i] = vCopy 1524 } 1525 return ret 1526 })(o.Prev), 1527 Sender: o.Sender.DeepCopy(), 1528 SenderDevice: o.SenderDevice.DeepCopy(), 1529 KbfsCryptKeysUsed: (func(x *bool) *bool { 1530 if x == nil { 1531 return nil 1532 } 1533 tmp := (*x) 1534 return &tmp 1535 })(o.KbfsCryptKeysUsed), 1536 MerkleRoot: (func(x *MerkleRoot) *MerkleRoot { 1537 if x == nil { 1538 return nil 1539 } 1540 tmp := (*x).DeepCopy() 1541 return &tmp 1542 })(o.MerkleRoot), 1543 OutboxID: (func(x *OutboxID) *OutboxID { 1544 if x == nil { 1545 return nil 1546 } 1547 tmp := (*x).DeepCopy() 1548 return &tmp 1549 })(o.OutboxID), 1550 OutboxInfo: (func(x *OutboxInfo) *OutboxInfo { 1551 if x == nil { 1552 return nil 1553 } 1554 tmp := (*x).DeepCopy() 1555 return &tmp 1556 })(o.OutboxInfo), 1557 EphemeralMetadata: (func(x *MsgEphemeralMetadata) *MsgEphemeralMetadata { 1558 if x == nil { 1559 return nil 1560 } 1561 tmp := (*x).DeepCopy() 1562 return &tmp 1563 })(o.EphemeralMetadata), 1564 Rtime: o.Rtime.DeepCopy(), 1565 HasPairwiseMacs: o.HasPairwiseMacs, 1566 BotUID: (func(x *gregor1.UID) *gregor1.UID { 1567 if x == nil { 1568 return nil 1569 } 1570 tmp := (*x).DeepCopy() 1571 return &tmp 1572 })(o.BotUID), 1573 } 1574 } 1575 1576 type EncryptedData struct { 1577 V int `codec:"v" json:"v"` 1578 E []byte `codec:"e" json:"e"` 1579 N []byte `codec:"n" json:"n"` 1580 } 1581 1582 func (o EncryptedData) DeepCopy() EncryptedData { 1583 return EncryptedData{ 1584 V: o.V, 1585 E: (func(x []byte) []byte { 1586 if x == nil { 1587 return nil 1588 } 1589 return append([]byte{}, x...) 1590 })(o.E), 1591 N: (func(x []byte) []byte { 1592 if x == nil { 1593 return nil 1594 } 1595 return append([]byte{}, x...) 1596 })(o.N), 1597 } 1598 } 1599 1600 type SignEncryptedData struct { 1601 V int `codec:"v" json:"v"` 1602 E []byte `codec:"e" json:"e"` 1603 N []byte `codec:"n" json:"n"` 1604 } 1605 1606 func (o SignEncryptedData) DeepCopy() SignEncryptedData { 1607 return SignEncryptedData{ 1608 V: o.V, 1609 E: (func(x []byte) []byte { 1610 if x == nil { 1611 return nil 1612 } 1613 return append([]byte{}, x...) 1614 })(o.E), 1615 N: (func(x []byte) []byte { 1616 if x == nil { 1617 return nil 1618 } 1619 return append([]byte{}, x...) 1620 })(o.N), 1621 } 1622 } 1623 1624 type SealedData struct { 1625 V int `codec:"v" json:"v"` 1626 E []byte `codec:"e" json:"e"` 1627 N []byte `codec:"n" json:"n"` 1628 } 1629 1630 func (o SealedData) DeepCopy() SealedData { 1631 return SealedData{ 1632 V: o.V, 1633 E: (func(x []byte) []byte { 1634 if x == nil { 1635 return nil 1636 } 1637 return append([]byte{}, x...) 1638 })(o.E), 1639 N: (func(x []byte) []byte { 1640 if x == nil { 1641 return nil 1642 } 1643 return append([]byte{}, x...) 1644 })(o.N), 1645 } 1646 } 1647 1648 type SignatureInfo struct { 1649 V int `codec:"v" json:"v"` 1650 S []byte `codec:"s" json:"s"` 1651 K []byte `codec:"k" json:"k"` 1652 } 1653 1654 func (o SignatureInfo) DeepCopy() SignatureInfo { 1655 return SignatureInfo{ 1656 V: o.V, 1657 S: (func(x []byte) []byte { 1658 if x == nil { 1659 return nil 1660 } 1661 return append([]byte{}, x...) 1662 })(o.S), 1663 K: (func(x []byte) []byte { 1664 if x == nil { 1665 return nil 1666 } 1667 return append([]byte{}, x...) 1668 })(o.K), 1669 } 1670 } 1671 1672 type MerkleRoot struct { 1673 Seqno int64 `codec:"seqno" json:"seqno"` 1674 Hash []byte `codec:"hash" json:"hash"` 1675 } 1676 1677 func (o MerkleRoot) DeepCopy() MerkleRoot { 1678 return MerkleRoot{ 1679 Seqno: o.Seqno, 1680 Hash: (func(x []byte) []byte { 1681 if x == nil { 1682 return nil 1683 } 1684 return append([]byte{}, x...) 1685 })(o.Hash), 1686 } 1687 } 1688 1689 type InboxResType int 1690 1691 const ( 1692 InboxResType_VERSIONHIT InboxResType = 0 1693 InboxResType_FULL InboxResType = 1 1694 ) 1695 1696 func (o InboxResType) DeepCopy() InboxResType { return o } 1697 1698 var InboxResTypeMap = map[string]InboxResType{ 1699 "VERSIONHIT": 0, 1700 "FULL": 1, 1701 } 1702 1703 var InboxResTypeRevMap = map[InboxResType]string{ 1704 0: "VERSIONHIT", 1705 1: "FULL", 1706 } 1707 1708 func (e InboxResType) String() string { 1709 if v, ok := InboxResTypeRevMap[e]; ok { 1710 return v 1711 } 1712 return fmt.Sprintf("%v", int(e)) 1713 } 1714 1715 type InboxViewFull struct { 1716 Vers InboxVers `codec:"vers" json:"vers"` 1717 Conversations []Conversation `codec:"conversations" json:"conversations"` 1718 Pagination *Pagination `codec:"pagination,omitempty" json:"pagination,omitempty"` 1719 } 1720 1721 func (o InboxViewFull) DeepCopy() InboxViewFull { 1722 return InboxViewFull{ 1723 Vers: o.Vers.DeepCopy(), 1724 Conversations: (func(x []Conversation) []Conversation { 1725 if x == nil { 1726 return nil 1727 } 1728 ret := make([]Conversation, len(x)) 1729 for i, v := range x { 1730 vCopy := v.DeepCopy() 1731 ret[i] = vCopy 1732 } 1733 return ret 1734 })(o.Conversations), 1735 Pagination: (func(x *Pagination) *Pagination { 1736 if x == nil { 1737 return nil 1738 } 1739 tmp := (*x).DeepCopy() 1740 return &tmp 1741 })(o.Pagination), 1742 } 1743 } 1744 1745 type InboxView struct { 1746 Rtype__ InboxResType `codec:"rtype" json:"rtype"` 1747 Full__ *InboxViewFull `codec:"full,omitempty" json:"full,omitempty"` 1748 } 1749 1750 func (o *InboxView) Rtype() (ret InboxResType, err error) { 1751 switch o.Rtype__ { 1752 case InboxResType_FULL: 1753 if o.Full__ == nil { 1754 err = errors.New("unexpected nil value for Full__") 1755 return ret, err 1756 } 1757 } 1758 return o.Rtype__, nil 1759 } 1760 1761 func (o InboxView) Full() (res InboxViewFull) { 1762 if o.Rtype__ != InboxResType_FULL { 1763 panic("wrong case accessed") 1764 } 1765 if o.Full__ == nil { 1766 return 1767 } 1768 return *o.Full__ 1769 } 1770 1771 func NewInboxViewWithVersionhit() InboxView { 1772 return InboxView{ 1773 Rtype__: InboxResType_VERSIONHIT, 1774 } 1775 } 1776 1777 func NewInboxViewWithFull(v InboxViewFull) InboxView { 1778 return InboxView{ 1779 Rtype__: InboxResType_FULL, 1780 Full__: &v, 1781 } 1782 } 1783 1784 func (o InboxView) DeepCopy() InboxView { 1785 return InboxView{ 1786 Rtype__: o.Rtype__.DeepCopy(), 1787 Full__: (func(x *InboxViewFull) *InboxViewFull { 1788 if x == nil { 1789 return nil 1790 } 1791 tmp := (*x).DeepCopy() 1792 return &tmp 1793 })(o.Full__), 1794 } 1795 } 1796 1797 type RetentionPolicyType int 1798 1799 const ( 1800 RetentionPolicyType_NONE RetentionPolicyType = 0 1801 RetentionPolicyType_RETAIN RetentionPolicyType = 1 1802 RetentionPolicyType_EXPIRE RetentionPolicyType = 2 1803 RetentionPolicyType_INHERIT RetentionPolicyType = 3 1804 RetentionPolicyType_EPHEMERAL RetentionPolicyType = 4 1805 ) 1806 1807 func (o RetentionPolicyType) DeepCopy() RetentionPolicyType { return o } 1808 1809 var RetentionPolicyTypeMap = map[string]RetentionPolicyType{ 1810 "NONE": 0, 1811 "RETAIN": 1, 1812 "EXPIRE": 2, 1813 "INHERIT": 3, 1814 "EPHEMERAL": 4, 1815 } 1816 1817 var RetentionPolicyTypeRevMap = map[RetentionPolicyType]string{ 1818 0: "NONE", 1819 1: "RETAIN", 1820 2: "EXPIRE", 1821 3: "INHERIT", 1822 4: "EPHEMERAL", 1823 } 1824 1825 func (e RetentionPolicyType) String() string { 1826 if v, ok := RetentionPolicyTypeRevMap[e]; ok { 1827 return v 1828 } 1829 return fmt.Sprintf("%v", int(e)) 1830 } 1831 1832 type RetentionPolicy struct { 1833 Typ__ RetentionPolicyType `codec:"typ" json:"typ"` 1834 Retain__ *RpRetain `codec:"retain,omitempty" json:"retain,omitempty"` 1835 Expire__ *RpExpire `codec:"expire,omitempty" json:"expire,omitempty"` 1836 Inherit__ *RpInherit `codec:"inherit,omitempty" json:"inherit,omitempty"` 1837 Ephemeral__ *RpEphemeral `codec:"ephemeral,omitempty" json:"ephemeral,omitempty"` 1838 } 1839 1840 func (o *RetentionPolicy) Typ() (ret RetentionPolicyType, err error) { 1841 switch o.Typ__ { 1842 case RetentionPolicyType_RETAIN: 1843 if o.Retain__ == nil { 1844 err = errors.New("unexpected nil value for Retain__") 1845 return ret, err 1846 } 1847 case RetentionPolicyType_EXPIRE: 1848 if o.Expire__ == nil { 1849 err = errors.New("unexpected nil value for Expire__") 1850 return ret, err 1851 } 1852 case RetentionPolicyType_INHERIT: 1853 if o.Inherit__ == nil { 1854 err = errors.New("unexpected nil value for Inherit__") 1855 return ret, err 1856 } 1857 case RetentionPolicyType_EPHEMERAL: 1858 if o.Ephemeral__ == nil { 1859 err = errors.New("unexpected nil value for Ephemeral__") 1860 return ret, err 1861 } 1862 } 1863 return o.Typ__, nil 1864 } 1865 1866 func (o RetentionPolicy) Retain() (res RpRetain) { 1867 if o.Typ__ != RetentionPolicyType_RETAIN { 1868 panic("wrong case accessed") 1869 } 1870 if o.Retain__ == nil { 1871 return 1872 } 1873 return *o.Retain__ 1874 } 1875 1876 func (o RetentionPolicy) Expire() (res RpExpire) { 1877 if o.Typ__ != RetentionPolicyType_EXPIRE { 1878 panic("wrong case accessed") 1879 } 1880 if o.Expire__ == nil { 1881 return 1882 } 1883 return *o.Expire__ 1884 } 1885 1886 func (o RetentionPolicy) Inherit() (res RpInherit) { 1887 if o.Typ__ != RetentionPolicyType_INHERIT { 1888 panic("wrong case accessed") 1889 } 1890 if o.Inherit__ == nil { 1891 return 1892 } 1893 return *o.Inherit__ 1894 } 1895 1896 func (o RetentionPolicy) Ephemeral() (res RpEphemeral) { 1897 if o.Typ__ != RetentionPolicyType_EPHEMERAL { 1898 panic("wrong case accessed") 1899 } 1900 if o.Ephemeral__ == nil { 1901 return 1902 } 1903 return *o.Ephemeral__ 1904 } 1905 1906 func NewRetentionPolicyWithRetain(v RpRetain) RetentionPolicy { 1907 return RetentionPolicy{ 1908 Typ__: RetentionPolicyType_RETAIN, 1909 Retain__: &v, 1910 } 1911 } 1912 1913 func NewRetentionPolicyWithExpire(v RpExpire) RetentionPolicy { 1914 return RetentionPolicy{ 1915 Typ__: RetentionPolicyType_EXPIRE, 1916 Expire__: &v, 1917 } 1918 } 1919 1920 func NewRetentionPolicyWithInherit(v RpInherit) RetentionPolicy { 1921 return RetentionPolicy{ 1922 Typ__: RetentionPolicyType_INHERIT, 1923 Inherit__: &v, 1924 } 1925 } 1926 1927 func NewRetentionPolicyWithEphemeral(v RpEphemeral) RetentionPolicy { 1928 return RetentionPolicy{ 1929 Typ__: RetentionPolicyType_EPHEMERAL, 1930 Ephemeral__: &v, 1931 } 1932 } 1933 1934 func (o RetentionPolicy) DeepCopy() RetentionPolicy { 1935 return RetentionPolicy{ 1936 Typ__: o.Typ__.DeepCopy(), 1937 Retain__: (func(x *RpRetain) *RpRetain { 1938 if x == nil { 1939 return nil 1940 } 1941 tmp := (*x).DeepCopy() 1942 return &tmp 1943 })(o.Retain__), 1944 Expire__: (func(x *RpExpire) *RpExpire { 1945 if x == nil { 1946 return nil 1947 } 1948 tmp := (*x).DeepCopy() 1949 return &tmp 1950 })(o.Expire__), 1951 Inherit__: (func(x *RpInherit) *RpInherit { 1952 if x == nil { 1953 return nil 1954 } 1955 tmp := (*x).DeepCopy() 1956 return &tmp 1957 })(o.Inherit__), 1958 Ephemeral__: (func(x *RpEphemeral) *RpEphemeral { 1959 if x == nil { 1960 return nil 1961 } 1962 tmp := (*x).DeepCopy() 1963 return &tmp 1964 })(o.Ephemeral__), 1965 } 1966 } 1967 1968 type RpRetain struct { 1969 } 1970 1971 func (o RpRetain) DeepCopy() RpRetain { 1972 return RpRetain{} 1973 } 1974 1975 type RpExpire struct { 1976 Age gregor1.DurationSec `codec:"age" json:"age"` 1977 } 1978 1979 func (o RpExpire) DeepCopy() RpExpire { 1980 return RpExpire{ 1981 Age: o.Age.DeepCopy(), 1982 } 1983 } 1984 1985 type RpInherit struct { 1986 } 1987 1988 func (o RpInherit) DeepCopy() RpInherit { 1989 return RpInherit{} 1990 } 1991 1992 type RpEphemeral struct { 1993 Age gregor1.DurationSec `codec:"age" json:"age"` 1994 } 1995 1996 func (o RpEphemeral) DeepCopy() RpEphemeral { 1997 return RpEphemeral{ 1998 Age: o.Age.DeepCopy(), 1999 } 2000 } 2001 2002 type GetThreadReason int 2003 2004 const ( 2005 GetThreadReason_GENERAL GetThreadReason = 0 2006 GetThreadReason_PUSH GetThreadReason = 1 2007 GetThreadReason_FOREGROUND GetThreadReason = 2 2008 GetThreadReason_BACKGROUNDCONVLOAD GetThreadReason = 3 2009 GetThreadReason_FIXRETRY GetThreadReason = 4 2010 GetThreadReason_PREPARE GetThreadReason = 5 2011 GetThreadReason_SEARCHER GetThreadReason = 6 2012 GetThreadReason_INDEXED_SEARCH GetThreadReason = 7 2013 GetThreadReason_KBFSFILEACTIVITY GetThreadReason = 8 2014 GetThreadReason_COINFLIP GetThreadReason = 9 2015 GetThreadReason_BOTCOMMANDS GetThreadReason = 10 2016 GetThreadReason_EMOJISOURCE GetThreadReason = 11 2017 GetThreadReason_FORWARDMSG GetThreadReason = 12 2018 GetThreadReason_LOCALIZE GetThreadReason = 13 2019 GetThreadReason_ARCHIVE GetThreadReason = 14 2020 ) 2021 2022 func (o GetThreadReason) DeepCopy() GetThreadReason { return o } 2023 2024 var GetThreadReasonMap = map[string]GetThreadReason{ 2025 "GENERAL": 0, 2026 "PUSH": 1, 2027 "FOREGROUND": 2, 2028 "BACKGROUNDCONVLOAD": 3, 2029 "FIXRETRY": 4, 2030 "PREPARE": 5, 2031 "SEARCHER": 6, 2032 "INDEXED_SEARCH": 7, 2033 "KBFSFILEACTIVITY": 8, 2034 "COINFLIP": 9, 2035 "BOTCOMMANDS": 10, 2036 "EMOJISOURCE": 11, 2037 "FORWARDMSG": 12, 2038 "LOCALIZE": 13, 2039 "ARCHIVE": 14, 2040 } 2041 2042 var GetThreadReasonRevMap = map[GetThreadReason]string{ 2043 0: "GENERAL", 2044 1: "PUSH", 2045 2: "FOREGROUND", 2046 3: "BACKGROUNDCONVLOAD", 2047 4: "FIXRETRY", 2048 5: "PREPARE", 2049 6: "SEARCHER", 2050 7: "INDEXED_SEARCH", 2051 8: "KBFSFILEACTIVITY", 2052 9: "COINFLIP", 2053 10: "BOTCOMMANDS", 2054 11: "EMOJISOURCE", 2055 12: "FORWARDMSG", 2056 13: "LOCALIZE", 2057 14: "ARCHIVE", 2058 } 2059 2060 func (e GetThreadReason) String() string { 2061 if v, ok := GetThreadReasonRevMap[e]; ok { 2062 return v 2063 } 2064 return fmt.Sprintf("%v", int(e)) 2065 } 2066 2067 type ReIndexingMode int 2068 2069 const ( 2070 ReIndexingMode_NONE ReIndexingMode = 0 2071 ReIndexingMode_PRESEARCH_SYNC ReIndexingMode = 1 2072 ReIndexingMode_POSTSEARCH_SYNC ReIndexingMode = 2 2073 ) 2074 2075 func (o ReIndexingMode) DeepCopy() ReIndexingMode { return o } 2076 2077 var ReIndexingModeMap = map[string]ReIndexingMode{ 2078 "NONE": 0, 2079 "PRESEARCH_SYNC": 1, 2080 "POSTSEARCH_SYNC": 2, 2081 } 2082 2083 var ReIndexingModeRevMap = map[ReIndexingMode]string{ 2084 0: "NONE", 2085 1: "PRESEARCH_SYNC", 2086 2: "POSTSEARCH_SYNC", 2087 } 2088 2089 func (e ReIndexingMode) String() string { 2090 if v, ok := ReIndexingModeRevMap[e]; ok { 2091 return v 2092 } 2093 return fmt.Sprintf("%v", int(e)) 2094 } 2095 2096 type SearchOpts struct { 2097 IsRegex bool `codec:"isRegex" json:"isRegex"` 2098 SentBy string `codec:"sentBy" json:"sentBy"` 2099 SentTo string `codec:"sentTo" json:"sentTo"` 2100 MatchMentions bool `codec:"matchMentions" json:"matchMentions"` 2101 SentBefore gregor1.Time `codec:"sentBefore" json:"sentBefore"` 2102 SentAfter gregor1.Time `codec:"sentAfter" json:"sentAfter"` 2103 MaxHits int `codec:"maxHits" json:"maxHits"` 2104 MaxMessages int `codec:"maxMessages" json:"maxMessages"` 2105 BeforeContext int `codec:"beforeContext" json:"beforeContext"` 2106 AfterContext int `codec:"afterContext" json:"afterContext"` 2107 InitialPagination *Pagination `codec:"initialPagination,omitempty" json:"initialPagination,omitempty"` 2108 ReindexMode ReIndexingMode `codec:"reindexMode" json:"reindexMode"` 2109 MaxConvsSearched int `codec:"maxConvsSearched" json:"maxConvsSearched"` 2110 MaxConvsHit int `codec:"maxConvsHit" json:"maxConvsHit"` 2111 ConvID *ConversationID `codec:"convID,omitempty" json:"convID,omitempty"` 2112 MaxNameConvs int `codec:"maxNameConvs" json:"maxNameConvs"` 2113 MaxTeams int `codec:"maxTeams" json:"maxTeams"` 2114 MaxBots int `codec:"maxBots" json:"maxBots"` 2115 SkipBotCache bool `codec:"skipBotCache" json:"skipBotCache"` 2116 } 2117 2118 func (o SearchOpts) DeepCopy() SearchOpts { 2119 return SearchOpts{ 2120 IsRegex: o.IsRegex, 2121 SentBy: o.SentBy, 2122 SentTo: o.SentTo, 2123 MatchMentions: o.MatchMentions, 2124 SentBefore: o.SentBefore.DeepCopy(), 2125 SentAfter: o.SentAfter.DeepCopy(), 2126 MaxHits: o.MaxHits, 2127 MaxMessages: o.MaxMessages, 2128 BeforeContext: o.BeforeContext, 2129 AfterContext: o.AfterContext, 2130 InitialPagination: (func(x *Pagination) *Pagination { 2131 if x == nil { 2132 return nil 2133 } 2134 tmp := (*x).DeepCopy() 2135 return &tmp 2136 })(o.InitialPagination), 2137 ReindexMode: o.ReindexMode.DeepCopy(), 2138 MaxConvsSearched: o.MaxConvsSearched, 2139 MaxConvsHit: o.MaxConvsHit, 2140 ConvID: (func(x *ConversationID) *ConversationID { 2141 if x == nil { 2142 return nil 2143 } 2144 tmp := (*x).DeepCopy() 2145 return &tmp 2146 })(o.ConvID), 2147 MaxNameConvs: o.MaxNameConvs, 2148 MaxTeams: o.MaxTeams, 2149 MaxBots: o.MaxBots, 2150 SkipBotCache: o.SkipBotCache, 2151 } 2152 } 2153 2154 type EmptyStruct struct { 2155 } 2156 2157 func (o EmptyStruct) DeepCopy() EmptyStruct { 2158 return EmptyStruct{} 2159 } 2160 2161 type ChatSearchMatch struct { 2162 StartIndex int `codec:"startIndex" json:"startIndex"` 2163 EndIndex int `codec:"endIndex" json:"endIndex"` 2164 Match string `codec:"match" json:"match"` 2165 } 2166 2167 func (o ChatSearchMatch) DeepCopy() ChatSearchMatch { 2168 return ChatSearchMatch{ 2169 StartIndex: o.StartIndex, 2170 EndIndex: o.EndIndex, 2171 Match: o.Match, 2172 } 2173 } 2174 2175 type ChatSearchHit struct { 2176 BeforeMessages []UIMessage `codec:"beforeMessages" json:"beforeMessages"` 2177 HitMessage UIMessage `codec:"hitMessage" json:"hitMessage"` 2178 AfterMessages []UIMessage `codec:"afterMessages" json:"afterMessages"` 2179 Matches []ChatSearchMatch `codec:"matches" json:"matches"` 2180 } 2181 2182 func (o ChatSearchHit) DeepCopy() ChatSearchHit { 2183 return ChatSearchHit{ 2184 BeforeMessages: (func(x []UIMessage) []UIMessage { 2185 if x == nil { 2186 return nil 2187 } 2188 ret := make([]UIMessage, len(x)) 2189 for i, v := range x { 2190 vCopy := v.DeepCopy() 2191 ret[i] = vCopy 2192 } 2193 return ret 2194 })(o.BeforeMessages), 2195 HitMessage: o.HitMessage.DeepCopy(), 2196 AfterMessages: (func(x []UIMessage) []UIMessage { 2197 if x == nil { 2198 return nil 2199 } 2200 ret := make([]UIMessage, len(x)) 2201 for i, v := range x { 2202 vCopy := v.DeepCopy() 2203 ret[i] = vCopy 2204 } 2205 return ret 2206 })(o.AfterMessages), 2207 Matches: (func(x []ChatSearchMatch) []ChatSearchMatch { 2208 if x == nil { 2209 return nil 2210 } 2211 ret := make([]ChatSearchMatch, len(x)) 2212 for i, v := range x { 2213 vCopy := v.DeepCopy() 2214 ret[i] = vCopy 2215 } 2216 return ret 2217 })(o.Matches), 2218 } 2219 } 2220 2221 type ChatSearchInboxHit struct { 2222 ConvID ConversationID `codec:"convID" json:"convID"` 2223 TeamType TeamType `codec:"teamType" json:"teamType"` 2224 ConvName string `codec:"convName" json:"convName"` 2225 Query string `codec:"query" json:"query"` 2226 Time gregor1.Time `codec:"time" json:"time"` 2227 Hits []ChatSearchHit `codec:"hits" json:"hits"` 2228 } 2229 2230 func (o ChatSearchInboxHit) DeepCopy() ChatSearchInboxHit { 2231 return ChatSearchInboxHit{ 2232 ConvID: o.ConvID.DeepCopy(), 2233 TeamType: o.TeamType.DeepCopy(), 2234 ConvName: o.ConvName, 2235 Query: o.Query, 2236 Time: o.Time.DeepCopy(), 2237 Hits: (func(x []ChatSearchHit) []ChatSearchHit { 2238 if x == nil { 2239 return nil 2240 } 2241 ret := make([]ChatSearchHit, len(x)) 2242 for i, v := range x { 2243 vCopy := v.DeepCopy() 2244 ret[i] = vCopy 2245 } 2246 return ret 2247 })(o.Hits), 2248 } 2249 } 2250 2251 type ChatSearchInboxResults struct { 2252 Hits []ChatSearchInboxHit `codec:"hits" json:"hits"` 2253 PercentIndexed int `codec:"percentIndexed" json:"percentIndexed"` 2254 } 2255 2256 func (o ChatSearchInboxResults) DeepCopy() ChatSearchInboxResults { 2257 return ChatSearchInboxResults{ 2258 Hits: (func(x []ChatSearchInboxHit) []ChatSearchInboxHit { 2259 if x == nil { 2260 return nil 2261 } 2262 ret := make([]ChatSearchInboxHit, len(x)) 2263 for i, v := range x { 2264 vCopy := v.DeepCopy() 2265 ret[i] = vCopy 2266 } 2267 return ret 2268 })(o.Hits), 2269 PercentIndexed: o.PercentIndexed, 2270 } 2271 } 2272 2273 type ChatSearchInboxDone struct { 2274 NumHits int `codec:"numHits" json:"numHits"` 2275 NumConvs int `codec:"numConvs" json:"numConvs"` 2276 PercentIndexed int `codec:"percentIndexed" json:"percentIndexed"` 2277 Delegated bool `codec:"delegated" json:"delegated"` 2278 } 2279 2280 func (o ChatSearchInboxDone) DeepCopy() ChatSearchInboxDone { 2281 return ChatSearchInboxDone{ 2282 NumHits: o.NumHits, 2283 NumConvs: o.NumConvs, 2284 PercentIndexed: o.PercentIndexed, 2285 Delegated: o.Delegated, 2286 } 2287 } 2288 2289 type ChatSearchIndexStatus struct { 2290 PercentIndexed int `codec:"percentIndexed" json:"percentIndexed"` 2291 } 2292 2293 func (o ChatSearchIndexStatus) DeepCopy() ChatSearchIndexStatus { 2294 return ChatSearchIndexStatus{ 2295 PercentIndexed: o.PercentIndexed, 2296 } 2297 } 2298 2299 type AssetMetadataImage struct { 2300 Width int `codec:"width" json:"width"` 2301 Height int `codec:"height" json:"height"` 2302 AudioAmps []float64 `codec:"audioAmps" json:"audioAmps"` 2303 } 2304 2305 func (o AssetMetadataImage) DeepCopy() AssetMetadataImage { 2306 return AssetMetadataImage{ 2307 Width: o.Width, 2308 Height: o.Height, 2309 AudioAmps: (func(x []float64) []float64 { 2310 if x == nil { 2311 return nil 2312 } 2313 ret := make([]float64, len(x)) 2314 for i, v := range x { 2315 vCopy := v 2316 ret[i] = vCopy 2317 } 2318 return ret 2319 })(o.AudioAmps), 2320 } 2321 } 2322 2323 type AssetMetadataVideo struct { 2324 Width int `codec:"width" json:"width"` 2325 Height int `codec:"height" json:"height"` 2326 DurationMs int `codec:"durationMs" json:"durationMs"` 2327 IsAudio bool `codec:"isAudio" json:"isAudio"` 2328 } 2329 2330 func (o AssetMetadataVideo) DeepCopy() AssetMetadataVideo { 2331 return AssetMetadataVideo{ 2332 Width: o.Width, 2333 Height: o.Height, 2334 DurationMs: o.DurationMs, 2335 IsAudio: o.IsAudio, 2336 } 2337 } 2338 2339 type AssetMetadataType int 2340 2341 const ( 2342 AssetMetadataType_NONE AssetMetadataType = 0 2343 AssetMetadataType_IMAGE AssetMetadataType = 1 2344 AssetMetadataType_VIDEO AssetMetadataType = 2 2345 ) 2346 2347 func (o AssetMetadataType) DeepCopy() AssetMetadataType { return o } 2348 2349 var AssetMetadataTypeMap = map[string]AssetMetadataType{ 2350 "NONE": 0, 2351 "IMAGE": 1, 2352 "VIDEO": 2, 2353 } 2354 2355 var AssetMetadataTypeRevMap = map[AssetMetadataType]string{ 2356 0: "NONE", 2357 1: "IMAGE", 2358 2: "VIDEO", 2359 } 2360 2361 type AssetMetadata struct { 2362 AssetType__ AssetMetadataType `codec:"assetType" json:"assetType"` 2363 Image__ *AssetMetadataImage `codec:"image,omitempty" json:"image,omitempty"` 2364 Video__ *AssetMetadataVideo `codec:"video,omitempty" json:"video,omitempty"` 2365 } 2366 2367 func (o *AssetMetadata) AssetType() (ret AssetMetadataType, err error) { 2368 switch o.AssetType__ { 2369 case AssetMetadataType_IMAGE: 2370 if o.Image__ == nil { 2371 err = errors.New("unexpected nil value for Image__") 2372 return ret, err 2373 } 2374 case AssetMetadataType_VIDEO: 2375 if o.Video__ == nil { 2376 err = errors.New("unexpected nil value for Video__") 2377 return ret, err 2378 } 2379 } 2380 return o.AssetType__, nil 2381 } 2382 2383 func (o AssetMetadata) Image() (res AssetMetadataImage) { 2384 if o.AssetType__ != AssetMetadataType_IMAGE { 2385 panic("wrong case accessed") 2386 } 2387 if o.Image__ == nil { 2388 return 2389 } 2390 return *o.Image__ 2391 } 2392 2393 func (o AssetMetadata) Video() (res AssetMetadataVideo) { 2394 if o.AssetType__ != AssetMetadataType_VIDEO { 2395 panic("wrong case accessed") 2396 } 2397 if o.Video__ == nil { 2398 return 2399 } 2400 return *o.Video__ 2401 } 2402 2403 func NewAssetMetadataWithImage(v AssetMetadataImage) AssetMetadata { 2404 return AssetMetadata{ 2405 AssetType__: AssetMetadataType_IMAGE, 2406 Image__: &v, 2407 } 2408 } 2409 2410 func NewAssetMetadataWithVideo(v AssetMetadataVideo) AssetMetadata { 2411 return AssetMetadata{ 2412 AssetType__: AssetMetadataType_VIDEO, 2413 Video__: &v, 2414 } 2415 } 2416 2417 func (o AssetMetadata) DeepCopy() AssetMetadata { 2418 return AssetMetadata{ 2419 AssetType__: o.AssetType__.DeepCopy(), 2420 Image__: (func(x *AssetMetadataImage) *AssetMetadataImage { 2421 if x == nil { 2422 return nil 2423 } 2424 tmp := (*x).DeepCopy() 2425 return &tmp 2426 })(o.Image__), 2427 Video__: (func(x *AssetMetadataVideo) *AssetMetadataVideo { 2428 if x == nil { 2429 return nil 2430 } 2431 tmp := (*x).DeepCopy() 2432 return &tmp 2433 })(o.Video__), 2434 } 2435 } 2436 2437 type AssetTag int 2438 2439 const ( 2440 AssetTag_PRIMARY AssetTag = 0 2441 ) 2442 2443 func (o AssetTag) DeepCopy() AssetTag { return o } 2444 2445 var AssetTagMap = map[string]AssetTag{ 2446 "PRIMARY": 0, 2447 } 2448 2449 var AssetTagRevMap = map[AssetTag]string{ 2450 0: "PRIMARY", 2451 } 2452 2453 type Asset struct { 2454 Filename string `codec:"filename" json:"filename"` 2455 Region string `codec:"region" json:"region"` 2456 Endpoint string `codec:"endpoint" json:"endpoint"` 2457 Bucket string `codec:"bucket" json:"bucket"` 2458 Path string `codec:"path" json:"path"` 2459 Size int64 `codec:"size" json:"size"` 2460 MimeType string `codec:"mimeType" json:"mimeType"` 2461 EncHash Hash `codec:"encHash" json:"encHash"` 2462 PtHash Hash `codec:"ptHash" json:"ptHash"` 2463 Key []byte `codec:"key" json:"key"` 2464 VerifyKey []byte `codec:"verifyKey" json:"verifyKey"` 2465 Title string `codec:"title" json:"title"` 2466 Nonce []byte `codec:"nonce" json:"nonce"` 2467 Metadata AssetMetadata `codec:"metadata" json:"metadata"` 2468 Tag AssetTag `codec:"tag" json:"tag"` 2469 } 2470 2471 func (o Asset) DeepCopy() Asset { 2472 return Asset{ 2473 Filename: o.Filename, 2474 Region: o.Region, 2475 Endpoint: o.Endpoint, 2476 Bucket: o.Bucket, 2477 Path: o.Path, 2478 Size: o.Size, 2479 MimeType: o.MimeType, 2480 EncHash: o.EncHash.DeepCopy(), 2481 PtHash: o.PtHash.DeepCopy(), 2482 Key: (func(x []byte) []byte { 2483 if x == nil { 2484 return nil 2485 } 2486 return append([]byte{}, x...) 2487 })(o.Key), 2488 VerifyKey: (func(x []byte) []byte { 2489 if x == nil { 2490 return nil 2491 } 2492 return append([]byte{}, x...) 2493 })(o.VerifyKey), 2494 Title: o.Title, 2495 Nonce: (func(x []byte) []byte { 2496 if x == nil { 2497 return nil 2498 } 2499 return append([]byte{}, x...) 2500 })(o.Nonce), 2501 Metadata: o.Metadata.DeepCopy(), 2502 Tag: o.Tag.DeepCopy(), 2503 } 2504 } 2505 2506 type BotCommandsAdvertisementTyp int 2507 2508 const ( 2509 BotCommandsAdvertisementTyp_PUBLIC BotCommandsAdvertisementTyp = 0 2510 BotCommandsAdvertisementTyp_TLFID_MEMBERS BotCommandsAdvertisementTyp = 1 2511 BotCommandsAdvertisementTyp_TLFID_CONVS BotCommandsAdvertisementTyp = 2 2512 BotCommandsAdvertisementTyp_CONV BotCommandsAdvertisementTyp = 3 2513 ) 2514 2515 func (o BotCommandsAdvertisementTyp) DeepCopy() BotCommandsAdvertisementTyp { return o } 2516 2517 var BotCommandsAdvertisementTypMap = map[string]BotCommandsAdvertisementTyp{ 2518 "PUBLIC": 0, 2519 "TLFID_MEMBERS": 1, 2520 "TLFID_CONVS": 2, 2521 "CONV": 3, 2522 } 2523 2524 var BotCommandsAdvertisementTypRevMap = map[BotCommandsAdvertisementTyp]string{ 2525 0: "PUBLIC", 2526 1: "TLFID_MEMBERS", 2527 2: "TLFID_CONVS", 2528 3: "CONV", 2529 } 2530 2531 func (e BotCommandsAdvertisementTyp) String() string { 2532 if v, ok := BotCommandsAdvertisementTypRevMap[e]; ok { 2533 return v 2534 } 2535 return fmt.Sprintf("%v", int(e)) 2536 } 2537 2538 type TeamMember struct { 2539 Uid gregor1.UID `codec:"uid" json:"uid"` 2540 Role keybase1.TeamRole `codec:"role" json:"role"` 2541 Status keybase1.TeamMemberStatus `codec:"status" json:"status"` 2542 } 2543 2544 func (o TeamMember) DeepCopy() TeamMember { 2545 return TeamMember{ 2546 Uid: o.Uid.DeepCopy(), 2547 Role: o.Role.DeepCopy(), 2548 Status: o.Status.DeepCopy(), 2549 } 2550 } 2551 2552 type LastActiveStatus int 2553 2554 const ( 2555 LastActiveStatus_NONE LastActiveStatus = 0 2556 LastActiveStatus_ACTIVE LastActiveStatus = 1 2557 LastActiveStatus_RECENTLY_ACTIVE LastActiveStatus = 2 2558 ) 2559 2560 func (o LastActiveStatus) DeepCopy() LastActiveStatus { return o } 2561 2562 var LastActiveStatusMap = map[string]LastActiveStatus{ 2563 "NONE": 0, 2564 "ACTIVE": 1, 2565 "RECENTLY_ACTIVE": 2, 2566 } 2567 2568 var LastActiveStatusRevMap = map[LastActiveStatus]string{ 2569 0: "NONE", 2570 1: "ACTIVE", 2571 2: "RECENTLY_ACTIVE", 2572 } 2573 2574 func (e LastActiveStatus) String() string { 2575 if v, ok := LastActiveStatusRevMap[e]; ok { 2576 return v 2577 } 2578 return fmt.Sprintf("%v", int(e)) 2579 } 2580 2581 type ChatMemberDetails struct { 2582 Uid keybase1.UID `codec:"uid" json:"uid"` 2583 Username string `codec:"username" json:"username"` 2584 FullName keybase1.FullName `codec:"fullName" json:"fullName"` 2585 } 2586 2587 func (o ChatMemberDetails) DeepCopy() ChatMemberDetails { 2588 return ChatMemberDetails{ 2589 Uid: o.Uid.DeepCopy(), 2590 Username: o.Username, 2591 FullName: o.FullName.DeepCopy(), 2592 } 2593 } 2594 2595 type ChatMembersDetails struct { 2596 Owners []ChatMemberDetails `codec:"owners" json:"owners"` 2597 Admins []ChatMemberDetails `codec:"admins" json:"admins"` 2598 Writers []ChatMemberDetails `codec:"writers" json:"writers"` 2599 Readers []ChatMemberDetails `codec:"readers" json:"readers"` 2600 Bots []ChatMemberDetails `codec:"bots" json:"bots"` 2601 RestrictedBots []ChatMemberDetails `codec:"restrictedBots" json:"restrictedBots"` 2602 } 2603 2604 func (o ChatMembersDetails) DeepCopy() ChatMembersDetails { 2605 return ChatMembersDetails{ 2606 Owners: (func(x []ChatMemberDetails) []ChatMemberDetails { 2607 if x == nil { 2608 return nil 2609 } 2610 ret := make([]ChatMemberDetails, len(x)) 2611 for i, v := range x { 2612 vCopy := v.DeepCopy() 2613 ret[i] = vCopy 2614 } 2615 return ret 2616 })(o.Owners), 2617 Admins: (func(x []ChatMemberDetails) []ChatMemberDetails { 2618 if x == nil { 2619 return nil 2620 } 2621 ret := make([]ChatMemberDetails, len(x)) 2622 for i, v := range x { 2623 vCopy := v.DeepCopy() 2624 ret[i] = vCopy 2625 } 2626 return ret 2627 })(o.Admins), 2628 Writers: (func(x []ChatMemberDetails) []ChatMemberDetails { 2629 if x == nil { 2630 return nil 2631 } 2632 ret := make([]ChatMemberDetails, len(x)) 2633 for i, v := range x { 2634 vCopy := v.DeepCopy() 2635 ret[i] = vCopy 2636 } 2637 return ret 2638 })(o.Writers), 2639 Readers: (func(x []ChatMemberDetails) []ChatMemberDetails { 2640 if x == nil { 2641 return nil 2642 } 2643 ret := make([]ChatMemberDetails, len(x)) 2644 for i, v := range x { 2645 vCopy := v.DeepCopy() 2646 ret[i] = vCopy 2647 } 2648 return ret 2649 })(o.Readers), 2650 Bots: (func(x []ChatMemberDetails) []ChatMemberDetails { 2651 if x == nil { 2652 return nil 2653 } 2654 ret := make([]ChatMemberDetails, len(x)) 2655 for i, v := range x { 2656 vCopy := v.DeepCopy() 2657 ret[i] = vCopy 2658 } 2659 return ret 2660 })(o.Bots), 2661 RestrictedBots: (func(x []ChatMemberDetails) []ChatMemberDetails { 2662 if x == nil { 2663 return nil 2664 } 2665 ret := make([]ChatMemberDetails, len(x)) 2666 for i, v := range x { 2667 vCopy := v.DeepCopy() 2668 ret[i] = vCopy 2669 } 2670 return ret 2671 })(o.RestrictedBots), 2672 } 2673 } 2674 2675 type CommonInterface interface { 2676 } 2677 2678 func CommonProtocol(i CommonInterface) rpc.Protocol { 2679 return rpc.Protocol{ 2680 Name: "chat.1.common", 2681 Methods: map[string]rpc.ServeHandlerDescription{}, 2682 } 2683 } 2684 2685 type CommonClient struct { 2686 Cli rpc.GenericClient 2687 }