UNPKG

@wevu/web-apis

Version:

Web API polyfills and global installers for mini-program runtimes

59 lines (58 loc) 1.87 kB
import { RequestGlobalsEventTarget } from "./shared.mjs"; import { WebSocketMiniProgramOptions } from "./networkDefaults.mjs"; import { BlobPolyfill } from "./web.mjs"; //#region src/websocket.d.ts type WebSocketBinaryType = 'blob' | 'arraybuffer'; type WebSocketSendData = string | ArrayBuffer | ArrayBufferView | Blob; type WebSocketMessageData = string | ArrayBuffer | Blob | BlobPolyfill; interface WebSocketCloseEventLike { code: number; reason: string; type: 'close'; wasClean: boolean; } interface WebSocketErrorEventLike { error?: unknown; message?: string; type: 'error'; } interface WebSocketMessageEventLike { data: WebSocketMessageData; origin: string; type: 'message'; } interface WebSocketPolyfillInit { protocols?: string | string[]; miniProgram?: WebSocketMiniProgramOptions; miniprogram?: WebSocketMiniProgramOptions; } declare class WebSocketPolyfill extends RequestGlobalsEventTarget { static readonly CONNECTING = 0; static readonly OPEN = 1; static readonly CLOSING = 2; static readonly CLOSED = 3; readonly CONNECTING = 0; readonly OPEN = 1; readonly CLOSING = 2; readonly CLOSED = 3; readonly extensions = ""; readonly protocol = ""; readonly url: string; binaryType: WebSocketBinaryType; bufferedAmount: number; readyState: number; onclose: ((event: WebSocketCloseEventLike) => void) | null; onerror: ((event: WebSocketErrorEventLike) => void) | null; onmessage: ((event: WebSocketMessageEventLike) => void) | null; onopen: ((event: { type: 'open'; }) => void) | null; private socketTask?; constructor(url: string, protocols?: string | string[] | WebSocketPolyfillInit); close(code?: number, reason?: string): void; send(data: WebSocketSendData): void; private closeFromRuntime; private emitError; } //#endregion export { WebSocketPolyfill, WebSocketPolyfillInit };