@@ -110,3 +110,88 @@ async def delete_guild_emoji(
110
110
Route ("DELETE" , "/guilds/{guild_id}/emojis/{emoji_id}" , guild_id = guild_id , emoji_id = emoji_id ),
111
111
reason = reason ,
112
112
)
113
+
114
+ async def get_application_emojis (self , application_id : "Snowflake_Type" ) -> list [discord_typings .EmojiData ]:
115
+ """
116
+ Fetch all emojis for this application
117
+
118
+ Args:
119
+ application_id: The id of the application
120
+
121
+ Returns:
122
+ List of emojis
123
+
124
+ """
125
+ result = await self .request (Route ("GET" , f"/applications/{ application_id } /emojis" ))
126
+ result = cast (dict , result )
127
+ return cast (list [discord_typings .EmojiData ], result ["items" ])
128
+
129
+ async def get_application_emoji (
130
+ self , application_id : "Snowflake_Type" , emoji_id : "Snowflake_Type"
131
+ ) -> discord_typings .EmojiData :
132
+ """
133
+ Fetch an emoji for this application
134
+
135
+ Args:
136
+ application_id: The id of the application
137
+ emoji_id: The id of the emoji
138
+
139
+ Returns:
140
+ Emoji object
141
+
142
+ """
143
+ result = await self .request (Route ("GET" , f"/applications/{ application_id } /emojis/{ emoji_id } " ))
144
+ return cast (discord_typings .EmojiData , result )
145
+
146
+ async def create_application_emoji (
147
+ self , payload : dict , application_id : "Snowflake_Type" , reason : str | None = None
148
+ ) -> discord_typings .EmojiData :
149
+ """
150
+ Create an emoji for this application
151
+
152
+ Args:
153
+ application_id: The id of the application
154
+ name: The name of the emoji
155
+ imagefile: The image file to use for the emoji
156
+
157
+ Returns:
158
+ Emoji object
159
+
160
+ """
161
+ result = await self .request (
162
+ Route ("POST" , f"/applications/{ application_id } /emojis" ), payload = payload , reason = reason
163
+ )
164
+ return cast (discord_typings .EmojiData , result )
165
+
166
+ async def edit_application_emoji (
167
+ self , application_id : "Snowflake_Type" , emoji_id : "Snowflake_Type" , name : str
168
+ ) -> discord_typings .EmojiData :
169
+ """
170
+ Edit an emoji for this application
171
+
172
+ Args:
173
+ application_id: The id of the application
174
+ emoji_id: The id of the emoji
175
+ name: The new name for the emoji
176
+
177
+ Returns:
178
+ Emoji object
179
+
180
+ """
181
+ result = await self .request (
182
+ Route ("PATCH" , f"/applications/{ application_id } /emojis/{ emoji_id } " ), payload = {"name" : name }
183
+ )
184
+ return cast (discord_typings .EmojiData , result )
185
+
186
+ async def delete_application_emoji (
187
+ self , application_id : discord_typings .Snowflake , emoji_id : discord_typings .Snowflake
188
+ ) -> None :
189
+ """
190
+ Delete an emoji for this application
191
+
192
+ Args:
193
+ application_id: The id of the application
194
+ emoji_id: The id of the emoji
195
+
196
+ """
197
+ await self .request (Route ("DELETE" , f"/applications/{ application_id } /emojis/{ emoji_id } " ))
0 commit comments