64 lines
1.4 KiB
TypeScript
64 lines
1.4 KiB
TypeScript
|
import { MSAgentProtocolMessage, MSAgentProtocolMessageType } from "./protocol";
|
||
|
|
||
|
export enum MSAgentAdminOperation {
|
||
|
// Client-to-server
|
||
|
Kick = "kick",
|
||
|
Ban = "ban",
|
||
|
// Bidirectional
|
||
|
Login = "login",
|
||
|
GetIP = "ip",
|
||
|
}
|
||
|
|
||
|
export interface MSAgentAdminMessage extends MSAgentProtocolMessage {
|
||
|
op: MSAgentProtocolMessageType.Admin,
|
||
|
data: {
|
||
|
action: MSAgentAdminOperation
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Client-to-server
|
||
|
|
||
|
export interface MSAgentAdminLoginMessage extends MSAgentAdminMessage {
|
||
|
data: {
|
||
|
action: MSAgentAdminOperation.Login,
|
||
|
password: string
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export interface MSAgentAdminGetIPMessage extends MSAgentAdminMessage {
|
||
|
data: {
|
||
|
action: MSAgentAdminOperation.GetIP,
|
||
|
username: string
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export interface MSAgentAdminKickMessage extends MSAgentAdminMessage {
|
||
|
data: {
|
||
|
action: MSAgentAdminOperation.Kick,
|
||
|
username: string
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export interface MSAgentAdminBanMessage extends MSAgentAdminMessage {
|
||
|
data: {
|
||
|
action: MSAgentAdminOperation.Ban,
|
||
|
username: string
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Server-to-client
|
||
|
|
||
|
export interface MSAgentAdminLoginResponse extends MSAgentAdminMessage {
|
||
|
data: {
|
||
|
action: MSAgentAdminOperation.Login,
|
||
|
success: boolean
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export interface MSAgentAdminGetIPResponse extends MSAgentAdminMessage {
|
||
|
data: {
|
||
|
action: MSAgentAdminOperation.GetIP,
|
||
|
username: string
|
||
|
ip: string
|
||
|
}
|
||
|
}
|