UNPKG

amesu

Version:
175 lines (174 loc) 6.76 kB
/// <reference types="node" /> import type { Request, Result } from '../utils'; import type { Schedule } from '../model/schedule'; import type { AudioControl } from '../model/audio'; import type { Format, Thread, ThreadInfo } from '../model/forum'; import type { Channel, ChannelPermission, PrivateType, SpeakPermission } from '../model/channel'; import type { Message, MessageArk, MessageEmbed, MessageMarkdown, MessageReference, PinMessage } from '../model/message'; /** * @link https://bot.q.qq.com/wiki/develop/api-v2/server-inter/message/post_messages.html#%E9%80%9A%E7%94%A8%E5%8F%82%E6%95%B0 */ export interface SendChannelMessageParams { /** 消息内容 */ content?: string; /** embed 消息 */ embed?: MessageEmbed; /** ark 消息对象 */ ark?: MessageArk; /** 引用消息对象 */ message_reference?: MessageReference; /** 图片 url 地址,平台会转存该图片,用于下发图片消息 */ image?: string; /** 要回复的消息 id, 在 `at.create.message` 事件中获取。 */ msg_id?: string; /** 要回复的事件 id, 在各事件对象中获取。 */ event_id?: string; /** markdown 消息对象 */ markdown?: MessageMarkdown; /** 通过文件上传的方式发送图片。 */ file_image?: Blob; } export interface UpdateChannelMessageParams { /** 子频道名 */ name?: string; /** 排序 */ position?: number; /** 分组 id */ parent_id?: string; /** 子频道私密类型 */ private_type?: PrivateType; /** 子频道发言权限 */ speak_permission?: SpeakPermission; } export interface ChannelOnlineNum { online_nums: number; } export interface UpdateChannelPermissionParams { /** 字符串形式的位图表示赋予用户的权限 */ add: string; /** 字符串形式的位图表示删除用户的权限 */ remove: string; } export interface ChannelScheduleParams { schedule: Omit<Schedule, 'id'>; } export interface ChannelMicParams { channel_id: string; } export interface ChannelThread { /** 帖子列表对象 */ threads: Thread; /** 是否拉取完毕(0:否;1:是) */ is_finish: number; } export interface CreateChannelThreadParams { /** 帖子标题 */ title: string; /** 帖子内容 */ content: string; /** 帖子文本格式 */ format: Format; } declare const _default: (request: Request) => { /** * 用于向 channel_id 指定的子频道发送消息。 */ sendChannelMessage(channel_id: string, params: SendChannelMessageParams): Promise<Result<Message>>; /** * 用于撤回子频道 channel_id 下的消息 message_id。 */ deleteChannelMessage(channel_id: string, message_id: string, hidetip?: boolean): Promise<Result>; /** * 获取 channel_id 指定的子频道的详情。 */ getChannelInfo(channel_id: string): Promise<Result<Channel>>; /** * 修改 channel_id 指定的子频道的信息。 */ updateChannelInfo(channel_id: string, params: UpdateChannelMessageParams): Promise<Result<Channel>>; /** * 删除 channel_id 指定的子频道。 */ deleteChannel(channel_id: string): Promise<Result>; /** * 获取子频道在线成员数。 */ getChannelOnlineNum(channel_id: string): Promise<Result<ChannelOnlineNum>>; /** * 获取子频道 channel_id 下用户 user_id 的权限。 */ getChannelMemberPermission(channel_id: string, user_id: string): Promise<Result<ChannelPermission>>; /** * 用于修改子频道 channel_id 下用户 user_id 的权限。 */ updateChannelMemberPermission(channel_id: string, user_id: string, params: UpdateChannelPermissionParams): Promise<Result>; /** * 获取子频道 channel_id 下身份组 role_id 的权限。 */ getChannelRolePermission(channel_id: string, role_id: string): Promise<Result<ChannelPermission>>; /** * 修改子频道 channel_id 下身份组 role_id 的权限。 */ updateChannelRolePermission(channel_id: string, role_id: string, params: UpdateChannelPermissionParams): Promise<Result>; /** * 用于添加子频道 channel_id 内的精华消息。 */ addChannelPin(channel_id: string, message_id: string): Promise<Result<PinMessage>>; /** * 用于删除子频道 channel_id 下指定 message_id 的精华消息。 */ deleteChannelPin(channel_id: string, message_id: string): Promise<Result>; /** * 用于获取子频道 channel_id 内的精华消息。 */ getChannelPin(channel_id: string): Promise<Result<PinMessage>>; /** * 用于获取channel_id指定的子频道中当天的日程列表。 */ getChannelSchedule(channel_id: string, since?: number): Promise<Result<Schedule>>; /** * 获取日程子频道 channel_id 下 schedule_id 指定的的日程的详情。 */ getChannelScheduleInfo(channel_id: string, schedule_id: string): Promise<Result<Schedule>>; /** * 用于在 channel_id 指定的日程子频道下创建一个日程。 */ createChannelSchedule(channel_id: string, params: ChannelScheduleParams): Promise<Result<Schedule>>; /** * 用于修改日程子频道 channel_id 下 schedule_id 指定的日程的详情。 */ updateChannelSchedule(channel_id: string, schedule_id: string, params: ChannelScheduleParams): Promise<Result<Schedule>>; /** * 用于删除日程子频道 channel_id 下 schedule_id 指定的日程。 */ deleteChannelSchedule(channel_id: string, schedule_id: string): Promise<Result>; /** * 用于控制子频道 channel_id 下的音频。 */ channelAudioControl(channel_id: string, params: AudioControl): Promise<Result>; /** * 机器人在 channel_id 对应的语音子频道上麦。 */ channelMicOn(channel_id: string, params: ChannelMicParams): Promise<Result>; /** * 机器人在 channel_id 对应的语音子频道下麦。 */ channelMicOff(channel_id: string, params: ChannelMicParams): Promise<Result>; /** * 该接口用于获取子频道下的帖子列表。 */ getChannelThread(channel_id: string): Promise<Result<ChannelThread>>; /** * 该接口用于获取子频道下的帖子详情。 */ getChannelThreadInfo(channel_id: string, thread_id: string): Promise<Result<ThreadInfo>>; /** * 发表帖子。 */ createChannelThread(channel_id: string, params: CreateChannelThreadParams): Promise<Result<ChannelThread>>; /** * 用于删除指定子频道下的某个帖子。 */ deleteChannelThread(channel_id: string, thread_id: string): Promise<Result>; }; export default _default;