@commands.command(hidden=True, aliases=['list_slash_commands', 'listslashcmds'])
async def list_slash_cmds(self, ctx: utils.SeraContextBase, guild: typing.Optional[discord.Guild]):
    if (not guild):
        app_cmds = (await ctx.bot.http.get_global_commands(ctx.bot.application_id))
    else:
        app_cmds = (await ctx.bot.http.get_guild_commands(ctx.bot.application_id, guild.id))
    slash_entries = []
    if (not app_cmds):
        raise commands.BadArgument('This guild/bot does not have any specific slash commands.')
    for entry in app_cmds:
        if (entry.get('type', 0) == 1):
            entry_str_list = []
            if entry['description']:
                entry_str_list.append(entry['description'])
            else:
                entry_str_list.append('No description provided.')
            if entry.get('options'):
                entry_str_list.append('__Arguments:__')
                for option in entry['options']:
                    option: ApplicationCommandOption
                    option_type = self.OptionTypeEnum(option['type']).name
                    required_txt = (', required' if option['required'] else '')
                    entry_str_list.append(f"{option['name']} (type {option_type}{required_txt}) - {option['description']}")
            slash_entries.append((f"{entry['name']} - ID {entry['id']}", '\n'.join(entry_str_list)))
    if (not slash_entries):
        raise commands.BadArgument('This guild/bot does not have any specific slash commands.')
    pages = paginator.FieldPages(ctx, entries=slash_entries, per_page=6)
    (await pages.paginate())
@commands.command(hidden=True, aliases=['list_slash_commands', 'listslashcmds'])
async def list_slash_cmds(self, ctx: utils.SeraContextBase, guild: typing.Optional[discord.Guild]):
    if (not guild):
        app_cmds = (await ctx.bot.http.get_global_commands(ctx.bot.application_id))
    else:
        app_cmds = (await ctx.bot.http.get_guild_commands(ctx.bot.application_id, guild.id))
    slash_entries = []
    if (not app_cmds):
        raise commands.BadArgument('This guild/bot does not have any specific slash commands.')
    for entry in app_cmds:
        if (entry.get('type', 0) == 1):
            entry_str_list = []
            if entry['description']:
                entry_str_list.append(entry['description'])
            else:
                entry_str_list.append('No description provided.')
            if entry.get('options'):
                entry_str_list.append('__Arguments:__')
                for option in entry['options']:
                    option: ApplicationCommandOption
                    option_type = self.OptionTypeEnum(option['type']).name
                    required_txt = (', required' if option['required'] else )
                    entry_str_list.append(f"{option['name']} (type {option_type}{required_txt}) - {option['description']}")
            slash_entries.append((f"{entry['name']} - ID {entry['id']}", '\n'.join(entry_str_list)))
    if (not slash_entries):
        raise commands.BadArgument('This guild/bot does not have any specific slash commands.')
    pages = paginator.FieldPages(ctx, entries=slash_entries, per_page=6)
    (await pages.paginate())