koishi-plugin-adapter-iirose
Version:
IIROSE-[蔷薇花园](https://iirose.com/)适配器
109 lines (108 loc) • 3.5 kB
TypeScript
import { MessageType } from './decoder';
import { IIROSE_Bot } from './bot';
import { Stock } from './decoder/Stock';
import { Fragment, Session } from 'koishi';
import { GetUserListCallback } from './decoder/GetUserListCallback';
export interface kickData {
username: string;
}
export interface cutOne {
id?: string;
}
export interface setMaxUser {
maxMember: number;
}
export interface whiteList {
username: string;
time: string;
intro?: string;
}
export interface damaku {
message: string;
color: string | '66ccff';
}
export interface move {
roomId: string;
roomPassword?: string;
}
export interface EventsCallBackOrigin {
type: string;
userId?: string;
username?: string;
timestamp?: number;
author?: {
userId: string;
avatar: string;
username: string;
};
platform: 'iirose';
guildId?: string;
selfId?: string;
bot?: IIROSE_Bot;
channelId?: string;
send: (data: {
public?: {
message: Fragment;
};
private?: {
message: Fragment;
userId: string;
};
}) => void;
data?: any;
}
export interface musicOrigin {
type: 'music' | 'video';
name: string;
signer: string;
cover: string;
link: string;
url: string;
duration: number;
bitRate: number;
color: string;
lyrics: string;
origin: 'netease' | 'bilibili' | 'null' | 'undefined' | null;
}
export interface StockGet {
(stockData: Stock): void;
}
export interface StockSession extends Stock {
send?: (data: {
public?: {
message: Fragment;
};
private?: {
message: Fragment;
userId: string;
};
}) => void;
bot?: IIROSE_Bot;
}
export interface Events {
'iirose/leaveRoom'(session: Session, data: MessageType['leaveRoom']): void;
'iirose/joinRoom'(session: Session, data: MessageType['joinRoom']): void;
'iirose/newDamaku'(session: Session, data: MessageType['damaku']): void;
'iirose/switchRoom'(session: Session, data: MessageType['switchRoom']): void;
'iirose/newMusic'(session: Session, data: MessageType['music']): void;
'iirose/before-payment'(session: Session, data: MessageType['paymentCallback']): void;
'iirose/before-getUserList'(session: Session, data: GetUserListCallback[]): void;
'iirose/before-userProfile'(session: Session, data: MessageType['userProfileCallback']): void;
'iirose/before-bank'(session: Session, data: MessageType['bankCallback']): void;
'iirose/before-mediaList'(session: Session, data: MessageType['mediaListCallback']): void;
'iirose/selfMove'(session: Session, data: MessageType['selfMove']): void;
'iirose/BeforeMoveRoomStart'(session: Session, data: MessageType['beforeMoveRoomStart']): void;
'iirose/mailboxMessage'(session: Session, data: MessageType['mailboxMessage']): void;
'iirose/kick'(kickData: kickData): void;
'iirose/cut-one'(cutOne: cutOne): void;
'iirose/cut-all'(): void;
'iirose/setMaxUser'(setMaxUser: setMaxUser): void;
'iirose/whiteList'(whiteList: whiteList): void;
'iirose/damaku'(damaku: damaku): void;
'iirose/moveRoom'(move: move): void;
'iirose/makeMusic'(musicOrigin: musicOrigin): void;
'iirose/stockSell'(numberData: number): void;
'iirose/stockBuy'(numberData: number): void;
'iirose/stockGet'(callBack: StockGet): void;
'iirose/stockBackCall'(stockData: StockSession): void;
}