UNPKG

amesu

Version:
195 lines (194 loc) 8.04 kB
import type { Request, Result } from '../utils'; import type { Guild } from '../model/guild'; import type { Member, Role } from '../model/member'; import type { ApiPermission, ApiPermissionDemand, ApiPermissionDemandIdentify } from '../model/permission'; import type { Channel, ChannelSubType, ChannelType, PrivateType, SpeakPermission } from '../model/channel'; import { MessageSetting } from '../model/message'; import { Announce, RecommendChannel } from '../model/announce'; export interface CreateGuildChannelParams { /** 子频道名称 */ name: string; /** 子频道类型 */ type: ChannelType; /** 子频道子类型 */ sub_type: ChannelSubType; /** 子频道排序,必填;当子频道类型为 子频道分组(ChannelType=4)时,必须大于等于 2 */ position: number; /** 子频道所属分组ID */ parent_id: string; /** 子频道私密类型 */ private_type: PrivateType; /** 子频道私密类型成员 ID */ private_user_ids: string[]; /** 子频道发言权限 */ speak_permission: SpeakPermission; /** 应用类型子频道应用 AppID,仅应用子频道需要该字段 */ application_id: string; } export interface GetGuildMembersParams { /** 将上一次回包中next填入, 如果是第一次请求填 0,默认为 0 */ start_index: string; /** 分页大小,1-400,默认是 1。成员较多的频道尽量使用较大的 limit 值,以减少请求数 */ limit: number; } export interface GuildRoleMembers { data: Member[]; next: string; } export interface DeleteGuildUserMemberParams { /** 删除成员的同时,将该用户添加到频道黑名单中 */ add_blacklist: boolean; /** 删除成员的同时,撤回该成员的消息,可以指定撤回消息的时间范围 */ delete_history_msg_days: number; } export interface GuildRoles { /** 频道 ID */ guild_id: string; /** 一组频道身份组对象 */ roles: Role[]; /** 默认分组上限 */ role_num_limit: string; } export interface GuildRoleParams { /** 名称 */ name?: string; /** ARGB 的 HEX 十六进制颜色值转换后的十进制数值 */ color?: number; /** 在成员列表中单独展示: 0-否, 1-是 */ hoist?: number; } export interface CreateGuildRole { /** 身份组 ID */ role_id: string; /** 所创建的频道身份组对象 */ role: Role[]; } export interface UpdateGuildRole { /** 频道 ID */ guild_id: string; /** 身份组 ID */ role_id: string; /** 所创建的频道身份组对象 */ role: Role[]; } export interface GuildMemberRoleParams { channel: Pick<Channel, 'id'>; } export interface GuildApiPermissions { apis: ApiPermission[]; } export interface SendGuildApiPermissionDemandParams { /** 授权链接发送的子频道 id */ channel_id: string; /** api 权限需求标识对象 */ api_identify: ApiPermissionDemandIdentify[]; /** 机器人申请对应的 API 接口权限后可以使用功能的描述 */ desc: string; } export interface GuildMuteParams { /** 禁言到期时间戳,绝对时间戳,单位:秒(与 mute_seconds 字段同时赋值的话,以该字段为准) */ mute_end_timestamp?: string; /** 禁言多少秒(两个字段二选一,默认以 mute_end_timestamp 为准) */ mute_seconds?: string; } export interface GuildMembersMuteParams extends GuildMuteParams { /** 禁言成员的 user_id 列表,即 User 的 id */ user_ids: string[]; } export interface CreateGuildAnnounceParams { /** 选填,消息 id,message_id 有值则优选将某条消息设置为成员公告 */ message_id: string; /** 选填,子频道 id,message_id 有值则为必填。 */ channel_id: string; /** 选填,公告类别 0:成员公告,1:欢迎公告,默认为成员公告 */ announces_type: number; /** 选填,推荐子频道列表,会一次全部替换推荐子频道列表 */ recommend_channels: RecommendChannel[]; } declare const _default: (request: Request) => { /** * 获取 `guild_id` 指定的频道的详情。 */ getGuildInfo(guild_id: string): Promise<Result<Guild>>; /** * 获取 guild_id 指定的频道下的子频道列表。 */ getGuildChannels(guild_id: string): Promise<Result<Channel[]>>; /** * 在 guild_id 指定的频道下创建一个子频道。 */ createGuildChannel(guild_id: string, params: CreateGuildChannelParams): Promise<Result<Channel>>; /** * 获取 guild_id 指定的频道中所有成员的详情列表,支持分页。 */ getGuildMembers(guild_id: string, after?: string, limit?: number): Promise<Result<Member[]>>; /** * 获取 guild_id 频道中指定 role_id 身份组下所有成员的详情列表,支持分页。 */ getGuildRoleMembers(guild_id: string, role_id: string, params: GetGuildMembersParams): Promise<Result<GuildRoleMembers>>; /** * 获取 guild_id 指定的频道中 user_id 对应成员的详细信息。 */ getGuildUserMember(guild_id: string, user_id: string): Promise<Result<Member>>; /** * 删除 guild_id 指定的频道下的成员 user_id。 */ deleteGuildUserMember(guild_id: string, user_id: string, params: DeleteGuildUserMemberParams): Promise<Result>; /** * 获取 guild_id 指定的频道下的身份组列表。 */ getGuildRoles(guild_id: string): Promise<Result<GuildRoles>>; /** * 用于在 guild_id 指定的频道下创建一个身份组。 */ createGuildRole(guild_id: string, params: GuildRoleParams): Promise<Result<CreateGuildRole>>; /** * 修改频道 guild_id 下 role_id 指定的身份组。 */ updateGuildRole(guild_id: string, role_id: string, params: GuildRoleParams): Promise<Result<UpdateGuildRole>>; /** * 删除频道 guild_id下 role_id 对应的身份组。 */ deleteGuildRole(guild_id: string, role_id: string): Promise<Result>; /** * 将频道 guild_id 下的用户 user_id 添加到身份组 role_id 。 */ addGuildMemberRole(guild_id: string, user_id: string, role_id: string, params?: GuildMemberRoleParams): Promise<Result>; /** * 将用户 user_id 从 频道 guild_id 的 role_id 身份组中移除。 */ deleteGuildMemberRole(guild_id: string, user_id: string, role_id: string, params?: GuildMemberRoleParams): Promise<Result>; /** * 用于获取机器人在频道 guild_id 内可以使用的权限列表。 */ getGuildApiPermissions(guild_id: string): Promise<Result<GuildApiPermissions>>; /** * 发送机器人在频道接口权限的授权链接。 */ sendGuildApiPermissionDemand(guild_id: string, params: SendGuildApiPermissionDemandParams): Promise<Result<ApiPermissionDemand>>; /** * 用于获取机器人在频道 guild_id 内的消息频率设置。 */ getGuildMessageSetting(guild_id: string): Promise<Result<MessageSetting>>; /** * 用于将频道的全体成员(非管理员)禁言。 */ guildMute(guild_id: string, params: GuildMuteParams): Promise<Result>; /** * 用于禁言频道 guild_id 下的成员 user_id。 */ guildMemberMute(guild_id: string, user_id: string, params: GuildMuteParams): Promise<Result>; /** * 用于将频道的指定批量成员(非管理员)禁言。 */ guildMembersMute(guild_id: string, params: GuildMembersMuteParams): Promise<Result>; /** * 用于创建频道全局公告,公告类型分为 消息类型的频道公告 和 推荐子频道类型的频道公告 。 */ createGuildAnnounce(guild_id: string, params: CreateGuildAnnounceParams): Promise<Result<Announce>>; /** * 用于删除频道 guild_id 下指定 message_id 的全局公告。 */ deleteGuildAnnounce(guild_id: string, message_id: string): Promise<Result>; }; export default _default;