tairitsu-web 0.5.21

Tairitsu Web Framework - Modular WebAssembly-first framework with SSR, CSR, SSG support
/// Auto-generated interfaces from domain: websocket
///
/// AUTO-GENERATED by: scripts/generate_browser_wit.py
/// DO NOT EDIT MANUALLY — changes will be overwritten.
///
/// Source: wit/generated/websocket.wit
/// Regenerate with: just wit-gen

interface web-socket {
    /// Opaque handle to a host-side `WebSocket` instance.
    type web-socket-handle = u64;

    /// `url` attribute — getter.
    get-url: func(self: web-socket-handle) -> string;

    /// `readyState` attribute — getter.
    get-ready-state: func(self: web-socket-handle) -> u16;

    /// `bufferedAmount` attribute — getter.
    get-buffered-amount: func(self: web-socket-handle) -> u64;

    /// `onopen` attribute — getter.
    get-onopen: func(self: web-socket-handle) -> u64;
    /// `onopen` attribute — setter.
    set-onopen: func(self: web-socket-handle, value: u64);

    /// `onerror` attribute — getter.
    get-onerror: func(self: web-socket-handle) -> u64;
    /// `onerror` attribute — setter.
    set-onerror: func(self: web-socket-handle, value: u64);

    /// `onclose` attribute — getter.
    get-onclose: func(self: web-socket-handle) -> u64;
    /// `onclose` attribute — setter.
    set-onclose: func(self: web-socket-handle, value: u64);

    /// `extensions` attribute — getter.
    get-extensions: func(self: web-socket-handle) -> string;

    /// `protocol` attribute — getter.
    get-protocol: func(self: web-socket-handle) -> string;

    /// `close()` operation.
    close: func(self: web-socket-handle, code: option<u16>, reason: option<string>);

    /// `onmessage` attribute — getter.
    get-onmessage: func(self: web-socket-handle) -> u64;
    /// `onmessage` attribute — setter.
    set-onmessage: func(self: web-socket-handle, value: u64);

    /// `binaryType` attribute — getter.
    get-binary-type: func(self: web-socket-handle) -> u64;
    /// `binaryType` attribute — setter.
    set-binary-type: func(self: web-socket-handle, value: u64);

    /// `send()` operation.
    send: func(self: web-socket-handle, data: string);
}

interface close-event {
    /// Opaque handle to a host-side `CloseEvent` instance.
    type close-event-handle = u64;

    /// `wasClean` attribute — getter.
    get-was-clean: func(self: close-event-handle) -> bool;

    /// `code` attribute — getter.
    get-code: func(self: close-event-handle) -> u16;

    /// `reason` attribute — getter.
    get-reason: func(self: close-event-handle) -> string;
}