package  tgimport  (	"context" 	"errors" 	"fmt" 	"sort" 	"strings" 	"go.uber.org/multierr" 	"github.com/gotd/td/bin" 	"github.com/gotd/td/tdjson" 	"github.com/gotd/td/tdp" 	"github.com/gotd/td/tgerr" )var  (	_ = bin .Buffer {}	_ = context .Background ()	_ = fmt .Stringer (nil )	_ = strings .Builder {}	_ = errors .Is 	_ = multierr .AppendInto 	_ = sort .Ints 	_ = tdp .Format 	_ = tgerr .Error {}	_ = tdjson .Encoder {})type  ChannelsDeleteHistoryRequest  struct  {		Flags  bin .Fields 		ForEveryone  bool 		Channel  InputChannelClass 		MaxID  int }const  ChannelsDeleteHistoryRequestTypeID  = 0x9baa9647 var  (	_ bin .Encoder      = &ChannelsDeleteHistoryRequest {}	_ bin .Decoder      = &ChannelsDeleteHistoryRequest {}	_ bin .BareEncoder  = &ChannelsDeleteHistoryRequest {}	_ bin .BareDecoder  = &ChannelsDeleteHistoryRequest {})func  (d  *ChannelsDeleteHistoryRequest ) Zero bool  {	if  d  == nil  {		return  true 	}	if  !(d .Flags .Zero ()) {		return  false 	}	if  !(d .ForEveryone  == false ) {		return  false 	}	if  !(d .Channel  == nil ) {		return  false 	}	if  !(d .MaxID  == 0 ) {		return  false 	}	return  true }func  (d  *ChannelsDeleteHistoryRequest ) String string  {	if  d  == nil  {		return  "ChannelsDeleteHistoryRequest(nil)" 	}	type  Alias  ChannelsDeleteHistoryRequest 	return  fmt .Sprintf ("ChannelsDeleteHistoryRequest%+v" , Alias (*d ))}func  (d  *ChannelsDeleteHistoryRequest ) FillFrom from  interface  {	GetForEveryone () (value  bool )	GetChannel () (value  InputChannelClass )	GetMaxID () (value  int )}) {	d .ForEveryone  = from .GetForEveryone ()	d .Channel  = from .GetChannel ()	d .MaxID  = from .GetMaxID ()}func  (*ChannelsDeleteHistoryRequest ) TypeID uint32  {	return  ChannelsDeleteHistoryRequestTypeID }func  (*ChannelsDeleteHistoryRequest ) TypeName string  {	return  "channels.deleteHistory" }func  (d  *ChannelsDeleteHistoryRequest ) TypeInfo tdp .Type  {	typ  := tdp .Type {		Name : "channels.deleteHistory" ,		ID :   ChannelsDeleteHistoryRequestTypeID ,	}	if  d  == nil  {		typ .Null  = true 		return  typ 	}	typ .Fields  = []tdp .Field {		{			Name :       "ForEveryone" ,			SchemaName : "for_everyone" ,			Null :       !d .Flags .Has (0 ),		},		{			Name :       "Channel" ,			SchemaName : "channel" ,		},		{			Name :       "MaxID" ,			SchemaName : "max_id" ,		},	}	return  typ }func  (d  *ChannelsDeleteHistoryRequest ) SetFlags 	if  !(d .ForEveryone  == false ) {		d .Flags .Set (0 )	}}func  (d  *ChannelsDeleteHistoryRequest ) Encode b  *bin .Buffer ) error  {	if  d  == nil  {		return  fmt .Errorf ("can't encode channels.deleteHistory#9baa9647 as nil" )	}	b .PutID (ChannelsDeleteHistoryRequestTypeID )	return  d .EncodeBare (b )}func  (d  *ChannelsDeleteHistoryRequest ) EncodeBare b  *bin .Buffer ) error  {	if  d  == nil  {		return  fmt .Errorf ("can't encode channels.deleteHistory#9baa9647 as nil" )	}	d .SetFlags ()	if  err  := d .Flags .Encode (b ); err  != nil  {		return  fmt .Errorf ("unable to encode channels.deleteHistory#9baa9647: field flags: %w" , err )	}	if  d .Channel  == nil  {		return  fmt .Errorf ("unable to encode channels.deleteHistory#9baa9647: field channel is nil" )	}	if  err  := d .Channel .Encode (b ); err  != nil  {		return  fmt .Errorf ("unable to encode channels.deleteHistory#9baa9647: field channel: %w" , err )	}	b .PutInt (d .MaxID )	return  nil }func  (d  *ChannelsDeleteHistoryRequest ) Decode b  *bin .Buffer ) error  {	if  d  == nil  {		return  fmt .Errorf ("can't decode channels.deleteHistory#9baa9647 to nil" )	}	if  err  := b .ConsumeID (ChannelsDeleteHistoryRequestTypeID ); err  != nil  {		return  fmt .Errorf ("unable to decode channels.deleteHistory#9baa9647: %w" , err )	}	return  d .DecodeBare (b )}func  (d  *ChannelsDeleteHistoryRequest ) DecodeBare b  *bin .Buffer ) error  {	if  d  == nil  {		return  fmt .Errorf ("can't decode channels.deleteHistory#9baa9647 to nil" )	}	{		if  err  := d .Flags .Decode (b ); err  != nil  {			return  fmt .Errorf ("unable to decode channels.deleteHistory#9baa9647: field flags: %w" , err )		}	}	d .ForEveryone  = d .Flags .Has (0 )	{		value , err  := DecodeInputChannel (b )		if  err  != nil  {			return  fmt .Errorf ("unable to decode channels.deleteHistory#9baa9647: field channel: %w" , err )		}		d .Channel  = value 	}	{		value , err  := b .Int ()		if  err  != nil  {			return  fmt .Errorf ("unable to decode channels.deleteHistory#9baa9647: field max_id: %w" , err )		}		d .MaxID  = value 	}	return  nil }func  (d  *ChannelsDeleteHistoryRequest ) SetForEveryone value  bool ) {	if  value  {		d .Flags .Set (0 )		d .ForEveryone  = true 	} else  {		d .Flags .Unset (0 )		d .ForEveryone  = false 	}}func  (d  *ChannelsDeleteHistoryRequest ) GetForEveryone value  bool ) {	if  d  == nil  {		return 	}	return  d .Flags .Has (0 )}func  (d  *ChannelsDeleteHistoryRequest ) GetChannel value  InputChannelClass ) {	if  d  == nil  {		return 	}	return  d .Channel }func  (d  *ChannelsDeleteHistoryRequest ) GetMaxID value  int ) {	if  d  == nil  {		return 	}	return  d .MaxID }func  (d  *ChannelsDeleteHistoryRequest ) GetChannelAsNotEmpty NotEmptyInputChannel , bool ) {	return  d .Channel .AsNotEmpty ()}func  (c  *Client ) ChannelsDeleteHistory ctx  context .Context , request  *ChannelsDeleteHistoryRequest ) (UpdatesClass , error ) {	var  result  UpdatesBox 	if  err  := c .rpc .Invoke (ctx , request , &result ); err  != nil  {		return  nil , err 	}	return  result .Updates , nil } The pages are generated with Golds v0.6.7 . (GOOS=linux GOARCH=amd64)
Golds  is a Go 101  project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @Go100and1  (reachable from the left QR code) to get the latest news of Golds .