Files
mautrix-telegram/pkg/gotd/tdapi/tl_push_message_content_gen.go
T
2025-06-27 20:03:37 -07:00

8450 lines
240 KiB
Go

// Code generated by gotdgen, DO NOT EDIT.
package tdapi
import (
"context"
"errors"
"fmt"
"sort"
"strings"
"go.uber.org/multierr"
"go.mau.fi/mautrix-telegram/pkg/gotd/bin"
"go.mau.fi/mautrix-telegram/pkg/gotd/tdjson"
"go.mau.fi/mautrix-telegram/pkg/gotd/tdp"
"go.mau.fi/mautrix-telegram/pkg/gotd/tgerr"
)
// No-op definition for keeping imports.
var (
_ = bin.Buffer{}
_ = context.Background()
_ = fmt.Stringer(nil)
_ = strings.Builder{}
_ = errors.Is
_ = multierr.AppendInto
_ = sort.Ints
_ = tdp.Format
_ = tgerr.Error{}
_ = tdjson.Encoder{}
)
// PushMessageContentHidden represents TL type `pushMessageContentHidden#ed1bb85c`.
type PushMessageContentHidden struct {
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentHiddenTypeID is TL type id of PushMessageContentHidden.
const PushMessageContentHiddenTypeID = 0xed1bb85c
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentHidden) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentHidden.
var (
_ bin.Encoder = &PushMessageContentHidden{}
_ bin.Decoder = &PushMessageContentHidden{}
_ bin.BareEncoder = &PushMessageContentHidden{}
_ bin.BareDecoder = &PushMessageContentHidden{}
_ PushMessageContentClass = &PushMessageContentHidden{}
)
func (p *PushMessageContentHidden) Zero() bool {
if p == nil {
return true
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentHidden) String() string {
if p == nil {
return "PushMessageContentHidden(nil)"
}
type Alias PushMessageContentHidden
return fmt.Sprintf("PushMessageContentHidden%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentHidden) TypeID() uint32 {
return PushMessageContentHiddenTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentHidden) TypeName() string {
return "pushMessageContentHidden"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentHidden) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentHidden",
ID: PushMessageContentHiddenTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentHidden) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentHidden#ed1bb85c as nil")
}
b.PutID(PushMessageContentHiddenTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentHidden) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentHidden#ed1bb85c as nil")
}
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentHidden) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentHidden#ed1bb85c to nil")
}
if err := b.ConsumeID(PushMessageContentHiddenTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentHidden#ed1bb85c: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentHidden) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentHidden#ed1bb85c to nil")
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentHidden#ed1bb85c: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentHidden) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentHidden#ed1bb85c as nil")
}
b.ObjStart()
b.PutID("pushMessageContentHidden")
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentHidden) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentHidden#ed1bb85c to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentHidden"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentHidden#ed1bb85c: %w", err)
}
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentHidden#ed1bb85c: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentHidden) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentAnimation represents TL type `pushMessageContentAnimation#3da4dfe4`.
type PushMessageContentAnimation struct {
// Message content; may be null
Animation Animation
// Animation caption
Caption string
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentAnimationTypeID is TL type id of PushMessageContentAnimation.
const PushMessageContentAnimationTypeID = 0x3da4dfe4
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentAnimation) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentAnimation.
var (
_ bin.Encoder = &PushMessageContentAnimation{}
_ bin.Decoder = &PushMessageContentAnimation{}
_ bin.BareEncoder = &PushMessageContentAnimation{}
_ bin.BareDecoder = &PushMessageContentAnimation{}
_ PushMessageContentClass = &PushMessageContentAnimation{}
)
func (p *PushMessageContentAnimation) Zero() bool {
if p == nil {
return true
}
if !(p.Animation.Zero()) {
return false
}
if !(p.Caption == "") {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentAnimation) String() string {
if p == nil {
return "PushMessageContentAnimation(nil)"
}
type Alias PushMessageContentAnimation
return fmt.Sprintf("PushMessageContentAnimation%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentAnimation) TypeID() uint32 {
return PushMessageContentAnimationTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentAnimation) TypeName() string {
return "pushMessageContentAnimation"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentAnimation) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentAnimation",
ID: PushMessageContentAnimationTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Animation",
SchemaName: "animation",
},
{
Name: "Caption",
SchemaName: "caption",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentAnimation) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentAnimation#3da4dfe4 as nil")
}
b.PutID(PushMessageContentAnimationTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentAnimation) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentAnimation#3da4dfe4 as nil")
}
if err := p.Animation.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentAnimation#3da4dfe4: field animation: %w", err)
}
b.PutString(p.Caption)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentAnimation) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentAnimation#3da4dfe4 to nil")
}
if err := b.ConsumeID(PushMessageContentAnimationTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentAnimation) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentAnimation#3da4dfe4 to nil")
}
{
if err := p.Animation.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: field animation: %w", err)
}
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: field caption: %w", err)
}
p.Caption = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentAnimation) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentAnimation#3da4dfe4 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentAnimation")
b.Comma()
b.FieldStart("animation")
if err := p.Animation.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentAnimation#3da4dfe4: field animation: %w", err)
}
b.Comma()
b.FieldStart("caption")
b.PutString(p.Caption)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentAnimation) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentAnimation#3da4dfe4 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentAnimation"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: %w", err)
}
case "animation":
if err := p.Animation.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: field animation: %w", err)
}
case "caption":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: field caption: %w", err)
}
p.Caption = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentAnimation#3da4dfe4: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetAnimation returns value of Animation field.
func (p *PushMessageContentAnimation) GetAnimation() (value Animation) {
if p == nil {
return
}
return p.Animation
}
// GetCaption returns value of Caption field.
func (p *PushMessageContentAnimation) GetCaption() (value string) {
if p == nil {
return
}
return p.Caption
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentAnimation) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentAudio represents TL type `pushMessageContentAudio#16be7872`.
type PushMessageContentAudio struct {
// Message content; may be null
Audio Audio
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentAudioTypeID is TL type id of PushMessageContentAudio.
const PushMessageContentAudioTypeID = 0x16be7872
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentAudio) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentAudio.
var (
_ bin.Encoder = &PushMessageContentAudio{}
_ bin.Decoder = &PushMessageContentAudio{}
_ bin.BareEncoder = &PushMessageContentAudio{}
_ bin.BareDecoder = &PushMessageContentAudio{}
_ PushMessageContentClass = &PushMessageContentAudio{}
)
func (p *PushMessageContentAudio) Zero() bool {
if p == nil {
return true
}
if !(p.Audio.Zero()) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentAudio) String() string {
if p == nil {
return "PushMessageContentAudio(nil)"
}
type Alias PushMessageContentAudio
return fmt.Sprintf("PushMessageContentAudio%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentAudio) TypeID() uint32 {
return PushMessageContentAudioTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentAudio) TypeName() string {
return "pushMessageContentAudio"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentAudio) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentAudio",
ID: PushMessageContentAudioTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Audio",
SchemaName: "audio",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentAudio) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentAudio#16be7872 as nil")
}
b.PutID(PushMessageContentAudioTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentAudio) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentAudio#16be7872 as nil")
}
if err := p.Audio.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentAudio#16be7872: field audio: %w", err)
}
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentAudio) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentAudio#16be7872 to nil")
}
if err := b.ConsumeID(PushMessageContentAudioTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAudio#16be7872: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentAudio) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentAudio#16be7872 to nil")
}
{
if err := p.Audio.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAudio#16be7872: field audio: %w", err)
}
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentAudio#16be7872: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentAudio) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentAudio#16be7872 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentAudio")
b.Comma()
b.FieldStart("audio")
if err := p.Audio.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentAudio#16be7872: field audio: %w", err)
}
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentAudio) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentAudio#16be7872 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentAudio"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAudio#16be7872: %w", err)
}
case "audio":
if err := p.Audio.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentAudio#16be7872: field audio: %w", err)
}
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentAudio#16be7872: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetAudio returns value of Audio field.
func (p *PushMessageContentAudio) GetAudio() (value Audio) {
if p == nil {
return
}
return p.Audio
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentAudio) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentContact represents TL type `pushMessageContentContact#ff458a54`.
type PushMessageContentContact struct {
// Contact's name
Name string
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentContactTypeID is TL type id of PushMessageContentContact.
const PushMessageContentContactTypeID = 0xff458a54
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentContact) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentContact.
var (
_ bin.Encoder = &PushMessageContentContact{}
_ bin.Decoder = &PushMessageContentContact{}
_ bin.BareEncoder = &PushMessageContentContact{}
_ bin.BareDecoder = &PushMessageContentContact{}
_ PushMessageContentClass = &PushMessageContentContact{}
)
func (p *PushMessageContentContact) Zero() bool {
if p == nil {
return true
}
if !(p.Name == "") {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentContact) String() string {
if p == nil {
return "PushMessageContentContact(nil)"
}
type Alias PushMessageContentContact
return fmt.Sprintf("PushMessageContentContact%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentContact) TypeID() uint32 {
return PushMessageContentContactTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentContact) TypeName() string {
return "pushMessageContentContact"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentContact) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentContact",
ID: PushMessageContentContactTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Name",
SchemaName: "name",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentContact) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentContact#ff458a54 as nil")
}
b.PutID(PushMessageContentContactTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentContact) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentContact#ff458a54 as nil")
}
b.PutString(p.Name)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentContact) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentContact#ff458a54 to nil")
}
if err := b.ConsumeID(PushMessageContentContactTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentContact#ff458a54: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentContact) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentContact#ff458a54 to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentContact#ff458a54: field name: %w", err)
}
p.Name = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentContact#ff458a54: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentContact) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentContact#ff458a54 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentContact")
b.Comma()
b.FieldStart("name")
b.PutString(p.Name)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentContact) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentContact#ff458a54 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentContact"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentContact#ff458a54: %w", err)
}
case "name":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentContact#ff458a54: field name: %w", err)
}
p.Name = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentContact#ff458a54: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetName returns value of Name field.
func (p *PushMessageContentContact) GetName() (value string) {
if p == nil {
return
}
return p.Name
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentContact) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentContactRegistered represents TL type `pushMessageContentContactRegistered#ede1e5a0`.
type PushMessageContentContactRegistered struct {
}
// PushMessageContentContactRegisteredTypeID is TL type id of PushMessageContentContactRegistered.
const PushMessageContentContactRegisteredTypeID = 0xede1e5a0
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentContactRegistered) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentContactRegistered.
var (
_ bin.Encoder = &PushMessageContentContactRegistered{}
_ bin.Decoder = &PushMessageContentContactRegistered{}
_ bin.BareEncoder = &PushMessageContentContactRegistered{}
_ bin.BareDecoder = &PushMessageContentContactRegistered{}
_ PushMessageContentClass = &PushMessageContentContactRegistered{}
)
func (p *PushMessageContentContactRegistered) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentContactRegistered) String() string {
if p == nil {
return "PushMessageContentContactRegistered(nil)"
}
type Alias PushMessageContentContactRegistered
return fmt.Sprintf("PushMessageContentContactRegistered%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentContactRegistered) TypeID() uint32 {
return PushMessageContentContactRegisteredTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentContactRegistered) TypeName() string {
return "pushMessageContentContactRegistered"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentContactRegistered) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentContactRegistered",
ID: PushMessageContentContactRegisteredTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentContactRegistered) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentContactRegistered#ede1e5a0 as nil")
}
b.PutID(PushMessageContentContactRegisteredTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentContactRegistered) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentContactRegistered#ede1e5a0 as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentContactRegistered) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentContactRegistered#ede1e5a0 to nil")
}
if err := b.ConsumeID(PushMessageContentContactRegisteredTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentContactRegistered#ede1e5a0: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentContactRegistered) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentContactRegistered#ede1e5a0 to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentContactRegistered) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentContactRegistered#ede1e5a0 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentContactRegistered")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentContactRegistered) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentContactRegistered#ede1e5a0 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentContactRegistered"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentContactRegistered#ede1e5a0: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentDocument represents TL type `pushMessageContentDocument#e4adae01`.
type PushMessageContentDocument struct {
// Message content; may be null
Document Document
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentDocumentTypeID is TL type id of PushMessageContentDocument.
const PushMessageContentDocumentTypeID = 0xe4adae01
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentDocument) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentDocument.
var (
_ bin.Encoder = &PushMessageContentDocument{}
_ bin.Decoder = &PushMessageContentDocument{}
_ bin.BareEncoder = &PushMessageContentDocument{}
_ bin.BareDecoder = &PushMessageContentDocument{}
_ PushMessageContentClass = &PushMessageContentDocument{}
)
func (p *PushMessageContentDocument) Zero() bool {
if p == nil {
return true
}
if !(p.Document.Zero()) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentDocument) String() string {
if p == nil {
return "PushMessageContentDocument(nil)"
}
type Alias PushMessageContentDocument
return fmt.Sprintf("PushMessageContentDocument%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentDocument) TypeID() uint32 {
return PushMessageContentDocumentTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentDocument) TypeName() string {
return "pushMessageContentDocument"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentDocument) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentDocument",
ID: PushMessageContentDocumentTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Document",
SchemaName: "document",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentDocument) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentDocument#e4adae01 as nil")
}
b.PutID(PushMessageContentDocumentTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentDocument) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentDocument#e4adae01 as nil")
}
if err := p.Document.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentDocument#e4adae01: field document: %w", err)
}
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentDocument) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentDocument#e4adae01 to nil")
}
if err := b.ConsumeID(PushMessageContentDocumentTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentDocument#e4adae01: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentDocument) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentDocument#e4adae01 to nil")
}
{
if err := p.Document.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentDocument#e4adae01: field document: %w", err)
}
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentDocument#e4adae01: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentDocument) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentDocument#e4adae01 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentDocument")
b.Comma()
b.FieldStart("document")
if err := p.Document.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentDocument#e4adae01: field document: %w", err)
}
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentDocument) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentDocument#e4adae01 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentDocument"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentDocument#e4adae01: %w", err)
}
case "document":
if err := p.Document.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentDocument#e4adae01: field document: %w", err)
}
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentDocument#e4adae01: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetDocument returns value of Document field.
func (p *PushMessageContentDocument) GetDocument() (value Document) {
if p == nil {
return
}
return p.Document
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentDocument) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentGame represents TL type `pushMessageContentGame#e14bb91b`.
type PushMessageContentGame struct {
// Game title, empty for pinned game message
Title string
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentGameTypeID is TL type id of PushMessageContentGame.
const PushMessageContentGameTypeID = 0xe14bb91b
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentGame) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentGame.
var (
_ bin.Encoder = &PushMessageContentGame{}
_ bin.Decoder = &PushMessageContentGame{}
_ bin.BareEncoder = &PushMessageContentGame{}
_ bin.BareDecoder = &PushMessageContentGame{}
_ PushMessageContentClass = &PushMessageContentGame{}
)
func (p *PushMessageContentGame) Zero() bool {
if p == nil {
return true
}
if !(p.Title == "") {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentGame) String() string {
if p == nil {
return "PushMessageContentGame(nil)"
}
type Alias PushMessageContentGame
return fmt.Sprintf("PushMessageContentGame%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentGame) TypeID() uint32 {
return PushMessageContentGameTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentGame) TypeName() string {
return "pushMessageContentGame"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentGame) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentGame",
ID: PushMessageContentGameTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Title",
SchemaName: "title",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentGame) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGame#e14bb91b as nil")
}
b.PutID(PushMessageContentGameTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentGame) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGame#e14bb91b as nil")
}
b.PutString(p.Title)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentGame) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGame#e14bb91b to nil")
}
if err := b.ConsumeID(PushMessageContentGameTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGame#e14bb91b: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentGame) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGame#e14bb91b to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGame#e14bb91b: field title: %w", err)
}
p.Title = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGame#e14bb91b: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentGame) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGame#e14bb91b as nil")
}
b.ObjStart()
b.PutID("pushMessageContentGame")
b.Comma()
b.FieldStart("title")
b.PutString(p.Title)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentGame) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGame#e14bb91b to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentGame"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGame#e14bb91b: %w", err)
}
case "title":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGame#e14bb91b: field title: %w", err)
}
p.Title = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGame#e14bb91b: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetTitle returns value of Title field.
func (p *PushMessageContentGame) GetTitle() (value string) {
if p == nil {
return
}
return p.Title
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentGame) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentGameScore represents TL type `pushMessageContentGameScore#35b8cd88`.
type PushMessageContentGameScore struct {
// Game title, empty for pinned message
Title string
// New score, 0 for pinned message
Score int32
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentGameScoreTypeID is TL type id of PushMessageContentGameScore.
const PushMessageContentGameScoreTypeID = 0x35b8cd88
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentGameScore) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentGameScore.
var (
_ bin.Encoder = &PushMessageContentGameScore{}
_ bin.Decoder = &PushMessageContentGameScore{}
_ bin.BareEncoder = &PushMessageContentGameScore{}
_ bin.BareDecoder = &PushMessageContentGameScore{}
_ PushMessageContentClass = &PushMessageContentGameScore{}
)
func (p *PushMessageContentGameScore) Zero() bool {
if p == nil {
return true
}
if !(p.Title == "") {
return false
}
if !(p.Score == 0) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentGameScore) String() string {
if p == nil {
return "PushMessageContentGameScore(nil)"
}
type Alias PushMessageContentGameScore
return fmt.Sprintf("PushMessageContentGameScore%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentGameScore) TypeID() uint32 {
return PushMessageContentGameScoreTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentGameScore) TypeName() string {
return "pushMessageContentGameScore"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentGameScore) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentGameScore",
ID: PushMessageContentGameScoreTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Title",
SchemaName: "title",
},
{
Name: "Score",
SchemaName: "score",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentGameScore) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGameScore#35b8cd88 as nil")
}
b.PutID(PushMessageContentGameScoreTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentGameScore) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGameScore#35b8cd88 as nil")
}
b.PutString(p.Title)
b.PutInt32(p.Score)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentGameScore) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGameScore#35b8cd88 to nil")
}
if err := b.ConsumeID(PushMessageContentGameScoreTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentGameScore) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGameScore#35b8cd88 to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: field title: %w", err)
}
p.Title = value
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: field score: %w", err)
}
p.Score = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentGameScore) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGameScore#35b8cd88 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentGameScore")
b.Comma()
b.FieldStart("title")
b.PutString(p.Title)
b.Comma()
b.FieldStart("score")
b.PutInt32(p.Score)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentGameScore) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGameScore#35b8cd88 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentGameScore"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: %w", err)
}
case "title":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: field title: %w", err)
}
p.Title = value
case "score":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: field score: %w", err)
}
p.Score = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGameScore#35b8cd88: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetTitle returns value of Title field.
func (p *PushMessageContentGameScore) GetTitle() (value string) {
if p == nil {
return
}
return p.Title
}
// GetScore returns value of Score field.
func (p *PushMessageContentGameScore) GetScore() (value int32) {
if p == nil {
return
}
return p.Score
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentGameScore) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentInvoice represents TL type `pushMessageContentInvoice#98c88bbc`.
type PushMessageContentInvoice struct {
// Product price
Price string
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentInvoiceTypeID is TL type id of PushMessageContentInvoice.
const PushMessageContentInvoiceTypeID = 0x98c88bbc
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentInvoice) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentInvoice.
var (
_ bin.Encoder = &PushMessageContentInvoice{}
_ bin.Decoder = &PushMessageContentInvoice{}
_ bin.BareEncoder = &PushMessageContentInvoice{}
_ bin.BareDecoder = &PushMessageContentInvoice{}
_ PushMessageContentClass = &PushMessageContentInvoice{}
)
func (p *PushMessageContentInvoice) Zero() bool {
if p == nil {
return true
}
if !(p.Price == "") {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentInvoice) String() string {
if p == nil {
return "PushMessageContentInvoice(nil)"
}
type Alias PushMessageContentInvoice
return fmt.Sprintf("PushMessageContentInvoice%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentInvoice) TypeID() uint32 {
return PushMessageContentInvoiceTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentInvoice) TypeName() string {
return "pushMessageContentInvoice"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentInvoice) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentInvoice",
ID: PushMessageContentInvoiceTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Price",
SchemaName: "price",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentInvoice) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentInvoice#98c88bbc as nil")
}
b.PutID(PushMessageContentInvoiceTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentInvoice) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentInvoice#98c88bbc as nil")
}
b.PutString(p.Price)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentInvoice) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentInvoice#98c88bbc to nil")
}
if err := b.ConsumeID(PushMessageContentInvoiceTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentInvoice#98c88bbc: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentInvoice) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentInvoice#98c88bbc to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentInvoice#98c88bbc: field price: %w", err)
}
p.Price = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentInvoice#98c88bbc: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentInvoice) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentInvoice#98c88bbc as nil")
}
b.ObjStart()
b.PutID("pushMessageContentInvoice")
b.Comma()
b.FieldStart("price")
b.PutString(p.Price)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentInvoice) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentInvoice#98c88bbc to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentInvoice"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentInvoice#98c88bbc: %w", err)
}
case "price":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentInvoice#98c88bbc: field price: %w", err)
}
p.Price = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentInvoice#98c88bbc: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetPrice returns value of Price field.
func (p *PushMessageContentInvoice) GetPrice() (value string) {
if p == nil {
return
}
return p.Price
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentInvoice) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentLocation represents TL type `pushMessageContentLocation#b33a97b3`.
type PushMessageContentLocation struct {
// True, if the location is live
IsLive bool
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentLocationTypeID is TL type id of PushMessageContentLocation.
const PushMessageContentLocationTypeID = 0xb33a97b3
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentLocation) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentLocation.
var (
_ bin.Encoder = &PushMessageContentLocation{}
_ bin.Decoder = &PushMessageContentLocation{}
_ bin.BareEncoder = &PushMessageContentLocation{}
_ bin.BareDecoder = &PushMessageContentLocation{}
_ PushMessageContentClass = &PushMessageContentLocation{}
)
func (p *PushMessageContentLocation) Zero() bool {
if p == nil {
return true
}
if !(p.IsLive == false) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentLocation) String() string {
if p == nil {
return "PushMessageContentLocation(nil)"
}
type Alias PushMessageContentLocation
return fmt.Sprintf("PushMessageContentLocation%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentLocation) TypeID() uint32 {
return PushMessageContentLocationTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentLocation) TypeName() string {
return "pushMessageContentLocation"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentLocation) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentLocation",
ID: PushMessageContentLocationTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "IsLive",
SchemaName: "is_live",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentLocation) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentLocation#b33a97b3 as nil")
}
b.PutID(PushMessageContentLocationTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentLocation) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentLocation#b33a97b3 as nil")
}
b.PutBool(p.IsLive)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentLocation) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentLocation#b33a97b3 to nil")
}
if err := b.ConsumeID(PushMessageContentLocationTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentLocation#b33a97b3: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentLocation) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentLocation#b33a97b3 to nil")
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentLocation#b33a97b3: field is_live: %w", err)
}
p.IsLive = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentLocation#b33a97b3: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentLocation) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentLocation#b33a97b3 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentLocation")
b.Comma()
b.FieldStart("is_live")
b.PutBool(p.IsLive)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentLocation) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentLocation#b33a97b3 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentLocation"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentLocation#b33a97b3: %w", err)
}
case "is_live":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentLocation#b33a97b3: field is_live: %w", err)
}
p.IsLive = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentLocation#b33a97b3: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetIsLive returns value of IsLive field.
func (p *PushMessageContentLocation) GetIsLive() (value bool) {
if p == nil {
return
}
return p.IsLive
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentLocation) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentPaidMedia represents TL type `pushMessageContentPaidMedia#b556e74a`.
type PushMessageContentPaidMedia struct {
// Number of Telegram Stars needed to buy access to the media in the message; 0 for
// pinned message
StarCount int64
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentPaidMediaTypeID is TL type id of PushMessageContentPaidMedia.
const PushMessageContentPaidMediaTypeID = 0xb556e74a
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentPaidMedia) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentPaidMedia.
var (
_ bin.Encoder = &PushMessageContentPaidMedia{}
_ bin.Decoder = &PushMessageContentPaidMedia{}
_ bin.BareEncoder = &PushMessageContentPaidMedia{}
_ bin.BareDecoder = &PushMessageContentPaidMedia{}
_ PushMessageContentClass = &PushMessageContentPaidMedia{}
)
func (p *PushMessageContentPaidMedia) Zero() bool {
if p == nil {
return true
}
if !(p.StarCount == 0) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentPaidMedia) String() string {
if p == nil {
return "PushMessageContentPaidMedia(nil)"
}
type Alias PushMessageContentPaidMedia
return fmt.Sprintf("PushMessageContentPaidMedia%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentPaidMedia) TypeID() uint32 {
return PushMessageContentPaidMediaTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentPaidMedia) TypeName() string {
return "pushMessageContentPaidMedia"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentPaidMedia) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentPaidMedia",
ID: PushMessageContentPaidMediaTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "StarCount",
SchemaName: "star_count",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentPaidMedia) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPaidMedia#b556e74a as nil")
}
b.PutID(PushMessageContentPaidMediaTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentPaidMedia) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPaidMedia#b556e74a as nil")
}
b.PutInt53(p.StarCount)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentPaidMedia) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPaidMedia#b556e74a to nil")
}
if err := b.ConsumeID(PushMessageContentPaidMediaTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPaidMedia#b556e74a: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentPaidMedia) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPaidMedia#b556e74a to nil")
}
{
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPaidMedia#b556e74a: field star_count: %w", err)
}
p.StarCount = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPaidMedia#b556e74a: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentPaidMedia) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPaidMedia#b556e74a as nil")
}
b.ObjStart()
b.PutID("pushMessageContentPaidMedia")
b.Comma()
b.FieldStart("star_count")
b.PutInt53(p.StarCount)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentPaidMedia) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPaidMedia#b556e74a to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentPaidMedia"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPaidMedia#b556e74a: %w", err)
}
case "star_count":
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPaidMedia#b556e74a: field star_count: %w", err)
}
p.StarCount = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPaidMedia#b556e74a: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetStarCount returns value of StarCount field.
func (p *PushMessageContentPaidMedia) GetStarCount() (value int64) {
if p == nil {
return
}
return p.StarCount
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentPaidMedia) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentPhoto represents TL type `pushMessageContentPhoto#861dc52`.
type PushMessageContentPhoto struct {
// Message content; may be null
Photo Photo
// Photo caption
Caption string
// True, if the photo is secret
IsSecret bool
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentPhotoTypeID is TL type id of PushMessageContentPhoto.
const PushMessageContentPhotoTypeID = 0x861dc52
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentPhoto) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentPhoto.
var (
_ bin.Encoder = &PushMessageContentPhoto{}
_ bin.Decoder = &PushMessageContentPhoto{}
_ bin.BareEncoder = &PushMessageContentPhoto{}
_ bin.BareDecoder = &PushMessageContentPhoto{}
_ PushMessageContentClass = &PushMessageContentPhoto{}
)
func (p *PushMessageContentPhoto) Zero() bool {
if p == nil {
return true
}
if !(p.Photo.Zero()) {
return false
}
if !(p.Caption == "") {
return false
}
if !(p.IsSecret == false) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentPhoto) String() string {
if p == nil {
return "PushMessageContentPhoto(nil)"
}
type Alias PushMessageContentPhoto
return fmt.Sprintf("PushMessageContentPhoto%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentPhoto) TypeID() uint32 {
return PushMessageContentPhotoTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentPhoto) TypeName() string {
return "pushMessageContentPhoto"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentPhoto) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentPhoto",
ID: PushMessageContentPhotoTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Photo",
SchemaName: "photo",
},
{
Name: "Caption",
SchemaName: "caption",
},
{
Name: "IsSecret",
SchemaName: "is_secret",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentPhoto) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPhoto#861dc52 as nil")
}
b.PutID(PushMessageContentPhotoTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentPhoto) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPhoto#861dc52 as nil")
}
if err := p.Photo.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentPhoto#861dc52: field photo: %w", err)
}
b.PutString(p.Caption)
b.PutBool(p.IsSecret)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentPhoto) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPhoto#861dc52 to nil")
}
if err := b.ConsumeID(PushMessageContentPhotoTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentPhoto) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPhoto#861dc52 to nil")
}
{
if err := p.Photo.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field photo: %w", err)
}
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field caption: %w", err)
}
p.Caption = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field is_secret: %w", err)
}
p.IsSecret = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentPhoto) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPhoto#861dc52 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentPhoto")
b.Comma()
b.FieldStart("photo")
if err := p.Photo.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentPhoto#861dc52: field photo: %w", err)
}
b.Comma()
b.FieldStart("caption")
b.PutString(p.Caption)
b.Comma()
b.FieldStart("is_secret")
b.PutBool(p.IsSecret)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentPhoto) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPhoto#861dc52 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentPhoto"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: %w", err)
}
case "photo":
if err := p.Photo.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field photo: %w", err)
}
case "caption":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field caption: %w", err)
}
p.Caption = value
case "is_secret":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field is_secret: %w", err)
}
p.IsSecret = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPhoto#861dc52: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetPhoto returns value of Photo field.
func (p *PushMessageContentPhoto) GetPhoto() (value Photo) {
if p == nil {
return
}
return p.Photo
}
// GetCaption returns value of Caption field.
func (p *PushMessageContentPhoto) GetCaption() (value string) {
if p == nil {
return
}
return p.Caption
}
// GetIsSecret returns value of IsSecret field.
func (p *PushMessageContentPhoto) GetIsSecret() (value bool) {
if p == nil {
return
}
return p.IsSecret
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentPhoto) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentPoll represents TL type `pushMessageContentPoll#fd5a743a`.
type PushMessageContentPoll struct {
// Poll question
Question string
// True, if the poll is regular and not in quiz mode
IsRegular bool
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentPollTypeID is TL type id of PushMessageContentPoll.
const PushMessageContentPollTypeID = 0xfd5a743a
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentPoll) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentPoll.
var (
_ bin.Encoder = &PushMessageContentPoll{}
_ bin.Decoder = &PushMessageContentPoll{}
_ bin.BareEncoder = &PushMessageContentPoll{}
_ bin.BareDecoder = &PushMessageContentPoll{}
_ PushMessageContentClass = &PushMessageContentPoll{}
)
func (p *PushMessageContentPoll) Zero() bool {
if p == nil {
return true
}
if !(p.Question == "") {
return false
}
if !(p.IsRegular == false) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentPoll) String() string {
if p == nil {
return "PushMessageContentPoll(nil)"
}
type Alias PushMessageContentPoll
return fmt.Sprintf("PushMessageContentPoll%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentPoll) TypeID() uint32 {
return PushMessageContentPollTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentPoll) TypeName() string {
return "pushMessageContentPoll"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentPoll) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentPoll",
ID: PushMessageContentPollTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Question",
SchemaName: "question",
},
{
Name: "IsRegular",
SchemaName: "is_regular",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentPoll) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPoll#fd5a743a as nil")
}
b.PutID(PushMessageContentPollTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentPoll) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPoll#fd5a743a as nil")
}
b.PutString(p.Question)
b.PutBool(p.IsRegular)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentPoll) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPoll#fd5a743a to nil")
}
if err := b.ConsumeID(PushMessageContentPollTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentPoll) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPoll#fd5a743a to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: field question: %w", err)
}
p.Question = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: field is_regular: %w", err)
}
p.IsRegular = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentPoll) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPoll#fd5a743a as nil")
}
b.ObjStart()
b.PutID("pushMessageContentPoll")
b.Comma()
b.FieldStart("question")
b.PutString(p.Question)
b.Comma()
b.FieldStart("is_regular")
b.PutBool(p.IsRegular)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentPoll) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPoll#fd5a743a to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentPoll"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: %w", err)
}
case "question":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: field question: %w", err)
}
p.Question = value
case "is_regular":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: field is_regular: %w", err)
}
p.IsRegular = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPoll#fd5a743a: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetQuestion returns value of Question field.
func (p *PushMessageContentPoll) GetQuestion() (value string) {
if p == nil {
return
}
return p.Question
}
// GetIsRegular returns value of IsRegular field.
func (p *PushMessageContentPoll) GetIsRegular() (value bool) {
if p == nil {
return
}
return p.IsRegular
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentPoll) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentPremiumGiftCode represents TL type `pushMessageContentPremiumGiftCode#18a15025`.
type PushMessageContentPremiumGiftCode struct {
// Number of months the Telegram Premium subscription will be active after code
// activation
MonthCount int32
}
// PushMessageContentPremiumGiftCodeTypeID is TL type id of PushMessageContentPremiumGiftCode.
const PushMessageContentPremiumGiftCodeTypeID = 0x18a15025
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentPremiumGiftCode) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentPremiumGiftCode.
var (
_ bin.Encoder = &PushMessageContentPremiumGiftCode{}
_ bin.Decoder = &PushMessageContentPremiumGiftCode{}
_ bin.BareEncoder = &PushMessageContentPremiumGiftCode{}
_ bin.BareDecoder = &PushMessageContentPremiumGiftCode{}
_ PushMessageContentClass = &PushMessageContentPremiumGiftCode{}
)
func (p *PushMessageContentPremiumGiftCode) Zero() bool {
if p == nil {
return true
}
if !(p.MonthCount == 0) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentPremiumGiftCode) String() string {
if p == nil {
return "PushMessageContentPremiumGiftCode(nil)"
}
type Alias PushMessageContentPremiumGiftCode
return fmt.Sprintf("PushMessageContentPremiumGiftCode%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentPremiumGiftCode) TypeID() uint32 {
return PushMessageContentPremiumGiftCodeTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentPremiumGiftCode) TypeName() string {
return "pushMessageContentPremiumGiftCode"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentPremiumGiftCode) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentPremiumGiftCode",
ID: PushMessageContentPremiumGiftCodeTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "MonthCount",
SchemaName: "month_count",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentPremiumGiftCode) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPremiumGiftCode#18a15025 as nil")
}
b.PutID(PushMessageContentPremiumGiftCodeTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentPremiumGiftCode) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPremiumGiftCode#18a15025 as nil")
}
b.PutInt32(p.MonthCount)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentPremiumGiftCode) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPremiumGiftCode#18a15025 to nil")
}
if err := b.ConsumeID(PushMessageContentPremiumGiftCodeTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPremiumGiftCode#18a15025: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentPremiumGiftCode) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPremiumGiftCode#18a15025 to nil")
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPremiumGiftCode#18a15025: field month_count: %w", err)
}
p.MonthCount = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentPremiumGiftCode) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentPremiumGiftCode#18a15025 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentPremiumGiftCode")
b.Comma()
b.FieldStart("month_count")
b.PutInt32(p.MonthCount)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentPremiumGiftCode) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentPremiumGiftCode#18a15025 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentPremiumGiftCode"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentPremiumGiftCode#18a15025: %w", err)
}
case "month_count":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentPremiumGiftCode#18a15025: field month_count: %w", err)
}
p.MonthCount = value
default:
return b.Skip()
}
return nil
})
}
// GetMonthCount returns value of MonthCount field.
func (p *PushMessageContentPremiumGiftCode) GetMonthCount() (value int32) {
if p == nil {
return
}
return p.MonthCount
}
// PushMessageContentGiveaway represents TL type `pushMessageContentGiveaway#d63e7f8e`.
type PushMessageContentGiveaway struct {
// Number of users which will receive giveaway prizes; 0 for pinned message
WinnerCount int32
// Prize of the giveaway; may be null for pinned message
Prize GiveawayPrizeClass
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentGiveawayTypeID is TL type id of PushMessageContentGiveaway.
const PushMessageContentGiveawayTypeID = 0xd63e7f8e
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentGiveaway) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentGiveaway.
var (
_ bin.Encoder = &PushMessageContentGiveaway{}
_ bin.Decoder = &PushMessageContentGiveaway{}
_ bin.BareEncoder = &PushMessageContentGiveaway{}
_ bin.BareDecoder = &PushMessageContentGiveaway{}
_ PushMessageContentClass = &PushMessageContentGiveaway{}
)
func (p *PushMessageContentGiveaway) Zero() bool {
if p == nil {
return true
}
if !(p.WinnerCount == 0) {
return false
}
if !(p.Prize == nil) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentGiveaway) String() string {
if p == nil {
return "PushMessageContentGiveaway(nil)"
}
type Alias PushMessageContentGiveaway
return fmt.Sprintf("PushMessageContentGiveaway%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentGiveaway) TypeID() uint32 {
return PushMessageContentGiveawayTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentGiveaway) TypeName() string {
return "pushMessageContentGiveaway"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentGiveaway) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentGiveaway",
ID: PushMessageContentGiveawayTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "WinnerCount",
SchemaName: "winner_count",
},
{
Name: "Prize",
SchemaName: "prize",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentGiveaway) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGiveaway#d63e7f8e as nil")
}
b.PutID(PushMessageContentGiveawayTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentGiveaway) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGiveaway#d63e7f8e as nil")
}
b.PutInt32(p.WinnerCount)
if p.Prize == nil {
return fmt.Errorf("unable to encode pushMessageContentGiveaway#d63e7f8e: field prize is nil")
}
if err := p.Prize.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentGiveaway#d63e7f8e: field prize: %w", err)
}
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentGiveaway) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGiveaway#d63e7f8e to nil")
}
if err := b.ConsumeID(PushMessageContentGiveawayTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentGiveaway) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGiveaway#d63e7f8e to nil")
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: field winner_count: %w", err)
}
p.WinnerCount = value
}
{
value, err := DecodeGiveawayPrize(b)
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: field prize: %w", err)
}
p.Prize = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentGiveaway) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGiveaway#d63e7f8e as nil")
}
b.ObjStart()
b.PutID("pushMessageContentGiveaway")
b.Comma()
b.FieldStart("winner_count")
b.PutInt32(p.WinnerCount)
b.Comma()
b.FieldStart("prize")
if p.Prize == nil {
return fmt.Errorf("unable to encode pushMessageContentGiveaway#d63e7f8e: field prize is nil")
}
if err := p.Prize.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentGiveaway#d63e7f8e: field prize: %w", err)
}
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentGiveaway) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGiveaway#d63e7f8e to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentGiveaway"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: %w", err)
}
case "winner_count":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: field winner_count: %w", err)
}
p.WinnerCount = value
case "prize":
value, err := DecodeTDLibJSONGiveawayPrize(b)
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: field prize: %w", err)
}
p.Prize = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGiveaway#d63e7f8e: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetWinnerCount returns value of WinnerCount field.
func (p *PushMessageContentGiveaway) GetWinnerCount() (value int32) {
if p == nil {
return
}
return p.WinnerCount
}
// GetPrize returns value of Prize field.
func (p *PushMessageContentGiveaway) GetPrize() (value GiveawayPrizeClass) {
if p == nil {
return
}
return p.Prize
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentGiveaway) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentGift represents TL type `pushMessageContentGift#84a8cd0b`.
type PushMessageContentGift struct {
// Number of Telegram Stars that sender paid for the gift
StarCount int64
}
// PushMessageContentGiftTypeID is TL type id of PushMessageContentGift.
const PushMessageContentGiftTypeID = 0x84a8cd0b
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentGift) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentGift.
var (
_ bin.Encoder = &PushMessageContentGift{}
_ bin.Decoder = &PushMessageContentGift{}
_ bin.BareEncoder = &PushMessageContentGift{}
_ bin.BareDecoder = &PushMessageContentGift{}
_ PushMessageContentClass = &PushMessageContentGift{}
)
func (p *PushMessageContentGift) Zero() bool {
if p == nil {
return true
}
if !(p.StarCount == 0) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentGift) String() string {
if p == nil {
return "PushMessageContentGift(nil)"
}
type Alias PushMessageContentGift
return fmt.Sprintf("PushMessageContentGift%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentGift) TypeID() uint32 {
return PushMessageContentGiftTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentGift) TypeName() string {
return "pushMessageContentGift"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentGift) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentGift",
ID: PushMessageContentGiftTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "StarCount",
SchemaName: "star_count",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentGift) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGift#84a8cd0b as nil")
}
b.PutID(PushMessageContentGiftTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentGift) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGift#84a8cd0b as nil")
}
b.PutInt53(p.StarCount)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentGift) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGift#84a8cd0b to nil")
}
if err := b.ConsumeID(PushMessageContentGiftTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGift#84a8cd0b: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentGift) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGift#84a8cd0b to nil")
}
{
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGift#84a8cd0b: field star_count: %w", err)
}
p.StarCount = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentGift) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentGift#84a8cd0b as nil")
}
b.ObjStart()
b.PutID("pushMessageContentGift")
b.Comma()
b.FieldStart("star_count")
b.PutInt53(p.StarCount)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentGift) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentGift#84a8cd0b to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentGift"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentGift#84a8cd0b: %w", err)
}
case "star_count":
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentGift#84a8cd0b: field star_count: %w", err)
}
p.StarCount = value
default:
return b.Skip()
}
return nil
})
}
// GetStarCount returns value of StarCount field.
func (p *PushMessageContentGift) GetStarCount() (value int64) {
if p == nil {
return
}
return p.StarCount
}
// PushMessageContentUpgradedGift represents TL type `pushMessageContentUpgradedGift#99fa0ade`.
type PushMessageContentUpgradedGift struct {
// True, if the gift was obtained by upgrading of a previously received gift; otherwise,
// this is a transferred or resold gift
IsUpgrade bool
}
// PushMessageContentUpgradedGiftTypeID is TL type id of PushMessageContentUpgradedGift.
const PushMessageContentUpgradedGiftTypeID = 0x99fa0ade
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentUpgradedGift) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentUpgradedGift.
var (
_ bin.Encoder = &PushMessageContentUpgradedGift{}
_ bin.Decoder = &PushMessageContentUpgradedGift{}
_ bin.BareEncoder = &PushMessageContentUpgradedGift{}
_ bin.BareDecoder = &PushMessageContentUpgradedGift{}
_ PushMessageContentClass = &PushMessageContentUpgradedGift{}
)
func (p *PushMessageContentUpgradedGift) Zero() bool {
if p == nil {
return true
}
if !(p.IsUpgrade == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentUpgradedGift) String() string {
if p == nil {
return "PushMessageContentUpgradedGift(nil)"
}
type Alias PushMessageContentUpgradedGift
return fmt.Sprintf("PushMessageContentUpgradedGift%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentUpgradedGift) TypeID() uint32 {
return PushMessageContentUpgradedGiftTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentUpgradedGift) TypeName() string {
return "pushMessageContentUpgradedGift"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentUpgradedGift) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentUpgradedGift",
ID: PushMessageContentUpgradedGiftTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "IsUpgrade",
SchemaName: "is_upgrade",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentUpgradedGift) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentUpgradedGift#99fa0ade as nil")
}
b.PutID(PushMessageContentUpgradedGiftTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentUpgradedGift) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentUpgradedGift#99fa0ade as nil")
}
b.PutBool(p.IsUpgrade)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentUpgradedGift) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentUpgradedGift#99fa0ade to nil")
}
if err := b.ConsumeID(PushMessageContentUpgradedGiftTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentUpgradedGift#99fa0ade: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentUpgradedGift) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentUpgradedGift#99fa0ade to nil")
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentUpgradedGift#99fa0ade: field is_upgrade: %w", err)
}
p.IsUpgrade = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentUpgradedGift) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentUpgradedGift#99fa0ade as nil")
}
b.ObjStart()
b.PutID("pushMessageContentUpgradedGift")
b.Comma()
b.FieldStart("is_upgrade")
b.PutBool(p.IsUpgrade)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentUpgradedGift) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentUpgradedGift#99fa0ade to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentUpgradedGift"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentUpgradedGift#99fa0ade: %w", err)
}
case "is_upgrade":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentUpgradedGift#99fa0ade: field is_upgrade: %w", err)
}
p.IsUpgrade = value
default:
return b.Skip()
}
return nil
})
}
// GetIsUpgrade returns value of IsUpgrade field.
func (p *PushMessageContentUpgradedGift) GetIsUpgrade() (value bool) {
if p == nil {
return
}
return p.IsUpgrade
}
// PushMessageContentScreenshotTaken represents TL type `pushMessageContentScreenshotTaken#cc51ff9`.
type PushMessageContentScreenshotTaken struct {
}
// PushMessageContentScreenshotTakenTypeID is TL type id of PushMessageContentScreenshotTaken.
const PushMessageContentScreenshotTakenTypeID = 0xcc51ff9
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentScreenshotTaken) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentScreenshotTaken.
var (
_ bin.Encoder = &PushMessageContentScreenshotTaken{}
_ bin.Decoder = &PushMessageContentScreenshotTaken{}
_ bin.BareEncoder = &PushMessageContentScreenshotTaken{}
_ bin.BareDecoder = &PushMessageContentScreenshotTaken{}
_ PushMessageContentClass = &PushMessageContentScreenshotTaken{}
)
func (p *PushMessageContentScreenshotTaken) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentScreenshotTaken) String() string {
if p == nil {
return "PushMessageContentScreenshotTaken(nil)"
}
type Alias PushMessageContentScreenshotTaken
return fmt.Sprintf("PushMessageContentScreenshotTaken%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentScreenshotTaken) TypeID() uint32 {
return PushMessageContentScreenshotTakenTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentScreenshotTaken) TypeName() string {
return "pushMessageContentScreenshotTaken"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentScreenshotTaken) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentScreenshotTaken",
ID: PushMessageContentScreenshotTakenTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentScreenshotTaken) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentScreenshotTaken#cc51ff9 as nil")
}
b.PutID(PushMessageContentScreenshotTakenTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentScreenshotTaken) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentScreenshotTaken#cc51ff9 as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentScreenshotTaken) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentScreenshotTaken#cc51ff9 to nil")
}
if err := b.ConsumeID(PushMessageContentScreenshotTakenTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentScreenshotTaken#cc51ff9: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentScreenshotTaken) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentScreenshotTaken#cc51ff9 to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentScreenshotTaken) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentScreenshotTaken#cc51ff9 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentScreenshotTaken")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentScreenshotTaken) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentScreenshotTaken#cc51ff9 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentScreenshotTaken"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentScreenshotTaken#cc51ff9: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentSticker represents TL type `pushMessageContentSticker#5c98bdd3`.
type PushMessageContentSticker struct {
// Message content; may be null
Sticker Sticker
// Emoji corresponding to the sticker; may be empty
Emoji string
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentStickerTypeID is TL type id of PushMessageContentSticker.
const PushMessageContentStickerTypeID = 0x5c98bdd3
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentSticker) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentSticker.
var (
_ bin.Encoder = &PushMessageContentSticker{}
_ bin.Decoder = &PushMessageContentSticker{}
_ bin.BareEncoder = &PushMessageContentSticker{}
_ bin.BareDecoder = &PushMessageContentSticker{}
_ PushMessageContentClass = &PushMessageContentSticker{}
)
func (p *PushMessageContentSticker) Zero() bool {
if p == nil {
return true
}
if !(p.Sticker.Zero()) {
return false
}
if !(p.Emoji == "") {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentSticker) String() string {
if p == nil {
return "PushMessageContentSticker(nil)"
}
type Alias PushMessageContentSticker
return fmt.Sprintf("PushMessageContentSticker%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentSticker) TypeID() uint32 {
return PushMessageContentStickerTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentSticker) TypeName() string {
return "pushMessageContentSticker"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentSticker) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentSticker",
ID: PushMessageContentStickerTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Sticker",
SchemaName: "sticker",
},
{
Name: "Emoji",
SchemaName: "emoji",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentSticker) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentSticker#5c98bdd3 as nil")
}
b.PutID(PushMessageContentStickerTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentSticker) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentSticker#5c98bdd3 as nil")
}
if err := p.Sticker.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentSticker#5c98bdd3: field sticker: %w", err)
}
b.PutString(p.Emoji)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentSticker) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentSticker#5c98bdd3 to nil")
}
if err := b.ConsumeID(PushMessageContentStickerTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentSticker) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentSticker#5c98bdd3 to nil")
}
{
if err := p.Sticker.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: field sticker: %w", err)
}
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: field emoji: %w", err)
}
p.Emoji = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentSticker) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentSticker#5c98bdd3 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentSticker")
b.Comma()
b.FieldStart("sticker")
if err := p.Sticker.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentSticker#5c98bdd3: field sticker: %w", err)
}
b.Comma()
b.FieldStart("emoji")
b.PutString(p.Emoji)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentSticker) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentSticker#5c98bdd3 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentSticker"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: %w", err)
}
case "sticker":
if err := p.Sticker.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: field sticker: %w", err)
}
case "emoji":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: field emoji: %w", err)
}
p.Emoji = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentSticker#5c98bdd3: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetSticker returns value of Sticker field.
func (p *PushMessageContentSticker) GetSticker() (value Sticker) {
if p == nil {
return
}
return p.Sticker
}
// GetEmoji returns value of Emoji field.
func (p *PushMessageContentSticker) GetEmoji() (value string) {
if p == nil {
return
}
return p.Emoji
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentSticker) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentStory represents TL type `pushMessageContentStory#23bd824f`.
type PushMessageContentStory struct {
// True, if the user was mentioned in the story
IsMention bool
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentStoryTypeID is TL type id of PushMessageContentStory.
const PushMessageContentStoryTypeID = 0x23bd824f
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentStory) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentStory.
var (
_ bin.Encoder = &PushMessageContentStory{}
_ bin.Decoder = &PushMessageContentStory{}
_ bin.BareEncoder = &PushMessageContentStory{}
_ bin.BareDecoder = &PushMessageContentStory{}
_ PushMessageContentClass = &PushMessageContentStory{}
)
func (p *PushMessageContentStory) Zero() bool {
if p == nil {
return true
}
if !(p.IsMention == false) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentStory) String() string {
if p == nil {
return "PushMessageContentStory(nil)"
}
type Alias PushMessageContentStory
return fmt.Sprintf("PushMessageContentStory%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentStory) TypeID() uint32 {
return PushMessageContentStoryTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentStory) TypeName() string {
return "pushMessageContentStory"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentStory) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentStory",
ID: PushMessageContentStoryTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "IsMention",
SchemaName: "is_mention",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentStory) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentStory#23bd824f as nil")
}
b.PutID(PushMessageContentStoryTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentStory) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentStory#23bd824f as nil")
}
b.PutBool(p.IsMention)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentStory) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentStory#23bd824f to nil")
}
if err := b.ConsumeID(PushMessageContentStoryTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentStory#23bd824f: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentStory) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentStory#23bd824f to nil")
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentStory#23bd824f: field is_mention: %w", err)
}
p.IsMention = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentStory#23bd824f: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentStory) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentStory#23bd824f as nil")
}
b.ObjStart()
b.PutID("pushMessageContentStory")
b.Comma()
b.FieldStart("is_mention")
b.PutBool(p.IsMention)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentStory) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentStory#23bd824f to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentStory"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentStory#23bd824f: %w", err)
}
case "is_mention":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentStory#23bd824f: field is_mention: %w", err)
}
p.IsMention = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentStory#23bd824f: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetIsMention returns value of IsMention field.
func (p *PushMessageContentStory) GetIsMention() (value bool) {
if p == nil {
return
}
return p.IsMention
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentStory) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentText represents TL type `pushMessageContentText#105ddea9`.
type PushMessageContentText struct {
// Message text
Text string
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentTextTypeID is TL type id of PushMessageContentText.
const PushMessageContentTextTypeID = 0x105ddea9
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentText) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentText.
var (
_ bin.Encoder = &PushMessageContentText{}
_ bin.Decoder = &PushMessageContentText{}
_ bin.BareEncoder = &PushMessageContentText{}
_ bin.BareDecoder = &PushMessageContentText{}
_ PushMessageContentClass = &PushMessageContentText{}
)
func (p *PushMessageContentText) Zero() bool {
if p == nil {
return true
}
if !(p.Text == "") {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentText) String() string {
if p == nil {
return "PushMessageContentText(nil)"
}
type Alias PushMessageContentText
return fmt.Sprintf("PushMessageContentText%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentText) TypeID() uint32 {
return PushMessageContentTextTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentText) TypeName() string {
return "pushMessageContentText"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentText) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentText",
ID: PushMessageContentTextTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Text",
SchemaName: "text",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentText) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentText#105ddea9 as nil")
}
b.PutID(PushMessageContentTextTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentText) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentText#105ddea9 as nil")
}
b.PutString(p.Text)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentText) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentText#105ddea9 to nil")
}
if err := b.ConsumeID(PushMessageContentTextTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentText#105ddea9: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentText) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentText#105ddea9 to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentText#105ddea9: field text: %w", err)
}
p.Text = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentText#105ddea9: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentText) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentText#105ddea9 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentText")
b.Comma()
b.FieldStart("text")
b.PutString(p.Text)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentText) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentText#105ddea9 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentText"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentText#105ddea9: %w", err)
}
case "text":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentText#105ddea9: field text: %w", err)
}
p.Text = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentText#105ddea9: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetText returns value of Text field.
func (p *PushMessageContentText) GetText() (value string) {
if p == nil {
return
}
return p.Text
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentText) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentVideo represents TL type `pushMessageContentVideo#127ad12f`.
type PushMessageContentVideo struct {
// Message content; may be null
Video Video
// Video caption
Caption string
// True, if the video is secret
IsSecret bool
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentVideoTypeID is TL type id of PushMessageContentVideo.
const PushMessageContentVideoTypeID = 0x127ad12f
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentVideo) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentVideo.
var (
_ bin.Encoder = &PushMessageContentVideo{}
_ bin.Decoder = &PushMessageContentVideo{}
_ bin.BareEncoder = &PushMessageContentVideo{}
_ bin.BareDecoder = &PushMessageContentVideo{}
_ PushMessageContentClass = &PushMessageContentVideo{}
)
func (p *PushMessageContentVideo) Zero() bool {
if p == nil {
return true
}
if !(p.Video.Zero()) {
return false
}
if !(p.Caption == "") {
return false
}
if !(p.IsSecret == false) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentVideo) String() string {
if p == nil {
return "PushMessageContentVideo(nil)"
}
type Alias PushMessageContentVideo
return fmt.Sprintf("PushMessageContentVideo%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentVideo) TypeID() uint32 {
return PushMessageContentVideoTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentVideo) TypeName() string {
return "pushMessageContentVideo"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentVideo) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentVideo",
ID: PushMessageContentVideoTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Video",
SchemaName: "video",
},
{
Name: "Caption",
SchemaName: "caption",
},
{
Name: "IsSecret",
SchemaName: "is_secret",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentVideo) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideo#127ad12f as nil")
}
b.PutID(PushMessageContentVideoTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentVideo) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideo#127ad12f as nil")
}
if err := p.Video.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentVideo#127ad12f: field video: %w", err)
}
b.PutString(p.Caption)
b.PutBool(p.IsSecret)
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentVideo) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideo#127ad12f to nil")
}
if err := b.ConsumeID(PushMessageContentVideoTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentVideo) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideo#127ad12f to nil")
}
{
if err := p.Video.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field video: %w", err)
}
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field caption: %w", err)
}
p.Caption = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field is_secret: %w", err)
}
p.IsSecret = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentVideo) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideo#127ad12f as nil")
}
b.ObjStart()
b.PutID("pushMessageContentVideo")
b.Comma()
b.FieldStart("video")
if err := p.Video.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentVideo#127ad12f: field video: %w", err)
}
b.Comma()
b.FieldStart("caption")
b.PutString(p.Caption)
b.Comma()
b.FieldStart("is_secret")
b.PutBool(p.IsSecret)
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentVideo) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideo#127ad12f to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentVideo"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: %w", err)
}
case "video":
if err := p.Video.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field video: %w", err)
}
case "caption":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field caption: %w", err)
}
p.Caption = value
case "is_secret":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field is_secret: %w", err)
}
p.IsSecret = value
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideo#127ad12f: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetVideo returns value of Video field.
func (p *PushMessageContentVideo) GetVideo() (value Video) {
if p == nil {
return
}
return p.Video
}
// GetCaption returns value of Caption field.
func (p *PushMessageContentVideo) GetCaption() (value string) {
if p == nil {
return
}
return p.Caption
}
// GetIsSecret returns value of IsSecret field.
func (p *PushMessageContentVideo) GetIsSecret() (value bool) {
if p == nil {
return
}
return p.IsSecret
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentVideo) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentVideoNote represents TL type `pushMessageContentVideoNote#bd13f97f`.
type PushMessageContentVideoNote struct {
// Message content; may be null
VideoNote VideoNote
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentVideoNoteTypeID is TL type id of PushMessageContentVideoNote.
const PushMessageContentVideoNoteTypeID = 0xbd13f97f
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentVideoNote) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentVideoNote.
var (
_ bin.Encoder = &PushMessageContentVideoNote{}
_ bin.Decoder = &PushMessageContentVideoNote{}
_ bin.BareEncoder = &PushMessageContentVideoNote{}
_ bin.BareDecoder = &PushMessageContentVideoNote{}
_ PushMessageContentClass = &PushMessageContentVideoNote{}
)
func (p *PushMessageContentVideoNote) Zero() bool {
if p == nil {
return true
}
if !(p.VideoNote.Zero()) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentVideoNote) String() string {
if p == nil {
return "PushMessageContentVideoNote(nil)"
}
type Alias PushMessageContentVideoNote
return fmt.Sprintf("PushMessageContentVideoNote%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentVideoNote) TypeID() uint32 {
return PushMessageContentVideoNoteTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentVideoNote) TypeName() string {
return "pushMessageContentVideoNote"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentVideoNote) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentVideoNote",
ID: PushMessageContentVideoNoteTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "VideoNote",
SchemaName: "video_note",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentVideoNote) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoNote#bd13f97f as nil")
}
b.PutID(PushMessageContentVideoNoteTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentVideoNote) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoNote#bd13f97f as nil")
}
if err := p.VideoNote.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentVideoNote#bd13f97f: field video_note: %w", err)
}
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentVideoNote) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoNote#bd13f97f to nil")
}
if err := b.ConsumeID(PushMessageContentVideoNoteTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoNote#bd13f97f: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentVideoNote) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoNote#bd13f97f to nil")
}
{
if err := p.VideoNote.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoNote#bd13f97f: field video_note: %w", err)
}
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoNote#bd13f97f: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentVideoNote) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoNote#bd13f97f as nil")
}
b.ObjStart()
b.PutID("pushMessageContentVideoNote")
b.Comma()
b.FieldStart("video_note")
if err := p.VideoNote.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentVideoNote#bd13f97f: field video_note: %w", err)
}
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentVideoNote) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoNote#bd13f97f to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentVideoNote"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoNote#bd13f97f: %w", err)
}
case "video_note":
if err := p.VideoNote.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoNote#bd13f97f: field video_note: %w", err)
}
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoNote#bd13f97f: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetVideoNote returns value of VideoNote field.
func (p *PushMessageContentVideoNote) GetVideoNote() (value VideoNote) {
if p == nil {
return
}
return p.VideoNote
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentVideoNote) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentVoiceNote represents TL type `pushMessageContentVoiceNote#54cac8b`.
type PushMessageContentVoiceNote struct {
// Message content; may be null
VoiceNote VoiceNote
// True, if the message is a pinned message with the specified content
IsPinned bool
}
// PushMessageContentVoiceNoteTypeID is TL type id of PushMessageContentVoiceNote.
const PushMessageContentVoiceNoteTypeID = 0x54cac8b
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentVoiceNote) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentVoiceNote.
var (
_ bin.Encoder = &PushMessageContentVoiceNote{}
_ bin.Decoder = &PushMessageContentVoiceNote{}
_ bin.BareEncoder = &PushMessageContentVoiceNote{}
_ bin.BareDecoder = &PushMessageContentVoiceNote{}
_ PushMessageContentClass = &PushMessageContentVoiceNote{}
)
func (p *PushMessageContentVoiceNote) Zero() bool {
if p == nil {
return true
}
if !(p.VoiceNote.Zero()) {
return false
}
if !(p.IsPinned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentVoiceNote) String() string {
if p == nil {
return "PushMessageContentVoiceNote(nil)"
}
type Alias PushMessageContentVoiceNote
return fmt.Sprintf("PushMessageContentVoiceNote%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentVoiceNote) TypeID() uint32 {
return PushMessageContentVoiceNoteTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentVoiceNote) TypeName() string {
return "pushMessageContentVoiceNote"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentVoiceNote) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentVoiceNote",
ID: PushMessageContentVoiceNoteTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "VoiceNote",
SchemaName: "voice_note",
},
{
Name: "IsPinned",
SchemaName: "is_pinned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentVoiceNote) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVoiceNote#54cac8b as nil")
}
b.PutID(PushMessageContentVoiceNoteTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentVoiceNote) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVoiceNote#54cac8b as nil")
}
if err := p.VoiceNote.Encode(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentVoiceNote#54cac8b: field voice_note: %w", err)
}
b.PutBool(p.IsPinned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentVoiceNote) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVoiceNote#54cac8b to nil")
}
if err := b.ConsumeID(PushMessageContentVoiceNoteTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVoiceNote#54cac8b: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentVoiceNote) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVoiceNote#54cac8b to nil")
}
{
if err := p.VoiceNote.Decode(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVoiceNote#54cac8b: field voice_note: %w", err)
}
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVoiceNote#54cac8b: field is_pinned: %w", err)
}
p.IsPinned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentVoiceNote) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVoiceNote#54cac8b as nil")
}
b.ObjStart()
b.PutID("pushMessageContentVoiceNote")
b.Comma()
b.FieldStart("voice_note")
if err := p.VoiceNote.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode pushMessageContentVoiceNote#54cac8b: field voice_note: %w", err)
}
b.Comma()
b.FieldStart("is_pinned")
b.PutBool(p.IsPinned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentVoiceNote) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVoiceNote#54cac8b to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentVoiceNote"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVoiceNote#54cac8b: %w", err)
}
case "voice_note":
if err := p.VoiceNote.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVoiceNote#54cac8b: field voice_note: %w", err)
}
case "is_pinned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentVoiceNote#54cac8b: field is_pinned: %w", err)
}
p.IsPinned = value
default:
return b.Skip()
}
return nil
})
}
// GetVoiceNote returns value of VoiceNote field.
func (p *PushMessageContentVoiceNote) GetVoiceNote() (value VoiceNote) {
if p == nil {
return
}
return p.VoiceNote
}
// GetIsPinned returns value of IsPinned field.
func (p *PushMessageContentVoiceNote) GetIsPinned() (value bool) {
if p == nil {
return
}
return p.IsPinned
}
// PushMessageContentBasicGroupChatCreate represents TL type `pushMessageContentBasicGroupChatCreate#81f1defc`.
type PushMessageContentBasicGroupChatCreate struct {
}
// PushMessageContentBasicGroupChatCreateTypeID is TL type id of PushMessageContentBasicGroupChatCreate.
const PushMessageContentBasicGroupChatCreateTypeID = 0x81f1defc
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentBasicGroupChatCreate) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentBasicGroupChatCreate.
var (
_ bin.Encoder = &PushMessageContentBasicGroupChatCreate{}
_ bin.Decoder = &PushMessageContentBasicGroupChatCreate{}
_ bin.BareEncoder = &PushMessageContentBasicGroupChatCreate{}
_ bin.BareDecoder = &PushMessageContentBasicGroupChatCreate{}
_ PushMessageContentClass = &PushMessageContentBasicGroupChatCreate{}
)
func (p *PushMessageContentBasicGroupChatCreate) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentBasicGroupChatCreate) String() string {
if p == nil {
return "PushMessageContentBasicGroupChatCreate(nil)"
}
type Alias PushMessageContentBasicGroupChatCreate
return fmt.Sprintf("PushMessageContentBasicGroupChatCreate%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentBasicGroupChatCreate) TypeID() uint32 {
return PushMessageContentBasicGroupChatCreateTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentBasicGroupChatCreate) TypeName() string {
return "pushMessageContentBasicGroupChatCreate"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentBasicGroupChatCreate) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentBasicGroupChatCreate",
ID: PushMessageContentBasicGroupChatCreateTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentBasicGroupChatCreate) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentBasicGroupChatCreate#81f1defc as nil")
}
b.PutID(PushMessageContentBasicGroupChatCreateTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentBasicGroupChatCreate) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentBasicGroupChatCreate#81f1defc as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentBasicGroupChatCreate) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentBasicGroupChatCreate#81f1defc to nil")
}
if err := b.ConsumeID(PushMessageContentBasicGroupChatCreateTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentBasicGroupChatCreate#81f1defc: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentBasicGroupChatCreate) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentBasicGroupChatCreate#81f1defc to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentBasicGroupChatCreate) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentBasicGroupChatCreate#81f1defc as nil")
}
b.ObjStart()
b.PutID("pushMessageContentBasicGroupChatCreate")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentBasicGroupChatCreate) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentBasicGroupChatCreate#81f1defc to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentBasicGroupChatCreate"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentBasicGroupChatCreate#81f1defc: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentVideoChatStarted represents TL type `pushMessageContentVideoChatStarted#de3b2c3f`.
type PushMessageContentVideoChatStarted struct {
}
// PushMessageContentVideoChatStartedTypeID is TL type id of PushMessageContentVideoChatStarted.
const PushMessageContentVideoChatStartedTypeID = 0xde3b2c3f
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentVideoChatStarted) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentVideoChatStarted.
var (
_ bin.Encoder = &PushMessageContentVideoChatStarted{}
_ bin.Decoder = &PushMessageContentVideoChatStarted{}
_ bin.BareEncoder = &PushMessageContentVideoChatStarted{}
_ bin.BareDecoder = &PushMessageContentVideoChatStarted{}
_ PushMessageContentClass = &PushMessageContentVideoChatStarted{}
)
func (p *PushMessageContentVideoChatStarted) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentVideoChatStarted) String() string {
if p == nil {
return "PushMessageContentVideoChatStarted(nil)"
}
type Alias PushMessageContentVideoChatStarted
return fmt.Sprintf("PushMessageContentVideoChatStarted%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentVideoChatStarted) TypeID() uint32 {
return PushMessageContentVideoChatStartedTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentVideoChatStarted) TypeName() string {
return "pushMessageContentVideoChatStarted"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentVideoChatStarted) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentVideoChatStarted",
ID: PushMessageContentVideoChatStartedTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentVideoChatStarted) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoChatStarted#de3b2c3f as nil")
}
b.PutID(PushMessageContentVideoChatStartedTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentVideoChatStarted) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoChatStarted#de3b2c3f as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentVideoChatStarted) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoChatStarted#de3b2c3f to nil")
}
if err := b.ConsumeID(PushMessageContentVideoChatStartedTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoChatStarted#de3b2c3f: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentVideoChatStarted) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoChatStarted#de3b2c3f to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentVideoChatStarted) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoChatStarted#de3b2c3f as nil")
}
b.ObjStart()
b.PutID("pushMessageContentVideoChatStarted")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentVideoChatStarted) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoChatStarted#de3b2c3f to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentVideoChatStarted"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoChatStarted#de3b2c3f: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentVideoChatEnded represents TL type `pushMessageContentVideoChatEnded#b57a74e3`.
type PushMessageContentVideoChatEnded struct {
}
// PushMessageContentVideoChatEndedTypeID is TL type id of PushMessageContentVideoChatEnded.
const PushMessageContentVideoChatEndedTypeID = 0xb57a74e3
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentVideoChatEnded) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentVideoChatEnded.
var (
_ bin.Encoder = &PushMessageContentVideoChatEnded{}
_ bin.Decoder = &PushMessageContentVideoChatEnded{}
_ bin.BareEncoder = &PushMessageContentVideoChatEnded{}
_ bin.BareDecoder = &PushMessageContentVideoChatEnded{}
_ PushMessageContentClass = &PushMessageContentVideoChatEnded{}
)
func (p *PushMessageContentVideoChatEnded) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentVideoChatEnded) String() string {
if p == nil {
return "PushMessageContentVideoChatEnded(nil)"
}
type Alias PushMessageContentVideoChatEnded
return fmt.Sprintf("PushMessageContentVideoChatEnded%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentVideoChatEnded) TypeID() uint32 {
return PushMessageContentVideoChatEndedTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentVideoChatEnded) TypeName() string {
return "pushMessageContentVideoChatEnded"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentVideoChatEnded) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentVideoChatEnded",
ID: PushMessageContentVideoChatEndedTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentVideoChatEnded) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoChatEnded#b57a74e3 as nil")
}
b.PutID(PushMessageContentVideoChatEndedTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentVideoChatEnded) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoChatEnded#b57a74e3 as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentVideoChatEnded) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoChatEnded#b57a74e3 to nil")
}
if err := b.ConsumeID(PushMessageContentVideoChatEndedTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoChatEnded#b57a74e3: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentVideoChatEnded) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoChatEnded#b57a74e3 to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentVideoChatEnded) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentVideoChatEnded#b57a74e3 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentVideoChatEnded")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentVideoChatEnded) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentVideoChatEnded#b57a74e3 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentVideoChatEnded"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentVideoChatEnded#b57a74e3: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentInviteVideoChatParticipants represents TL type `pushMessageContentInviteVideoChatParticipants#1eda428d`.
type PushMessageContentInviteVideoChatParticipants struct {
// True, if the current user was invited to the video chat or the live stream
IsCurrentUser bool
}
// PushMessageContentInviteVideoChatParticipantsTypeID is TL type id of PushMessageContentInviteVideoChatParticipants.
const PushMessageContentInviteVideoChatParticipantsTypeID = 0x1eda428d
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentInviteVideoChatParticipants) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentInviteVideoChatParticipants.
var (
_ bin.Encoder = &PushMessageContentInviteVideoChatParticipants{}
_ bin.Decoder = &PushMessageContentInviteVideoChatParticipants{}
_ bin.BareEncoder = &PushMessageContentInviteVideoChatParticipants{}
_ bin.BareDecoder = &PushMessageContentInviteVideoChatParticipants{}
_ PushMessageContentClass = &PushMessageContentInviteVideoChatParticipants{}
)
func (p *PushMessageContentInviteVideoChatParticipants) Zero() bool {
if p == nil {
return true
}
if !(p.IsCurrentUser == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentInviteVideoChatParticipants) String() string {
if p == nil {
return "PushMessageContentInviteVideoChatParticipants(nil)"
}
type Alias PushMessageContentInviteVideoChatParticipants
return fmt.Sprintf("PushMessageContentInviteVideoChatParticipants%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentInviteVideoChatParticipants) TypeID() uint32 {
return PushMessageContentInviteVideoChatParticipantsTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentInviteVideoChatParticipants) TypeName() string {
return "pushMessageContentInviteVideoChatParticipants"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentInviteVideoChatParticipants) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentInviteVideoChatParticipants",
ID: PushMessageContentInviteVideoChatParticipantsTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "IsCurrentUser",
SchemaName: "is_current_user",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentInviteVideoChatParticipants) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentInviteVideoChatParticipants#1eda428d as nil")
}
b.PutID(PushMessageContentInviteVideoChatParticipantsTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentInviteVideoChatParticipants) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentInviteVideoChatParticipants#1eda428d as nil")
}
b.PutBool(p.IsCurrentUser)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentInviteVideoChatParticipants) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentInviteVideoChatParticipants#1eda428d to nil")
}
if err := b.ConsumeID(PushMessageContentInviteVideoChatParticipantsTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentInviteVideoChatParticipants#1eda428d: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentInviteVideoChatParticipants) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentInviteVideoChatParticipants#1eda428d to nil")
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentInviteVideoChatParticipants#1eda428d: field is_current_user: %w", err)
}
p.IsCurrentUser = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentInviteVideoChatParticipants) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentInviteVideoChatParticipants#1eda428d as nil")
}
b.ObjStart()
b.PutID("pushMessageContentInviteVideoChatParticipants")
b.Comma()
b.FieldStart("is_current_user")
b.PutBool(p.IsCurrentUser)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentInviteVideoChatParticipants) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentInviteVideoChatParticipants#1eda428d to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentInviteVideoChatParticipants"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentInviteVideoChatParticipants#1eda428d: %w", err)
}
case "is_current_user":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentInviteVideoChatParticipants#1eda428d: field is_current_user: %w", err)
}
p.IsCurrentUser = value
default:
return b.Skip()
}
return nil
})
}
// GetIsCurrentUser returns value of IsCurrentUser field.
func (p *PushMessageContentInviteVideoChatParticipants) GetIsCurrentUser() (value bool) {
if p == nil {
return
}
return p.IsCurrentUser
}
// PushMessageContentChatAddMembers represents TL type `pushMessageContentChatAddMembers#bf337b3a`.
type PushMessageContentChatAddMembers struct {
// Name of the added member
MemberName string
// True, if the current user was added to the group
IsCurrentUser bool
// True, if the user has returned to the group themselves
IsReturned bool
}
// PushMessageContentChatAddMembersTypeID is TL type id of PushMessageContentChatAddMembers.
const PushMessageContentChatAddMembersTypeID = 0xbf337b3a
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatAddMembers) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatAddMembers.
var (
_ bin.Encoder = &PushMessageContentChatAddMembers{}
_ bin.Decoder = &PushMessageContentChatAddMembers{}
_ bin.BareEncoder = &PushMessageContentChatAddMembers{}
_ bin.BareDecoder = &PushMessageContentChatAddMembers{}
_ PushMessageContentClass = &PushMessageContentChatAddMembers{}
)
func (p *PushMessageContentChatAddMembers) Zero() bool {
if p == nil {
return true
}
if !(p.MemberName == "") {
return false
}
if !(p.IsCurrentUser == false) {
return false
}
if !(p.IsReturned == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatAddMembers) String() string {
if p == nil {
return "PushMessageContentChatAddMembers(nil)"
}
type Alias PushMessageContentChatAddMembers
return fmt.Sprintf("PushMessageContentChatAddMembers%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatAddMembers) TypeID() uint32 {
return PushMessageContentChatAddMembersTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatAddMembers) TypeName() string {
return "pushMessageContentChatAddMembers"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatAddMembers) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatAddMembers",
ID: PushMessageContentChatAddMembersTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "MemberName",
SchemaName: "member_name",
},
{
Name: "IsCurrentUser",
SchemaName: "is_current_user",
},
{
Name: "IsReturned",
SchemaName: "is_returned",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatAddMembers) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatAddMembers#bf337b3a as nil")
}
b.PutID(PushMessageContentChatAddMembersTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatAddMembers) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatAddMembers#bf337b3a as nil")
}
b.PutString(p.MemberName)
b.PutBool(p.IsCurrentUser)
b.PutBool(p.IsReturned)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatAddMembers) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatAddMembers#bf337b3a to nil")
}
if err := b.ConsumeID(PushMessageContentChatAddMembersTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatAddMembers) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatAddMembers#bf337b3a to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: field member_name: %w", err)
}
p.MemberName = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: field is_current_user: %w", err)
}
p.IsCurrentUser = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: field is_returned: %w", err)
}
p.IsReturned = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatAddMembers) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatAddMembers#bf337b3a as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatAddMembers")
b.Comma()
b.FieldStart("member_name")
b.PutString(p.MemberName)
b.Comma()
b.FieldStart("is_current_user")
b.PutBool(p.IsCurrentUser)
b.Comma()
b.FieldStart("is_returned")
b.PutBool(p.IsReturned)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatAddMembers) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatAddMembers#bf337b3a to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatAddMembers"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: %w", err)
}
case "member_name":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: field member_name: %w", err)
}
p.MemberName = value
case "is_current_user":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: field is_current_user: %w", err)
}
p.IsCurrentUser = value
case "is_returned":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatAddMembers#bf337b3a: field is_returned: %w", err)
}
p.IsReturned = value
default:
return b.Skip()
}
return nil
})
}
// GetMemberName returns value of MemberName field.
func (p *PushMessageContentChatAddMembers) GetMemberName() (value string) {
if p == nil {
return
}
return p.MemberName
}
// GetIsCurrentUser returns value of IsCurrentUser field.
func (p *PushMessageContentChatAddMembers) GetIsCurrentUser() (value bool) {
if p == nil {
return
}
return p.IsCurrentUser
}
// GetIsReturned returns value of IsReturned field.
func (p *PushMessageContentChatAddMembers) GetIsReturned() (value bool) {
if p == nil {
return
}
return p.IsReturned
}
// PushMessageContentChatChangePhoto represents TL type `pushMessageContentChatChangePhoto#bd96521d`.
type PushMessageContentChatChangePhoto struct {
}
// PushMessageContentChatChangePhotoTypeID is TL type id of PushMessageContentChatChangePhoto.
const PushMessageContentChatChangePhotoTypeID = 0xbd96521d
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatChangePhoto) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatChangePhoto.
var (
_ bin.Encoder = &PushMessageContentChatChangePhoto{}
_ bin.Decoder = &PushMessageContentChatChangePhoto{}
_ bin.BareEncoder = &PushMessageContentChatChangePhoto{}
_ bin.BareDecoder = &PushMessageContentChatChangePhoto{}
_ PushMessageContentClass = &PushMessageContentChatChangePhoto{}
)
func (p *PushMessageContentChatChangePhoto) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatChangePhoto) String() string {
if p == nil {
return "PushMessageContentChatChangePhoto(nil)"
}
type Alias PushMessageContentChatChangePhoto
return fmt.Sprintf("PushMessageContentChatChangePhoto%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatChangePhoto) TypeID() uint32 {
return PushMessageContentChatChangePhotoTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatChangePhoto) TypeName() string {
return "pushMessageContentChatChangePhoto"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatChangePhoto) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatChangePhoto",
ID: PushMessageContentChatChangePhotoTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatChangePhoto) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatChangePhoto#bd96521d as nil")
}
b.PutID(PushMessageContentChatChangePhotoTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatChangePhoto) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatChangePhoto#bd96521d as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatChangePhoto) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatChangePhoto#bd96521d to nil")
}
if err := b.ConsumeID(PushMessageContentChatChangePhotoTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatChangePhoto#bd96521d: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatChangePhoto) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatChangePhoto#bd96521d to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatChangePhoto) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatChangePhoto#bd96521d as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatChangePhoto")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatChangePhoto) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatChangePhoto#bd96521d to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatChangePhoto"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatChangePhoto#bd96521d: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentChatChangeTitle represents TL type `pushMessageContentChatChangeTitle#8ae1f6a3`.
type PushMessageContentChatChangeTitle struct {
// New chat title
Title string
}
// PushMessageContentChatChangeTitleTypeID is TL type id of PushMessageContentChatChangeTitle.
const PushMessageContentChatChangeTitleTypeID = 0x8ae1f6a3
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatChangeTitle) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatChangeTitle.
var (
_ bin.Encoder = &PushMessageContentChatChangeTitle{}
_ bin.Decoder = &PushMessageContentChatChangeTitle{}
_ bin.BareEncoder = &PushMessageContentChatChangeTitle{}
_ bin.BareDecoder = &PushMessageContentChatChangeTitle{}
_ PushMessageContentClass = &PushMessageContentChatChangeTitle{}
)
func (p *PushMessageContentChatChangeTitle) Zero() bool {
if p == nil {
return true
}
if !(p.Title == "") {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatChangeTitle) String() string {
if p == nil {
return "PushMessageContentChatChangeTitle(nil)"
}
type Alias PushMessageContentChatChangeTitle
return fmt.Sprintf("PushMessageContentChatChangeTitle%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatChangeTitle) TypeID() uint32 {
return PushMessageContentChatChangeTitleTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatChangeTitle) TypeName() string {
return "pushMessageContentChatChangeTitle"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatChangeTitle) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatChangeTitle",
ID: PushMessageContentChatChangeTitleTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Title",
SchemaName: "title",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatChangeTitle) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatChangeTitle#8ae1f6a3 as nil")
}
b.PutID(PushMessageContentChatChangeTitleTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatChangeTitle) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatChangeTitle#8ae1f6a3 as nil")
}
b.PutString(p.Title)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatChangeTitle) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatChangeTitle#8ae1f6a3 to nil")
}
if err := b.ConsumeID(PushMessageContentChatChangeTitleTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatChangeTitle#8ae1f6a3: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatChangeTitle) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatChangeTitle#8ae1f6a3 to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatChangeTitle#8ae1f6a3: field title: %w", err)
}
p.Title = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatChangeTitle) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatChangeTitle#8ae1f6a3 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatChangeTitle")
b.Comma()
b.FieldStart("title")
b.PutString(p.Title)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatChangeTitle) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatChangeTitle#8ae1f6a3 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatChangeTitle"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatChangeTitle#8ae1f6a3: %w", err)
}
case "title":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatChangeTitle#8ae1f6a3: field title: %w", err)
}
p.Title = value
default:
return b.Skip()
}
return nil
})
}
// GetTitle returns value of Title field.
func (p *PushMessageContentChatChangeTitle) GetTitle() (value string) {
if p == nil {
return
}
return p.Title
}
// PushMessageContentChatSetBackground represents TL type `pushMessageContentChatSetBackground#a72b56e3`.
type PushMessageContentChatSetBackground struct {
// True, if the set background is the same as the background of the current user
IsSame bool
}
// PushMessageContentChatSetBackgroundTypeID is TL type id of PushMessageContentChatSetBackground.
const PushMessageContentChatSetBackgroundTypeID = 0xa72b56e3
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatSetBackground) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatSetBackground.
var (
_ bin.Encoder = &PushMessageContentChatSetBackground{}
_ bin.Decoder = &PushMessageContentChatSetBackground{}
_ bin.BareEncoder = &PushMessageContentChatSetBackground{}
_ bin.BareDecoder = &PushMessageContentChatSetBackground{}
_ PushMessageContentClass = &PushMessageContentChatSetBackground{}
)
func (p *PushMessageContentChatSetBackground) Zero() bool {
if p == nil {
return true
}
if !(p.IsSame == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatSetBackground) String() string {
if p == nil {
return "PushMessageContentChatSetBackground(nil)"
}
type Alias PushMessageContentChatSetBackground
return fmt.Sprintf("PushMessageContentChatSetBackground%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatSetBackground) TypeID() uint32 {
return PushMessageContentChatSetBackgroundTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatSetBackground) TypeName() string {
return "pushMessageContentChatSetBackground"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatSetBackground) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatSetBackground",
ID: PushMessageContentChatSetBackgroundTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "IsSame",
SchemaName: "is_same",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatSetBackground) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatSetBackground#a72b56e3 as nil")
}
b.PutID(PushMessageContentChatSetBackgroundTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatSetBackground) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatSetBackground#a72b56e3 as nil")
}
b.PutBool(p.IsSame)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatSetBackground) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatSetBackground#a72b56e3 to nil")
}
if err := b.ConsumeID(PushMessageContentChatSetBackgroundTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetBackground#a72b56e3: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatSetBackground) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatSetBackground#a72b56e3 to nil")
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetBackground#a72b56e3: field is_same: %w", err)
}
p.IsSame = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatSetBackground) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatSetBackground#a72b56e3 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatSetBackground")
b.Comma()
b.FieldStart("is_same")
b.PutBool(p.IsSame)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatSetBackground) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatSetBackground#a72b56e3 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatSetBackground"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetBackground#a72b56e3: %w", err)
}
case "is_same":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetBackground#a72b56e3: field is_same: %w", err)
}
p.IsSame = value
default:
return b.Skip()
}
return nil
})
}
// GetIsSame returns value of IsSame field.
func (p *PushMessageContentChatSetBackground) GetIsSame() (value bool) {
if p == nil {
return
}
return p.IsSame
}
// PushMessageContentChatSetTheme represents TL type `pushMessageContentChatSetTheme#a5d3b68`.
type PushMessageContentChatSetTheme struct {
// If non-empty, name of a new theme, set for the chat. Otherwise, the chat theme was
// reset to the default one
ThemeName string
}
// PushMessageContentChatSetThemeTypeID is TL type id of PushMessageContentChatSetTheme.
const PushMessageContentChatSetThemeTypeID = 0xa5d3b68
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatSetTheme) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatSetTheme.
var (
_ bin.Encoder = &PushMessageContentChatSetTheme{}
_ bin.Decoder = &PushMessageContentChatSetTheme{}
_ bin.BareEncoder = &PushMessageContentChatSetTheme{}
_ bin.BareDecoder = &PushMessageContentChatSetTheme{}
_ PushMessageContentClass = &PushMessageContentChatSetTheme{}
)
func (p *PushMessageContentChatSetTheme) Zero() bool {
if p == nil {
return true
}
if !(p.ThemeName == "") {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatSetTheme) String() string {
if p == nil {
return "PushMessageContentChatSetTheme(nil)"
}
type Alias PushMessageContentChatSetTheme
return fmt.Sprintf("PushMessageContentChatSetTheme%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatSetTheme) TypeID() uint32 {
return PushMessageContentChatSetThemeTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatSetTheme) TypeName() string {
return "pushMessageContentChatSetTheme"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatSetTheme) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatSetTheme",
ID: PushMessageContentChatSetThemeTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "ThemeName",
SchemaName: "theme_name",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatSetTheme) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatSetTheme#a5d3b68 as nil")
}
b.PutID(PushMessageContentChatSetThemeTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatSetTheme) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatSetTheme#a5d3b68 as nil")
}
b.PutString(p.ThemeName)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatSetTheme) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatSetTheme#a5d3b68 to nil")
}
if err := b.ConsumeID(PushMessageContentChatSetThemeTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetTheme#a5d3b68: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatSetTheme) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatSetTheme#a5d3b68 to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetTheme#a5d3b68: field theme_name: %w", err)
}
p.ThemeName = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatSetTheme) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatSetTheme#a5d3b68 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatSetTheme")
b.Comma()
b.FieldStart("theme_name")
b.PutString(p.ThemeName)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatSetTheme) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatSetTheme#a5d3b68 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatSetTheme"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetTheme#a5d3b68: %w", err)
}
case "theme_name":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatSetTheme#a5d3b68: field theme_name: %w", err)
}
p.ThemeName = value
default:
return b.Skip()
}
return nil
})
}
// GetThemeName returns value of ThemeName field.
func (p *PushMessageContentChatSetTheme) GetThemeName() (value string) {
if p == nil {
return
}
return p.ThemeName
}
// PushMessageContentChatDeleteMember represents TL type `pushMessageContentChatDeleteMember#23afa99f`.
type PushMessageContentChatDeleteMember struct {
// Name of the deleted member
MemberName string
// True, if the current user was deleted from the group
IsCurrentUser bool
// True, if the user has left the group themselves
IsLeft bool
}
// PushMessageContentChatDeleteMemberTypeID is TL type id of PushMessageContentChatDeleteMember.
const PushMessageContentChatDeleteMemberTypeID = 0x23afa99f
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatDeleteMember) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatDeleteMember.
var (
_ bin.Encoder = &PushMessageContentChatDeleteMember{}
_ bin.Decoder = &PushMessageContentChatDeleteMember{}
_ bin.BareEncoder = &PushMessageContentChatDeleteMember{}
_ bin.BareDecoder = &PushMessageContentChatDeleteMember{}
_ PushMessageContentClass = &PushMessageContentChatDeleteMember{}
)
func (p *PushMessageContentChatDeleteMember) Zero() bool {
if p == nil {
return true
}
if !(p.MemberName == "") {
return false
}
if !(p.IsCurrentUser == false) {
return false
}
if !(p.IsLeft == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatDeleteMember) String() string {
if p == nil {
return "PushMessageContentChatDeleteMember(nil)"
}
type Alias PushMessageContentChatDeleteMember
return fmt.Sprintf("PushMessageContentChatDeleteMember%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatDeleteMember) TypeID() uint32 {
return PushMessageContentChatDeleteMemberTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatDeleteMember) TypeName() string {
return "pushMessageContentChatDeleteMember"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatDeleteMember) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatDeleteMember",
ID: PushMessageContentChatDeleteMemberTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "MemberName",
SchemaName: "member_name",
},
{
Name: "IsCurrentUser",
SchemaName: "is_current_user",
},
{
Name: "IsLeft",
SchemaName: "is_left",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatDeleteMember) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatDeleteMember#23afa99f as nil")
}
b.PutID(PushMessageContentChatDeleteMemberTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatDeleteMember) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatDeleteMember#23afa99f as nil")
}
b.PutString(p.MemberName)
b.PutBool(p.IsCurrentUser)
b.PutBool(p.IsLeft)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatDeleteMember) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatDeleteMember#23afa99f to nil")
}
if err := b.ConsumeID(PushMessageContentChatDeleteMemberTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatDeleteMember) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatDeleteMember#23afa99f to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: field member_name: %w", err)
}
p.MemberName = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: field is_current_user: %w", err)
}
p.IsCurrentUser = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: field is_left: %w", err)
}
p.IsLeft = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatDeleteMember) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatDeleteMember#23afa99f as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatDeleteMember")
b.Comma()
b.FieldStart("member_name")
b.PutString(p.MemberName)
b.Comma()
b.FieldStart("is_current_user")
b.PutBool(p.IsCurrentUser)
b.Comma()
b.FieldStart("is_left")
b.PutBool(p.IsLeft)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatDeleteMember) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatDeleteMember#23afa99f to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatDeleteMember"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: %w", err)
}
case "member_name":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: field member_name: %w", err)
}
p.MemberName = value
case "is_current_user":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: field is_current_user: %w", err)
}
p.IsCurrentUser = value
case "is_left":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatDeleteMember#23afa99f: field is_left: %w", err)
}
p.IsLeft = value
default:
return b.Skip()
}
return nil
})
}
// GetMemberName returns value of MemberName field.
func (p *PushMessageContentChatDeleteMember) GetMemberName() (value string) {
if p == nil {
return
}
return p.MemberName
}
// GetIsCurrentUser returns value of IsCurrentUser field.
func (p *PushMessageContentChatDeleteMember) GetIsCurrentUser() (value bool) {
if p == nil {
return
}
return p.IsCurrentUser
}
// GetIsLeft returns value of IsLeft field.
func (p *PushMessageContentChatDeleteMember) GetIsLeft() (value bool) {
if p == nil {
return
}
return p.IsLeft
}
// PushMessageContentChatJoinByLink represents TL type `pushMessageContentChatJoinByLink#5c9bdf49`.
type PushMessageContentChatJoinByLink struct {
}
// PushMessageContentChatJoinByLinkTypeID is TL type id of PushMessageContentChatJoinByLink.
const PushMessageContentChatJoinByLinkTypeID = 0x5c9bdf49
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatJoinByLink) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatJoinByLink.
var (
_ bin.Encoder = &PushMessageContentChatJoinByLink{}
_ bin.Decoder = &PushMessageContentChatJoinByLink{}
_ bin.BareEncoder = &PushMessageContentChatJoinByLink{}
_ bin.BareDecoder = &PushMessageContentChatJoinByLink{}
_ PushMessageContentClass = &PushMessageContentChatJoinByLink{}
)
func (p *PushMessageContentChatJoinByLink) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatJoinByLink) String() string {
if p == nil {
return "PushMessageContentChatJoinByLink(nil)"
}
type Alias PushMessageContentChatJoinByLink
return fmt.Sprintf("PushMessageContentChatJoinByLink%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatJoinByLink) TypeID() uint32 {
return PushMessageContentChatJoinByLinkTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatJoinByLink) TypeName() string {
return "pushMessageContentChatJoinByLink"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatJoinByLink) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatJoinByLink",
ID: PushMessageContentChatJoinByLinkTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatJoinByLink) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatJoinByLink#5c9bdf49 as nil")
}
b.PutID(PushMessageContentChatJoinByLinkTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatJoinByLink) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatJoinByLink#5c9bdf49 as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatJoinByLink) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatJoinByLink#5c9bdf49 to nil")
}
if err := b.ConsumeID(PushMessageContentChatJoinByLinkTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatJoinByLink#5c9bdf49: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatJoinByLink) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatJoinByLink#5c9bdf49 to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatJoinByLink) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatJoinByLink#5c9bdf49 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatJoinByLink")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatJoinByLink) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatJoinByLink#5c9bdf49 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatJoinByLink"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatJoinByLink#5c9bdf49: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentChatJoinByRequest represents TL type `pushMessageContentChatJoinByRequest#f3bb6175`.
type PushMessageContentChatJoinByRequest struct {
}
// PushMessageContentChatJoinByRequestTypeID is TL type id of PushMessageContentChatJoinByRequest.
const PushMessageContentChatJoinByRequestTypeID = 0xf3bb6175
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentChatJoinByRequest) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentChatJoinByRequest.
var (
_ bin.Encoder = &PushMessageContentChatJoinByRequest{}
_ bin.Decoder = &PushMessageContentChatJoinByRequest{}
_ bin.BareEncoder = &PushMessageContentChatJoinByRequest{}
_ bin.BareDecoder = &PushMessageContentChatJoinByRequest{}
_ PushMessageContentClass = &PushMessageContentChatJoinByRequest{}
)
func (p *PushMessageContentChatJoinByRequest) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentChatJoinByRequest) String() string {
if p == nil {
return "PushMessageContentChatJoinByRequest(nil)"
}
type Alias PushMessageContentChatJoinByRequest
return fmt.Sprintf("PushMessageContentChatJoinByRequest%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentChatJoinByRequest) TypeID() uint32 {
return PushMessageContentChatJoinByRequestTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentChatJoinByRequest) TypeName() string {
return "pushMessageContentChatJoinByRequest"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentChatJoinByRequest) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentChatJoinByRequest",
ID: PushMessageContentChatJoinByRequestTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentChatJoinByRequest) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatJoinByRequest#f3bb6175 as nil")
}
b.PutID(PushMessageContentChatJoinByRequestTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentChatJoinByRequest) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatJoinByRequest#f3bb6175 as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentChatJoinByRequest) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatJoinByRequest#f3bb6175 to nil")
}
if err := b.ConsumeID(PushMessageContentChatJoinByRequestTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatJoinByRequest#f3bb6175: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentChatJoinByRequest) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatJoinByRequest#f3bb6175 to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentChatJoinByRequest) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentChatJoinByRequest#f3bb6175 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentChatJoinByRequest")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentChatJoinByRequest) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentChatJoinByRequest#f3bb6175 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentChatJoinByRequest"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentChatJoinByRequest#f3bb6175: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentRecurringPayment represents TL type `pushMessageContentRecurringPayment#6083361a`.
type PushMessageContentRecurringPayment struct {
// The paid amount
Amount string
}
// PushMessageContentRecurringPaymentTypeID is TL type id of PushMessageContentRecurringPayment.
const PushMessageContentRecurringPaymentTypeID = 0x6083361a
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentRecurringPayment) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentRecurringPayment.
var (
_ bin.Encoder = &PushMessageContentRecurringPayment{}
_ bin.Decoder = &PushMessageContentRecurringPayment{}
_ bin.BareEncoder = &PushMessageContentRecurringPayment{}
_ bin.BareDecoder = &PushMessageContentRecurringPayment{}
_ PushMessageContentClass = &PushMessageContentRecurringPayment{}
)
func (p *PushMessageContentRecurringPayment) Zero() bool {
if p == nil {
return true
}
if !(p.Amount == "") {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentRecurringPayment) String() string {
if p == nil {
return "PushMessageContentRecurringPayment(nil)"
}
type Alias PushMessageContentRecurringPayment
return fmt.Sprintf("PushMessageContentRecurringPayment%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentRecurringPayment) TypeID() uint32 {
return PushMessageContentRecurringPaymentTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentRecurringPayment) TypeName() string {
return "pushMessageContentRecurringPayment"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentRecurringPayment) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentRecurringPayment",
ID: PushMessageContentRecurringPaymentTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Amount",
SchemaName: "amount",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentRecurringPayment) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentRecurringPayment#6083361a as nil")
}
b.PutID(PushMessageContentRecurringPaymentTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentRecurringPayment) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentRecurringPayment#6083361a as nil")
}
b.PutString(p.Amount)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentRecurringPayment) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentRecurringPayment#6083361a to nil")
}
if err := b.ConsumeID(PushMessageContentRecurringPaymentTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentRecurringPayment#6083361a: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentRecurringPayment) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentRecurringPayment#6083361a to nil")
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentRecurringPayment#6083361a: field amount: %w", err)
}
p.Amount = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentRecurringPayment) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentRecurringPayment#6083361a as nil")
}
b.ObjStart()
b.PutID("pushMessageContentRecurringPayment")
b.Comma()
b.FieldStart("amount")
b.PutString(p.Amount)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentRecurringPayment) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentRecurringPayment#6083361a to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentRecurringPayment"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentRecurringPayment#6083361a: %w", err)
}
case "amount":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentRecurringPayment#6083361a: field amount: %w", err)
}
p.Amount = value
default:
return b.Skip()
}
return nil
})
}
// GetAmount returns value of Amount field.
func (p *PushMessageContentRecurringPayment) GetAmount() (value string) {
if p == nil {
return
}
return p.Amount
}
// PushMessageContentSuggestProfilePhoto represents TL type `pushMessageContentSuggestProfilePhoto#7d6bf0ab`.
type PushMessageContentSuggestProfilePhoto struct {
}
// PushMessageContentSuggestProfilePhotoTypeID is TL type id of PushMessageContentSuggestProfilePhoto.
const PushMessageContentSuggestProfilePhotoTypeID = 0x7d6bf0ab
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentSuggestProfilePhoto) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentSuggestProfilePhoto.
var (
_ bin.Encoder = &PushMessageContentSuggestProfilePhoto{}
_ bin.Decoder = &PushMessageContentSuggestProfilePhoto{}
_ bin.BareEncoder = &PushMessageContentSuggestProfilePhoto{}
_ bin.BareDecoder = &PushMessageContentSuggestProfilePhoto{}
_ PushMessageContentClass = &PushMessageContentSuggestProfilePhoto{}
)
func (p *PushMessageContentSuggestProfilePhoto) Zero() bool {
if p == nil {
return true
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentSuggestProfilePhoto) String() string {
if p == nil {
return "PushMessageContentSuggestProfilePhoto(nil)"
}
type Alias PushMessageContentSuggestProfilePhoto
return fmt.Sprintf("PushMessageContentSuggestProfilePhoto%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentSuggestProfilePhoto) TypeID() uint32 {
return PushMessageContentSuggestProfilePhotoTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentSuggestProfilePhoto) TypeName() string {
return "pushMessageContentSuggestProfilePhoto"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentSuggestProfilePhoto) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentSuggestProfilePhoto",
ID: PushMessageContentSuggestProfilePhotoTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentSuggestProfilePhoto) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentSuggestProfilePhoto#7d6bf0ab as nil")
}
b.PutID(PushMessageContentSuggestProfilePhotoTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentSuggestProfilePhoto) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentSuggestProfilePhoto#7d6bf0ab as nil")
}
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentSuggestProfilePhoto) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentSuggestProfilePhoto#7d6bf0ab to nil")
}
if err := b.ConsumeID(PushMessageContentSuggestProfilePhotoTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentSuggestProfilePhoto#7d6bf0ab: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentSuggestProfilePhoto) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentSuggestProfilePhoto#7d6bf0ab to nil")
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentSuggestProfilePhoto) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentSuggestProfilePhoto#7d6bf0ab as nil")
}
b.ObjStart()
b.PutID("pushMessageContentSuggestProfilePhoto")
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentSuggestProfilePhoto) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentSuggestProfilePhoto#7d6bf0ab to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentSuggestProfilePhoto"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentSuggestProfilePhoto#7d6bf0ab: %w", err)
}
default:
return b.Skip()
}
return nil
})
}
// PushMessageContentProximityAlertTriggered represents TL type `pushMessageContentProximityAlertTriggered#f03a8006`.
type PushMessageContentProximityAlertTriggered struct {
// The distance to the user
Distance int32
}
// PushMessageContentProximityAlertTriggeredTypeID is TL type id of PushMessageContentProximityAlertTriggered.
const PushMessageContentProximityAlertTriggeredTypeID = 0xf03a8006
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentProximityAlertTriggered) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentProximityAlertTriggered.
var (
_ bin.Encoder = &PushMessageContentProximityAlertTriggered{}
_ bin.Decoder = &PushMessageContentProximityAlertTriggered{}
_ bin.BareEncoder = &PushMessageContentProximityAlertTriggered{}
_ bin.BareDecoder = &PushMessageContentProximityAlertTriggered{}
_ PushMessageContentClass = &PushMessageContentProximityAlertTriggered{}
)
func (p *PushMessageContentProximityAlertTriggered) Zero() bool {
if p == nil {
return true
}
if !(p.Distance == 0) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentProximityAlertTriggered) String() string {
if p == nil {
return "PushMessageContentProximityAlertTriggered(nil)"
}
type Alias PushMessageContentProximityAlertTriggered
return fmt.Sprintf("PushMessageContentProximityAlertTriggered%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentProximityAlertTriggered) TypeID() uint32 {
return PushMessageContentProximityAlertTriggeredTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentProximityAlertTriggered) TypeName() string {
return "pushMessageContentProximityAlertTriggered"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentProximityAlertTriggered) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentProximityAlertTriggered",
ID: PushMessageContentProximityAlertTriggeredTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "Distance",
SchemaName: "distance",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentProximityAlertTriggered) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentProximityAlertTriggered#f03a8006 as nil")
}
b.PutID(PushMessageContentProximityAlertTriggeredTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentProximityAlertTriggered) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentProximityAlertTriggered#f03a8006 as nil")
}
b.PutInt32(p.Distance)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentProximityAlertTriggered) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentProximityAlertTriggered#f03a8006 to nil")
}
if err := b.ConsumeID(PushMessageContentProximityAlertTriggeredTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentProximityAlertTriggered#f03a8006: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentProximityAlertTriggered) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentProximityAlertTriggered#f03a8006 to nil")
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentProximityAlertTriggered#f03a8006: field distance: %w", err)
}
p.Distance = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentProximityAlertTriggered) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentProximityAlertTriggered#f03a8006 as nil")
}
b.ObjStart()
b.PutID("pushMessageContentProximityAlertTriggered")
b.Comma()
b.FieldStart("distance")
b.PutInt32(p.Distance)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentProximityAlertTriggered) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentProximityAlertTriggered#f03a8006 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentProximityAlertTriggered"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentProximityAlertTriggered#f03a8006: %w", err)
}
case "distance":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentProximityAlertTriggered#f03a8006: field distance: %w", err)
}
p.Distance = value
default:
return b.Skip()
}
return nil
})
}
// GetDistance returns value of Distance field.
func (p *PushMessageContentProximityAlertTriggered) GetDistance() (value int32) {
if p == nil {
return
}
return p.Distance
}
// PushMessageContentMessageForwards represents TL type `pushMessageContentMessageForwards#8df8a81c`.
type PushMessageContentMessageForwards struct {
// Number of forwarded messages
TotalCount int32
}
// PushMessageContentMessageForwardsTypeID is TL type id of PushMessageContentMessageForwards.
const PushMessageContentMessageForwardsTypeID = 0x8df8a81c
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentMessageForwards) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentMessageForwards.
var (
_ bin.Encoder = &PushMessageContentMessageForwards{}
_ bin.Decoder = &PushMessageContentMessageForwards{}
_ bin.BareEncoder = &PushMessageContentMessageForwards{}
_ bin.BareDecoder = &PushMessageContentMessageForwards{}
_ PushMessageContentClass = &PushMessageContentMessageForwards{}
)
func (p *PushMessageContentMessageForwards) Zero() bool {
if p == nil {
return true
}
if !(p.TotalCount == 0) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentMessageForwards) String() string {
if p == nil {
return "PushMessageContentMessageForwards(nil)"
}
type Alias PushMessageContentMessageForwards
return fmt.Sprintf("PushMessageContentMessageForwards%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentMessageForwards) TypeID() uint32 {
return PushMessageContentMessageForwardsTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentMessageForwards) TypeName() string {
return "pushMessageContentMessageForwards"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentMessageForwards) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentMessageForwards",
ID: PushMessageContentMessageForwardsTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "TotalCount",
SchemaName: "total_count",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentMessageForwards) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentMessageForwards#8df8a81c as nil")
}
b.PutID(PushMessageContentMessageForwardsTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentMessageForwards) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentMessageForwards#8df8a81c as nil")
}
b.PutInt32(p.TotalCount)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentMessageForwards) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentMessageForwards#8df8a81c to nil")
}
if err := b.ConsumeID(PushMessageContentMessageForwardsTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentMessageForwards#8df8a81c: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentMessageForwards) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentMessageForwards#8df8a81c to nil")
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMessageForwards#8df8a81c: field total_count: %w", err)
}
p.TotalCount = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentMessageForwards) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentMessageForwards#8df8a81c as nil")
}
b.ObjStart()
b.PutID("pushMessageContentMessageForwards")
b.Comma()
b.FieldStart("total_count")
b.PutInt32(p.TotalCount)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentMessageForwards) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentMessageForwards#8df8a81c to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentMessageForwards"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentMessageForwards#8df8a81c: %w", err)
}
case "total_count":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMessageForwards#8df8a81c: field total_count: %w", err)
}
p.TotalCount = value
default:
return b.Skip()
}
return nil
})
}
// GetTotalCount returns value of TotalCount field.
func (p *PushMessageContentMessageForwards) GetTotalCount() (value int32) {
if p == nil {
return
}
return p.TotalCount
}
// PushMessageContentMediaAlbum represents TL type `pushMessageContentMediaAlbum#d363e96f`.
type PushMessageContentMediaAlbum struct {
// Number of messages in the album
TotalCount int32
// True, if the album has at least one photo
HasPhotos bool
// True, if the album has at least one video file
HasVideos bool
// True, if the album has at least one audio file
HasAudios bool
// True, if the album has at least one document
HasDocuments bool
}
// PushMessageContentMediaAlbumTypeID is TL type id of PushMessageContentMediaAlbum.
const PushMessageContentMediaAlbumTypeID = 0xd363e96f
// construct implements constructor of PushMessageContentClass.
func (p PushMessageContentMediaAlbum) construct() PushMessageContentClass { return &p }
// Ensuring interfaces in compile-time for PushMessageContentMediaAlbum.
var (
_ bin.Encoder = &PushMessageContentMediaAlbum{}
_ bin.Decoder = &PushMessageContentMediaAlbum{}
_ bin.BareEncoder = &PushMessageContentMediaAlbum{}
_ bin.BareDecoder = &PushMessageContentMediaAlbum{}
_ PushMessageContentClass = &PushMessageContentMediaAlbum{}
)
func (p *PushMessageContentMediaAlbum) Zero() bool {
if p == nil {
return true
}
if !(p.TotalCount == 0) {
return false
}
if !(p.HasPhotos == false) {
return false
}
if !(p.HasVideos == false) {
return false
}
if !(p.HasAudios == false) {
return false
}
if !(p.HasDocuments == false) {
return false
}
return true
}
// String implements fmt.Stringer.
func (p *PushMessageContentMediaAlbum) String() string {
if p == nil {
return "PushMessageContentMediaAlbum(nil)"
}
type Alias PushMessageContentMediaAlbum
return fmt.Sprintf("PushMessageContentMediaAlbum%+v", Alias(*p))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*PushMessageContentMediaAlbum) TypeID() uint32 {
return PushMessageContentMediaAlbumTypeID
}
// TypeName returns name of type in TL schema.
func (*PushMessageContentMediaAlbum) TypeName() string {
return "pushMessageContentMediaAlbum"
}
// TypeInfo returns info about TL type.
func (p *PushMessageContentMediaAlbum) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "pushMessageContentMediaAlbum",
ID: PushMessageContentMediaAlbumTypeID,
}
if p == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "TotalCount",
SchemaName: "total_count",
},
{
Name: "HasPhotos",
SchemaName: "has_photos",
},
{
Name: "HasVideos",
SchemaName: "has_videos",
},
{
Name: "HasAudios",
SchemaName: "has_audios",
},
{
Name: "HasDocuments",
SchemaName: "has_documents",
},
}
return typ
}
// Encode implements bin.Encoder.
func (p *PushMessageContentMediaAlbum) Encode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentMediaAlbum#d363e96f as nil")
}
b.PutID(PushMessageContentMediaAlbumTypeID)
return p.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (p *PushMessageContentMediaAlbum) EncodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentMediaAlbum#d363e96f as nil")
}
b.PutInt32(p.TotalCount)
b.PutBool(p.HasPhotos)
b.PutBool(p.HasVideos)
b.PutBool(p.HasAudios)
b.PutBool(p.HasDocuments)
return nil
}
// Decode implements bin.Decoder.
func (p *PushMessageContentMediaAlbum) Decode(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentMediaAlbum#d363e96f to nil")
}
if err := b.ConsumeID(PushMessageContentMediaAlbumTypeID); err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: %w", err)
}
return p.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (p *PushMessageContentMediaAlbum) DecodeBare(b *bin.Buffer) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentMediaAlbum#d363e96f to nil")
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field total_count: %w", err)
}
p.TotalCount = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_photos: %w", err)
}
p.HasPhotos = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_videos: %w", err)
}
p.HasVideos = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_audios: %w", err)
}
p.HasAudios = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_documents: %w", err)
}
p.HasDocuments = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (p *PushMessageContentMediaAlbum) EncodeTDLibJSON(b tdjson.Encoder) error {
if p == nil {
return fmt.Errorf("can't encode pushMessageContentMediaAlbum#d363e96f as nil")
}
b.ObjStart()
b.PutID("pushMessageContentMediaAlbum")
b.Comma()
b.FieldStart("total_count")
b.PutInt32(p.TotalCount)
b.Comma()
b.FieldStart("has_photos")
b.PutBool(p.HasPhotos)
b.Comma()
b.FieldStart("has_videos")
b.PutBool(p.HasVideos)
b.Comma()
b.FieldStart("has_audios")
b.PutBool(p.HasAudios)
b.Comma()
b.FieldStart("has_documents")
b.PutBool(p.HasDocuments)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (p *PushMessageContentMediaAlbum) DecodeTDLibJSON(b tdjson.Decoder) error {
if p == nil {
return fmt.Errorf("can't decode pushMessageContentMediaAlbum#d363e96f to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("pushMessageContentMediaAlbum"); err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: %w", err)
}
case "total_count":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field total_count: %w", err)
}
p.TotalCount = value
case "has_photos":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_photos: %w", err)
}
p.HasPhotos = value
case "has_videos":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_videos: %w", err)
}
p.HasVideos = value
case "has_audios":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_audios: %w", err)
}
p.HasAudios = value
case "has_documents":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode pushMessageContentMediaAlbum#d363e96f: field has_documents: %w", err)
}
p.HasDocuments = value
default:
return b.Skip()
}
return nil
})
}
// GetTotalCount returns value of TotalCount field.
func (p *PushMessageContentMediaAlbum) GetTotalCount() (value int32) {
if p == nil {
return
}
return p.TotalCount
}
// GetHasPhotos returns value of HasPhotos field.
func (p *PushMessageContentMediaAlbum) GetHasPhotos() (value bool) {
if p == nil {
return
}
return p.HasPhotos
}
// GetHasVideos returns value of HasVideos field.
func (p *PushMessageContentMediaAlbum) GetHasVideos() (value bool) {
if p == nil {
return
}
return p.HasVideos
}
// GetHasAudios returns value of HasAudios field.
func (p *PushMessageContentMediaAlbum) GetHasAudios() (value bool) {
if p == nil {
return
}
return p.HasAudios
}
// GetHasDocuments returns value of HasDocuments field.
func (p *PushMessageContentMediaAlbum) GetHasDocuments() (value bool) {
if p == nil {
return
}
return p.HasDocuments
}
// PushMessageContentClassName is schema name of PushMessageContentClass.
const PushMessageContentClassName = "PushMessageContent"
// PushMessageContentClass represents PushMessageContent generic type.
//
// Example:
//
// g, err := tdapi.DecodePushMessageContent(buf)
// if err != nil {
// panic(err)
// }
// switch v := g.(type) {
// case *tdapi.PushMessageContentHidden: // pushMessageContentHidden#ed1bb85c
// case *tdapi.PushMessageContentAnimation: // pushMessageContentAnimation#3da4dfe4
// case *tdapi.PushMessageContentAudio: // pushMessageContentAudio#16be7872
// case *tdapi.PushMessageContentContact: // pushMessageContentContact#ff458a54
// case *tdapi.PushMessageContentContactRegistered: // pushMessageContentContactRegistered#ede1e5a0
// case *tdapi.PushMessageContentDocument: // pushMessageContentDocument#e4adae01
// case *tdapi.PushMessageContentGame: // pushMessageContentGame#e14bb91b
// case *tdapi.PushMessageContentGameScore: // pushMessageContentGameScore#35b8cd88
// case *tdapi.PushMessageContentInvoice: // pushMessageContentInvoice#98c88bbc
// case *tdapi.PushMessageContentLocation: // pushMessageContentLocation#b33a97b3
// case *tdapi.PushMessageContentPaidMedia: // pushMessageContentPaidMedia#b556e74a
// case *tdapi.PushMessageContentPhoto: // pushMessageContentPhoto#861dc52
// case *tdapi.PushMessageContentPoll: // pushMessageContentPoll#fd5a743a
// case *tdapi.PushMessageContentPremiumGiftCode: // pushMessageContentPremiumGiftCode#18a15025
// case *tdapi.PushMessageContentGiveaway: // pushMessageContentGiveaway#d63e7f8e
// case *tdapi.PushMessageContentGift: // pushMessageContentGift#84a8cd0b
// case *tdapi.PushMessageContentUpgradedGift: // pushMessageContentUpgradedGift#99fa0ade
// case *tdapi.PushMessageContentScreenshotTaken: // pushMessageContentScreenshotTaken#cc51ff9
// case *tdapi.PushMessageContentSticker: // pushMessageContentSticker#5c98bdd3
// case *tdapi.PushMessageContentStory: // pushMessageContentStory#23bd824f
// case *tdapi.PushMessageContentText: // pushMessageContentText#105ddea9
// case *tdapi.PushMessageContentVideo: // pushMessageContentVideo#127ad12f
// case *tdapi.PushMessageContentVideoNote: // pushMessageContentVideoNote#bd13f97f
// case *tdapi.PushMessageContentVoiceNote: // pushMessageContentVoiceNote#54cac8b
// case *tdapi.PushMessageContentBasicGroupChatCreate: // pushMessageContentBasicGroupChatCreate#81f1defc
// case *tdapi.PushMessageContentVideoChatStarted: // pushMessageContentVideoChatStarted#de3b2c3f
// case *tdapi.PushMessageContentVideoChatEnded: // pushMessageContentVideoChatEnded#b57a74e3
// case *tdapi.PushMessageContentInviteVideoChatParticipants: // pushMessageContentInviteVideoChatParticipants#1eda428d
// case *tdapi.PushMessageContentChatAddMembers: // pushMessageContentChatAddMembers#bf337b3a
// case *tdapi.PushMessageContentChatChangePhoto: // pushMessageContentChatChangePhoto#bd96521d
// case *tdapi.PushMessageContentChatChangeTitle: // pushMessageContentChatChangeTitle#8ae1f6a3
// case *tdapi.PushMessageContentChatSetBackground: // pushMessageContentChatSetBackground#a72b56e3
// case *tdapi.PushMessageContentChatSetTheme: // pushMessageContentChatSetTheme#a5d3b68
// case *tdapi.PushMessageContentChatDeleteMember: // pushMessageContentChatDeleteMember#23afa99f
// case *tdapi.PushMessageContentChatJoinByLink: // pushMessageContentChatJoinByLink#5c9bdf49
// case *tdapi.PushMessageContentChatJoinByRequest: // pushMessageContentChatJoinByRequest#f3bb6175
// case *tdapi.PushMessageContentRecurringPayment: // pushMessageContentRecurringPayment#6083361a
// case *tdapi.PushMessageContentSuggestProfilePhoto: // pushMessageContentSuggestProfilePhoto#7d6bf0ab
// case *tdapi.PushMessageContentProximityAlertTriggered: // pushMessageContentProximityAlertTriggered#f03a8006
// case *tdapi.PushMessageContentMessageForwards: // pushMessageContentMessageForwards#8df8a81c
// case *tdapi.PushMessageContentMediaAlbum: // pushMessageContentMediaAlbum#d363e96f
// default: panic(v)
// }
type PushMessageContentClass interface {
bin.Encoder
bin.Decoder
bin.BareEncoder
bin.BareDecoder
construct() PushMessageContentClass
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
TypeID() uint32
// TypeName returns name of type in TL schema.
TypeName() string
// String implements fmt.Stringer.
String() string
// Zero returns true if current object has a zero value.
Zero() bool
EncodeTDLibJSON(b tdjson.Encoder) error
DecodeTDLibJSON(b tdjson.Decoder) error
}
// DecodePushMessageContent implements binary de-serialization for PushMessageContentClass.
func DecodePushMessageContent(buf *bin.Buffer) (PushMessageContentClass, error) {
id, err := buf.PeekID()
if err != nil {
return nil, err
}
switch id {
case PushMessageContentHiddenTypeID:
// Decoding pushMessageContentHidden#ed1bb85c.
v := PushMessageContentHidden{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentAnimationTypeID:
// Decoding pushMessageContentAnimation#3da4dfe4.
v := PushMessageContentAnimation{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentAudioTypeID:
// Decoding pushMessageContentAudio#16be7872.
v := PushMessageContentAudio{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentContactTypeID:
// Decoding pushMessageContentContact#ff458a54.
v := PushMessageContentContact{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentContactRegisteredTypeID:
// Decoding pushMessageContentContactRegistered#ede1e5a0.
v := PushMessageContentContactRegistered{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentDocumentTypeID:
// Decoding pushMessageContentDocument#e4adae01.
v := PushMessageContentDocument{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentGameTypeID:
// Decoding pushMessageContentGame#e14bb91b.
v := PushMessageContentGame{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentGameScoreTypeID:
// Decoding pushMessageContentGameScore#35b8cd88.
v := PushMessageContentGameScore{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentInvoiceTypeID:
// Decoding pushMessageContentInvoice#98c88bbc.
v := PushMessageContentInvoice{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentLocationTypeID:
// Decoding pushMessageContentLocation#b33a97b3.
v := PushMessageContentLocation{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentPaidMediaTypeID:
// Decoding pushMessageContentPaidMedia#b556e74a.
v := PushMessageContentPaidMedia{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentPhotoTypeID:
// Decoding pushMessageContentPhoto#861dc52.
v := PushMessageContentPhoto{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentPollTypeID:
// Decoding pushMessageContentPoll#fd5a743a.
v := PushMessageContentPoll{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentPremiumGiftCodeTypeID:
// Decoding pushMessageContentPremiumGiftCode#18a15025.
v := PushMessageContentPremiumGiftCode{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentGiveawayTypeID:
// Decoding pushMessageContentGiveaway#d63e7f8e.
v := PushMessageContentGiveaway{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentGiftTypeID:
// Decoding pushMessageContentGift#84a8cd0b.
v := PushMessageContentGift{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentUpgradedGiftTypeID:
// Decoding pushMessageContentUpgradedGift#99fa0ade.
v := PushMessageContentUpgradedGift{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentScreenshotTakenTypeID:
// Decoding pushMessageContentScreenshotTaken#cc51ff9.
v := PushMessageContentScreenshotTaken{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentStickerTypeID:
// Decoding pushMessageContentSticker#5c98bdd3.
v := PushMessageContentSticker{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentStoryTypeID:
// Decoding pushMessageContentStory#23bd824f.
v := PushMessageContentStory{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentTextTypeID:
// Decoding pushMessageContentText#105ddea9.
v := PushMessageContentText{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentVideoTypeID:
// Decoding pushMessageContentVideo#127ad12f.
v := PushMessageContentVideo{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentVideoNoteTypeID:
// Decoding pushMessageContentVideoNote#bd13f97f.
v := PushMessageContentVideoNote{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentVoiceNoteTypeID:
// Decoding pushMessageContentVoiceNote#54cac8b.
v := PushMessageContentVoiceNote{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentBasicGroupChatCreateTypeID:
// Decoding pushMessageContentBasicGroupChatCreate#81f1defc.
v := PushMessageContentBasicGroupChatCreate{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentVideoChatStartedTypeID:
// Decoding pushMessageContentVideoChatStarted#de3b2c3f.
v := PushMessageContentVideoChatStarted{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentVideoChatEndedTypeID:
// Decoding pushMessageContentVideoChatEnded#b57a74e3.
v := PushMessageContentVideoChatEnded{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentInviteVideoChatParticipantsTypeID:
// Decoding pushMessageContentInviteVideoChatParticipants#1eda428d.
v := PushMessageContentInviteVideoChatParticipants{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatAddMembersTypeID:
// Decoding pushMessageContentChatAddMembers#bf337b3a.
v := PushMessageContentChatAddMembers{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatChangePhotoTypeID:
// Decoding pushMessageContentChatChangePhoto#bd96521d.
v := PushMessageContentChatChangePhoto{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatChangeTitleTypeID:
// Decoding pushMessageContentChatChangeTitle#8ae1f6a3.
v := PushMessageContentChatChangeTitle{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatSetBackgroundTypeID:
// Decoding pushMessageContentChatSetBackground#a72b56e3.
v := PushMessageContentChatSetBackground{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatSetThemeTypeID:
// Decoding pushMessageContentChatSetTheme#a5d3b68.
v := PushMessageContentChatSetTheme{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatDeleteMemberTypeID:
// Decoding pushMessageContentChatDeleteMember#23afa99f.
v := PushMessageContentChatDeleteMember{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatJoinByLinkTypeID:
// Decoding pushMessageContentChatJoinByLink#5c9bdf49.
v := PushMessageContentChatJoinByLink{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentChatJoinByRequestTypeID:
// Decoding pushMessageContentChatJoinByRequest#f3bb6175.
v := PushMessageContentChatJoinByRequest{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentRecurringPaymentTypeID:
// Decoding pushMessageContentRecurringPayment#6083361a.
v := PushMessageContentRecurringPayment{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentSuggestProfilePhotoTypeID:
// Decoding pushMessageContentSuggestProfilePhoto#7d6bf0ab.
v := PushMessageContentSuggestProfilePhoto{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentProximityAlertTriggeredTypeID:
// Decoding pushMessageContentProximityAlertTriggered#f03a8006.
v := PushMessageContentProximityAlertTriggered{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentMessageForwardsTypeID:
// Decoding pushMessageContentMessageForwards#8df8a81c.
v := PushMessageContentMessageForwards{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case PushMessageContentMediaAlbumTypeID:
// Decoding pushMessageContentMediaAlbum#d363e96f.
v := PushMessageContentMediaAlbum{}
if err := v.Decode(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
default:
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", bin.NewUnexpectedID(id))
}
}
// DecodeTDLibJSONPushMessageContent implements binary de-serialization for PushMessageContentClass.
func DecodeTDLibJSONPushMessageContent(buf tdjson.Decoder) (PushMessageContentClass, error) {
id, err := buf.FindTypeID()
if err != nil {
return nil, err
}
switch id {
case "pushMessageContentHidden":
// Decoding pushMessageContentHidden#ed1bb85c.
v := PushMessageContentHidden{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentAnimation":
// Decoding pushMessageContentAnimation#3da4dfe4.
v := PushMessageContentAnimation{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentAudio":
// Decoding pushMessageContentAudio#16be7872.
v := PushMessageContentAudio{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentContact":
// Decoding pushMessageContentContact#ff458a54.
v := PushMessageContentContact{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentContactRegistered":
// Decoding pushMessageContentContactRegistered#ede1e5a0.
v := PushMessageContentContactRegistered{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentDocument":
// Decoding pushMessageContentDocument#e4adae01.
v := PushMessageContentDocument{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentGame":
// Decoding pushMessageContentGame#e14bb91b.
v := PushMessageContentGame{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentGameScore":
// Decoding pushMessageContentGameScore#35b8cd88.
v := PushMessageContentGameScore{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentInvoice":
// Decoding pushMessageContentInvoice#98c88bbc.
v := PushMessageContentInvoice{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentLocation":
// Decoding pushMessageContentLocation#b33a97b3.
v := PushMessageContentLocation{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentPaidMedia":
// Decoding pushMessageContentPaidMedia#b556e74a.
v := PushMessageContentPaidMedia{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentPhoto":
// Decoding pushMessageContentPhoto#861dc52.
v := PushMessageContentPhoto{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentPoll":
// Decoding pushMessageContentPoll#fd5a743a.
v := PushMessageContentPoll{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentPremiumGiftCode":
// Decoding pushMessageContentPremiumGiftCode#18a15025.
v := PushMessageContentPremiumGiftCode{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentGiveaway":
// Decoding pushMessageContentGiveaway#d63e7f8e.
v := PushMessageContentGiveaway{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentGift":
// Decoding pushMessageContentGift#84a8cd0b.
v := PushMessageContentGift{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentUpgradedGift":
// Decoding pushMessageContentUpgradedGift#99fa0ade.
v := PushMessageContentUpgradedGift{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentScreenshotTaken":
// Decoding pushMessageContentScreenshotTaken#cc51ff9.
v := PushMessageContentScreenshotTaken{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentSticker":
// Decoding pushMessageContentSticker#5c98bdd3.
v := PushMessageContentSticker{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentStory":
// Decoding pushMessageContentStory#23bd824f.
v := PushMessageContentStory{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentText":
// Decoding pushMessageContentText#105ddea9.
v := PushMessageContentText{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentVideo":
// Decoding pushMessageContentVideo#127ad12f.
v := PushMessageContentVideo{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentVideoNote":
// Decoding pushMessageContentVideoNote#bd13f97f.
v := PushMessageContentVideoNote{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentVoiceNote":
// Decoding pushMessageContentVoiceNote#54cac8b.
v := PushMessageContentVoiceNote{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentBasicGroupChatCreate":
// Decoding pushMessageContentBasicGroupChatCreate#81f1defc.
v := PushMessageContentBasicGroupChatCreate{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentVideoChatStarted":
// Decoding pushMessageContentVideoChatStarted#de3b2c3f.
v := PushMessageContentVideoChatStarted{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentVideoChatEnded":
// Decoding pushMessageContentVideoChatEnded#b57a74e3.
v := PushMessageContentVideoChatEnded{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentInviteVideoChatParticipants":
// Decoding pushMessageContentInviteVideoChatParticipants#1eda428d.
v := PushMessageContentInviteVideoChatParticipants{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatAddMembers":
// Decoding pushMessageContentChatAddMembers#bf337b3a.
v := PushMessageContentChatAddMembers{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatChangePhoto":
// Decoding pushMessageContentChatChangePhoto#bd96521d.
v := PushMessageContentChatChangePhoto{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatChangeTitle":
// Decoding pushMessageContentChatChangeTitle#8ae1f6a3.
v := PushMessageContentChatChangeTitle{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatSetBackground":
// Decoding pushMessageContentChatSetBackground#a72b56e3.
v := PushMessageContentChatSetBackground{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatSetTheme":
// Decoding pushMessageContentChatSetTheme#a5d3b68.
v := PushMessageContentChatSetTheme{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatDeleteMember":
// Decoding pushMessageContentChatDeleteMember#23afa99f.
v := PushMessageContentChatDeleteMember{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatJoinByLink":
// Decoding pushMessageContentChatJoinByLink#5c9bdf49.
v := PushMessageContentChatJoinByLink{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentChatJoinByRequest":
// Decoding pushMessageContentChatJoinByRequest#f3bb6175.
v := PushMessageContentChatJoinByRequest{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentRecurringPayment":
// Decoding pushMessageContentRecurringPayment#6083361a.
v := PushMessageContentRecurringPayment{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentSuggestProfilePhoto":
// Decoding pushMessageContentSuggestProfilePhoto#7d6bf0ab.
v := PushMessageContentSuggestProfilePhoto{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentProximityAlertTriggered":
// Decoding pushMessageContentProximityAlertTriggered#f03a8006.
v := PushMessageContentProximityAlertTriggered{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentMessageForwards":
// Decoding pushMessageContentMessageForwards#8df8a81c.
v := PushMessageContentMessageForwards{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
case "pushMessageContentMediaAlbum":
// Decoding pushMessageContentMediaAlbum#d363e96f.
v := PushMessageContentMediaAlbum{}
if err := v.DecodeTDLibJSON(buf); err != nil {
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", err)
}
return &v, nil
default:
return nil, fmt.Errorf("unable to decode PushMessageContentClass: %w", tdjson.NewUnexpectedID(id))
}
}
// PushMessageContent boxes the PushMessageContentClass providing a helper.
type PushMessageContentBox struct {
PushMessageContent PushMessageContentClass
}
// Decode implements bin.Decoder for PushMessageContentBox.
func (b *PushMessageContentBox) Decode(buf *bin.Buffer) error {
if b == nil {
return fmt.Errorf("unable to decode PushMessageContentBox to nil")
}
v, err := DecodePushMessageContent(buf)
if err != nil {
return fmt.Errorf("unable to decode boxed value: %w", err)
}
b.PushMessageContent = v
return nil
}
// Encode implements bin.Encode for PushMessageContentBox.
func (b *PushMessageContentBox) Encode(buf *bin.Buffer) error {
if b == nil || b.PushMessageContent == nil {
return fmt.Errorf("unable to encode PushMessageContentClass as nil")
}
return b.PushMessageContent.Encode(buf)
}
// DecodeTDLibJSON implements bin.Decoder for PushMessageContentBox.
func (b *PushMessageContentBox) DecodeTDLibJSON(buf tdjson.Decoder) error {
if b == nil {
return fmt.Errorf("unable to decode PushMessageContentBox to nil")
}
v, err := DecodeTDLibJSONPushMessageContent(buf)
if err != nil {
return fmt.Errorf("unable to decode boxed value: %w", err)
}
b.PushMessageContent = v
return nil
}
// EncodeTDLibJSON implements bin.Encode for PushMessageContentBox.
func (b *PushMessageContentBox) EncodeTDLibJSON(buf tdjson.Encoder) error {
if b == nil || b.PushMessageContent == nil {
return fmt.Errorf("unable to encode PushMessageContentClass as nil")
}
return b.PushMessageContent.EncodeTDLibJSON(buf)
}