airdcpp-apisocket
Version:
Javascript connector for AirDC++ Web API
25 lines (24 loc) • 800 B
TypeScript
export type CompletionIdType = number;
import { ErrorBase, FieldError, EntityId } from './api.js';
export interface RequestResponseBase {
code: number;
callback_id: number;
}
export interface RequestSuccessResponse<DataT extends object | undefined = object | undefined> extends RequestResponseBase {
data?: DataT;
}
export interface RequestErrorResponse extends RequestResponseBase {
error: ErrorBase | FieldError;
}
export interface OutgoingRequest<DataT extends object | undefined = object | undefined> {
path: string;
method: string;
data: DataT;
callback_id: number;
}
export interface IncomingSubscriptionEvent<DataT extends object | undefined = object | undefined> {
event: string;
data: DataT;
completion_id?: CompletionIdType;
id?: EntityId;
}