agora-rdc-core
Version:
162 lines (161 loc) • 3.41 kB
TypeScript
export interface RDCAbstractEvent {
/**
* controlled user's userId
*/
userId: string;
}
export interface RDCKeyboardEvent extends RDCAbstractEvent {
/**
* keyCode keyboard event key code
*/
keyCode: number;
/**
* whether or not press `ctrl` at same time? default is `undefined`
*/
isCompoundCtrl?: boolean;
/**
* whether or not press `alt` at same time? default is `undefined`
*/
isCompoundAlt?: boolean;
/**
* whether or not press `shift` at same time? default is `undefined`
*/
isCompoundShift?: boolean;
}
export interface RDCMouseEvent extends RDCAbstractEvent {
/**
* type mouse event type @typedef MouseEventType
*/
type: RDCMouseEventType;
/**
* mouse event x of point
*/
x: number;
/**
* mouse event y of point
*/
y: number;
/**
* delta can be undefined if it's not captured
*/
delta?: number;
}
export interface RDCAddonOptions {
log_level: number;
log_path: string;
log_name: string;
kb_buff_ms: number;
mouse_buff_ms: number;
}
export declare enum RDCAddonEvents {
LOGIN = "login",
STATE = "state",
SEND_RESULT = "send_result",
MSG = "msg",
CTRL_REQ = "ctrl_req",
QUIT_REQ = "quit_req",
GETTING_FOCUS = "hold_control",
MOUSE_STATUS = "mouse_status",
UPLOAD_RESULT = "upload_result",
PASTED = "pasted",
REMOTE_PASTED = "remote_pasted",
OBSERVATION = "bc_data",
REMOTE_END_INFO = "remote_info"
}
export declare enum RDCClipboardContentType {
UNKNOWN = 0,
TEXT = 2,
FILE = 1
}
export declare enum RDCMouseEventType {
LEFT_CLICK = 1,
LEFT_DBL_CLICK = 2,
RIGHT_CLICK = 3,
RIGHT_DBL_CLICK = 4,
MID_CLICK = 5,
WHEEL = 6,
MOVE = 7,
DRAG_BEGIN = 8,
DRAG_MOVE = 9,
DRAG_END = 10
}
export declare enum RDCJoinErrorCode {
/**
* Unknown error
*/
UNKNOWN_ERROR = 1,
/**
* Server_rejected
*/
SERVER_REJECTED = 2,
/**
* Invalid login argument
*/
INVALID_LOGIN_ARGUMENT = 3,
/**
* Invalid app id
*/
INVALID_APP_ID = 4,
/**
* Invalid token
*/
INVALID_TOKEN = 5,
/**
* Token expired
*/
TOKEN_EXPIRED = 6,
/**
* Authorize fail
*/
AUTHORIZE_FAIL = 7,
/**
* Duplicated login
*/
DUPLICATED_LOGIN = 8,
/**
* Timeout
*/
TIMEOUT = 9,
/**
* Login too often
*/
LOGIN_TOO_OFTEN = 10,
/**
* Not initialized
*/
NOT_INITIALIZED = 101
}
export declare enum RDCEngineState {
/**
* Engine initialized
*/
INITIALIZED = 1,
/**
* Logged in
*/
LOGGED_IN = 2,
/**
* Logged out
*/
LOGGED_OUT = 3,
/**
* Engine Connected
*/
CONNECTED = 4,
/**
* Engine Disconnect
*/
DISCONNECT = 5
}
export declare type RDCEventCallback = (event: string, code: number, message: string) => void;
/**
* @see https://developer.mozilla.org/zh-CN/docs/Web/CSS/cursor
*/
export declare type RDCCursor = 'default' | 'text' | 'wait' | 'crosshair' | 'nwse-resize' | 'nesw-resize' | 'ew-resize' | 'ns-resize' | 'all-scroll' | 'not-allowed' | 'pointer' | 'progress' | 'help';
export interface RDCRemoteEndInfo {
peer: string;
os: string;
ver: string;
w: number;
h: number;
}