export type ObjectValues = T[keyof T]; export const C2SRequestTypes = { HTTPRequest: 0, WSOpen: 1, WSClose: 2, WSSendText: 3, WSSendBinary: 4, } as const; export type C2SRequestType = ObjectValues; export const S2CRequestTypes = { HTTPResponseStart: 0, HTTPResponseChunk: 1, HTTPResponseEnd: 2, WSOpen: 3, WSDataText: 4, WSDataBinary: 5, WSClose: 6, WSError: 7, } as const; export type S2CRequestType = ObjectValues; export type ProtoBareHeaders = Record; export type HTTPRequestPayload = { method: string; requestHeaders: ProtoBareHeaders; body: string | null; remote: URL; }; export type HTTPResponsePayload = { status: number; statusText: string; headers: ProtoBareHeaders; }; export type C2SWSOpenPayload = { url: string; }; export type WSClosePayload = { code: number; reason: string; wasClean: boolean; }; export type WSErrorPayload = { message: string; }; export { Transport } from "./Transport";