package Ġcom . j esse cor bet t . disk ord . bot Ċ Ċ import Ġcom . j esse cor bet t . disk ord . api . common .* Ċ import Ġcom . j esse cor bet t . disk ord . api . gateway . EventDispatcher Ċ import Ġcom . j esse cor bet t . disk ord . api . gateway . events .* Ċ import Ġcom . j esse cor bet t . disk ord . api . gateway . model . Gateway Intent Ċ import Ġkotlinx . serialization . json . Json Element Ċ Ċ internal Ġclass ĠGateway Intent s Computer Ġ: ĠEvent Dispatcher < Unit > Ġ{ ĊĠĠĠ Ġval Ġintent s : ĠMutable List < Gateway Intent > Ġ= Ġmutable ListOf () ĊĊĠĠĠ Ġoverride Ġfun Ġon Ready ( handler : Ġsuspend Ġ( Ready ) Ġ-> ĠUnit ) Ġ{} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume ( handler : Ġsuspend Ġ( Res umed ) Ġ-> ĠUnit ) Ġ{} ĊĊĠĠĠ Ġoverride Ġfun Ġon Channel Create ( handler : Ġsuspend Ġ( Channel ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Channel Update ( handler : Ġsuspend Ġ( Channel ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Channel Delete ( handler : Ġsuspend Ġ( Channel ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Channel P ins Update ( handler : Ġsuspend Ġ( Channel Pin Update ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Create ( handler : Ġsuspend Ġ( Guild ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Update ( handler : Ġsuspend Ġ( Guild ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Delete ( handler : Ġsuspend Ġ( Unavailable Guild ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Ban Add ( handler : Ġsuspend Ġ( Guild Ban ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ BAN S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Ban Remove ( handler : Ġsuspend Ġ( Guild Ban ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ BAN S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Emoji Update ( handler : Ġsuspend Ġ( Guild Emoji Update ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ E MO J IS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Integr ations Update ( handler : Ġsuspend Ġ( Guild Integration Update ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ INTEGR ATIONS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Member Add ( handler : Ġsuspend Ġ( Guild Member Add ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MEMBER S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Member Update ( handler : Ġsuspend Ġ( Guild Member Update ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MEMBER S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Member Remove ( handler : Ġsuspend Ġ( Guild Member Remove ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MEMBER S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Members Chunk ( handler : Ġsuspend Ġ( Guild Members Chunk ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MEMBER S Ġ// ĠNot Ġtechnically Ġnecessary , Ġbut Ġsafe Ġto Ġassume Ġby Ġdefault ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Role Create ( handler : Ġsuspend Ġ( Guild Role Create ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Role Update ( handler : Ġsuspend Ġ( Guild Role Update ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Role Delete ( handler : Ġsuspend Ġ( Guild Role Delete ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU IL DS ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Invite Create ( handler : Ġsuspend Ġ( Guild Invite Create ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ INV ITES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Guild Invite Delete ( handler : Ġsuspend Ġ( Guild Invite Delete ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ INV ITES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Create ( handler : Ġsuspend Ġ( Message ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGES ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Update ( handler : Ġsuspend Ġ( Message ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGES ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Delete ( handler : Ġsuspend Ġ( Message Delete ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGES ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Delete Bulk ( handler : Ġsuspend Ġ( Bulk Message Delete ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Reaction Add ( handler : Ġsuspend Ġ( Message Reaction Add ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGE _ RE ACTION S ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGE _ RE ACTION S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Reaction Remove ( handler : Ġsuspend Ġ( Message Reaction Remove ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGE _ RE ACTION S ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGE _ RE ACTION S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Reaction RemoveAll ( handler : Ġsuspend Ġ( Message Reaction RemoveAll ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGE _ RE ACTION S ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGE _ RE ACTION S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Reaction Remove Emoji ( handler : Ġsuspend Ġ( Message Reaction Remove Emoji ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGE _ RE ACTION S ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGE _ RE ACTION S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Presence Update ( handler : Ġsuspend Ġ( Presence Update ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ PRES ENCES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Typing Start ( handler : Ġsuspend Ġ( Typing Start ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ MESSAGE _ TY PING ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . DIRECT _ MESSAGE _ TY PING ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon User Update ( handler : Ġsuspend Ġ( User ) Ġ-> ĠUnit ) Ġ{} ĊĊĠĠĠ Ġoverride Ġfun Ġon Voice State Update ( handler : Ġsuspend Ġ( Voice State ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ VOICE _ STAT ES ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Voice Server Update ( handler : Ġsuspend Ġ( Voice Server Update ) Ġ-> ĠUnit ) Ġ{} ĊĊĠĠĠ Ġoverride Ġfun Ġon Webhook Update ( handler : Ġsuspend Ġ( Webhook Update ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent s Ġ+= ĠGateway Intent . GU ILD _ WEB HOOK S ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġ< C > Ġfor Type (): ĠEvent Dispatcher < C > Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠNotImplementedError (" for Type Ġintention ally Ġnot Ġimplemented Ġfor Ġthis Ġclass ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġhandle Event ( event : ĠDiscord Event , Ġjson : ĠJson Element ): ĠList < Unit > Ġ= Ġempty List () Ċ } Ċ