import type { HttpClient } from '@livestore/utils/effect'; import { Effect, MsgPack, Schema, Scope, Socket, WebChannel } from '@livestore/utils/effect'; import * as WebmeshSchema from './mesh-schema.ts'; import type { MeshNode } from './node.ts'; declare const WSEdgeInit_base: Schema.TaggedStruct<"WSEdgeInit", { from: typeof Schema.String; }>; export declare class WSEdgeInit extends WSEdgeInit_base { } declare const WSEdgePayload_base: Schema.TaggedStruct<"WSEdgePayload", { from: typeof Schema.String; payload: typeof Schema.Any; }>; export declare class WSEdgePayload extends WSEdgePayload_base { } declare const WSEdgeMessage_base: Schema.Union<[typeof WSEdgeInit, typeof WSEdgePayload]>; export declare class WSEdgeMessage extends WSEdgeMessage_base { } export declare const MessageMsgPack: MsgPack.schema; export type SocketType = { _tag: 'leaf'; from: string; } | { _tag: 'relay'; }; export declare const connectViaWebSocket: ({ node, url, openTimeout, }: { node: MeshNode; url: string; openTimeout?: number; }) => Effect.Effect; export declare const makeWebSocketEdge: ({ socket, socketType, debug: debugInfo, }: { socket: Socket.Socket; socketType: SocketType; debug?: { id?: string | undefined; } | undefined; }) => Effect.Effect<{ webChannel: WebChannel.WebChannel; from: string; }, never, Scope.Scope | HttpClient.HttpClient>; export {}; //# sourceMappingURL=websocket-edge.d.ts.map